Changeset: 48157ba5cd44 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/48157ba5cd44 Modified Files: common/stream/CMakeLists.txt common/stream/monetdb-stream.pc.in Branch: ascii-flag Log Message:
Merge with default branch. diffs (truncated from 2231 to 300 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -826,3 +826,4 @@ dcc8c702e685a4faf21ccf663028d1bc3d1165d1 d656785f49ee62c19705722aa6b7c171904c64d5 Dec2023_7 d656785f49ee62c19705722aa6b7c171904c64d5 Dec2023_SP2_release 9a694c41042503a22d6c92aeab5bc4ca1912b62e Dec2023_9 +9a694c41042503a22d6c92aeab5bc4ca1912b62e Dec2023_SP3_release diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,9 @@ # This file is updated with Maddlog * Wed May 8 2024 Sjoerd Mullender <sjo...@acm.org> +- The shared library (.dll aka .so files) now have the version number + as part of the name. This should allow the building of compatibility + versions that can be installed in parallel to the latest version. - Some of the Debian/Ubuntu packages have been renamed. The old monetdb5 names have been changed to plain monetdb, and libmonetdb5-server-* packages have been renamed monetdb-*. diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -176,7 +176,7 @@ more client packages. %files %license COPYING %defattr(-,root,root) -%{_libdir}/libbat.so.* +%{_libdir}/libbat*.so.* %package devel Summary: MonetDB development files @@ -202,7 +202,7 @@ functionality of MonetDB. %{_includedir}/monetdb/mstring.h %exclude %{_includedir}/monetdb/monetdbe.h %{_includedir}/monetdb/monet*.h -%{_libdir}/libbat.so +%{_libdir}/libbat*.so %{_libdir}/pkgconfig/monetdb-gdk.pc %package stream @@ -223,7 +223,7 @@ various other components. %files stream %license COPYING %defattr(-,root,root) -%{_libdir}/libstream.so.* +%{_libdir}/libstream*.so.* %package stream-devel Summary: MonetDB stream library @@ -245,7 +245,7 @@ library. %files stream-devel %defattr(-,root,root) %dir %{_includedir}/monetdb -%{_libdir}/libstream.so +%{_libdir}/libstream*.so %{_includedir}/monetdb/stream.h %{_includedir}/monetdb/stream_socket.h %{_libdir}/pkgconfig/monetdb-stream.pc @@ -273,7 +273,7 @@ you will very likely need this package. %files client-lib %license COPYING %defattr(-,root,root) -%{_libdir}/libmapi.so.* +%{_libdir}/libmapi*.so.* %package client Summary: MonetDB - Monet Database Management System Client Programs @@ -298,8 +298,8 @@ MonetDB, you will very likely need this %files client %license COPYING %defattr(-,root,root) -%{_bindir}/mclient -%{_bindir}/msqldump +%{_bindir}/mclient* +%{_bindir}/msqldump* %{_mandir}/man1/mclient.1* %{_mandir}/man1/msqldump.1* @@ -321,7 +321,7 @@ This package contains the files needed t %files client-devel %defattr(-,root,root) %dir %{_includedir}/monetdb -%{_libdir}/libmapi.so +%{_libdir}/libmapi*.so %{_includedir}/monetdb/mapi*.h %{_includedir}/monetdb/msettings.h %{_libdir}/pkgconfig/monetdb-mapi.pc @@ -433,7 +433,7 @@ extensions for %{name}-server. %files geom %defattr(-,root,root) -%{_libdir}/monetdb5/lib_geom.so +%{_libdir}/monetdb5*/lib_geom.so %endif %if %{with rintegration} @@ -457,8 +457,8 @@ install it. %files R %defattr(-,root,root) -%{_libdir}/monetdb5/rapi.R -%{_libdir}/monetdb5/lib_rapi.so +%{_libdir}/monetdb5*/rapi.R +%{_libdir}/monetdb5*/lib_rapi.so %endif %if %{with py3integration} @@ -483,7 +483,7 @@ install it. %files python3 %defattr(-,root,root) -%{_libdir}/monetdb5/lib_pyapi3.so +%{_libdir}/monetdb5*/lib_pyapi3.so %endif %if %{with fits} @@ -503,7 +503,7 @@ format. %files cfitsio %defattr(-,root,root) -%{_libdir}/monetdb5/lib_fits.so +%{_libdir}/monetdb5*/lib_fits.so %endif %package libs @@ -528,14 +528,14 @@ embedded library (%{name}-embedded). %files libs %defattr(-,root,root) -%{_libdir}/libmonetdb5.so.* -%{_libdir}/libmonetdbsql.so* -%dir %{_libdir}/monetdb5 +%{_libdir}/libmonetdb5*.so.* +%{_libdir}/libmonetdbsql*.so* +%dir %{_libdir}/monetdb5%{version} %if %{with cintegration} -%{_libdir}/monetdb5/lib_capi.so +%{_libdir}/monetdb5*/lib_capi.so %endif -%{_libdir}/monetdb5/lib_csv.so -%{_libdir}/monetdb5/lib_generator.so +%{_libdir}/monetdb5*/lib_csv.so +%{_libdir}/monetdb5*/lib_generator.so %package server Summary: MonetDB - Monet Database Management System @@ -590,7 +590,7 @@ exit 0 %attr(2750,monetdb,monetdb) %dir %{_localstatedir}/lib/monetdb %attr(2770,monetdb,monetdb) %dir %{_localstatedir}/monetdb5 %attr(2770,monetdb,monetdb) %dir %{_localstatedir}/monetdb5/dbfarm -%{_bindir}/mserver5 +%{_bindir}/mserver5* %{_mandir}/man1/mserver5.1* %dir %{_datadir}/doc/MonetDB %docdir %{_datadir}/doc/MonetDB @@ -618,7 +618,7 @@ used from the MAL level. %defattr(-,root,root) %{_includedir}/monetdb/mal*.h %{_includedir}/monetdb/mel.h -%{_libdir}/libmonetdb5.so +%{_libdir}/libmonetdb5*.so %{_libdir}/pkgconfig/monetdb5.pc %package SQL @@ -653,8 +653,7 @@ configuration. %files SQL %defattr(-,root,root) -%{_bindir}/monetdb -%{_bindir}/monetdbd +%{_bindir}/monetdb* %dir %attr(775,monetdb,monetdb) %{_localstatedir}/log/monetdb %dir %attr(775,monetdb,monetdb) %{_rundir}/monetdb # RHEL >= 7, and all current Fedora @@ -813,7 +812,7 @@ 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 @@ -826,7 +825,7 @@ if [ $1 -eq 0 ] ; then 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 || : + /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 @@ -900,12 +899,17 @@ install -d -m 0775 %{buildroot}%{_locals install -d -m 0775 %{buildroot}%{_rundir}/monetdb # remove unwanted stuff -rm -f %{buildroot}%{_libdir}/monetdb5/lib_opt_sql_append.so -rm -f %{buildroot}%{_libdir}/monetdb5/lib_microbenchmark*.so -rm -f %{buildroot}%{_libdir}/monetdb5/lib_udf*.so +rm -f %{buildroot}%{_libdir}/monetdb5*/lib_opt_sql_append.so +rm -f %{buildroot}%{_libdir}/monetdb5*/lib_microbenchmark*.so +rm -f %{buildroot}%{_libdir}/monetdb5*/lib_udf*.so rm -f %{buildroot}%{_bindir}/monetdb_mtest.sh rm -rf %{buildroot}%{_datadir}/monetdb # /cmake +for f in monetdbd monetdb mserver5 mclient msqldump; do + mv %{buildroot}%{_bindir}/${f} %{buildroot}%{_bindir}/${f}%{version} + ln -s ${f}%{version} %{buildroot}%{_bindir}/${f} +done + if [ -x /usr/sbin/hardlink ]; then /usr/sbin/hardlink -cv %{buildroot}%{_datadir}/selinux else diff --git a/NT/mkodbcwxs.py b/NT/mkodbcwxs.py --- a/NT/mkodbcwxs.py +++ b/NT/mkodbcwxs.py @@ -35,6 +35,7 @@ def main(): if len(sys.argv) != 4: print(r'Usage: mkodbcwxs.py version bits installdir') return 1 + version = sys.argv[1] if sys.argv[2] == '64': folder = r'ProgramFiles64Folder' arch = 'x64' @@ -64,7 +65,7 @@ def main(): features = [] print(r'<?xml version="1.0"?>') print(r'<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">') - print(r' <Product Id="*" Language="1033" Manufacturer="MonetDB" Name="MonetDB ODBC Driver" UpgradeCode="{}" Version="{}">'.format(upgradecode[arch], sys.argv[1])) + print(r' <Product Id="*" Language="1033" Manufacturer="MonetDB" Name="MonetDB ODBC Driver" UpgradeCode="{}" Version="{}">'.format(upgradecode[arch], version)) print(r' <Package Id="*" Comments="MonetDB ODBC Driver" Compressed="yes" InstallerVersion="301" Keywords="MonetDB SQL ODBC" Languages="1033" Manufacturer="MonetDB Foundation" Platform="{}"/>'.format(arch)) print(r' <MajorUpgrade AllowDowngrades="no" DowngradeErrorMessage="A later version of [ProductName] is already installed." AllowSameVersionUpgrades="no"/>') print(r' <WixVariable Id="WixUILicenseRtf" Value="share\license.rtf"/>') @@ -88,10 +89,10 @@ def main(): id = 1 print(r' <Directory Id="lib" Name="lib">') id = comp(features, id, 14, - [r'bin\mapi.dll', r'lib\mapi.pdb', + [rf'bin\mapi{version}.dll', rf'lib\mapi{version}.pdb', r'lib\MonetODBC.dll', r'lib\MonetODBC.pdb', r'lib\MonetODBCs.dll', r'lib\MonetODBCs.pdb', - r'bin\stream.dll', r'lib\stream.pdb', + rf'bin\stream{version}.dll', rf'lib\stream{version}.pdb', vcpkg.format(r'bin\iconv-2.dll'), vcpkg.format(r'bin\bz2.dll'), vcpkg.format(r'bin\charset-1.dll'), # for iconv-2.dll diff --git a/NT/mksqlwxs.py b/NT/mksqlwxs.py --- a/NT/mksqlwxs.py +++ b/NT/mksqlwxs.py @@ -42,6 +42,7 @@ def main(): if len(sys.argv) != 4: print(r'Usage: mksqlwxs.py version bits installdir') return 1 + version = sys.argv[1] if sys.argv[2] == '64': folder = r'ProgramFiles64Folder' arch = 'x64' @@ -75,13 +76,13 @@ def main(): pyapi3 = [] print(r'<?xml version="1.0"?>') print(r'<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">') - print(r' <Product Id="*" Language="1033" Manufacturer="MonetDB" Name="MonetDB5" UpgradeCode="{}" Version="{}">'.format(upgradecode[arch], sys.argv[1])) + print(r' <Product Id="*" Language="1033" Manufacturer="MonetDB" Name="MonetDB5" UpgradeCode="{}" Version="{}">'.format(upgradecode[arch], version)) print(r' <Package Id="*" Comments="MonetDB5/SQL Server and Client" Compressed="yes" InstallerVersion="301" Keywords="MonetDB5 MonetDB SQL Database" Languages="1033" Manufacturer="MonetDB Foundation" Platform="{}"/>'.format(arch)) print(r' <Upgrade Id="{}">'.format(geomupgradecode[arch])) # up to and including 11.29.3, the geom module can not be # uninstalled if MonetDB/SQL is not installed; this somehow also # precludes the upgrade to this version - print(r' <UpgradeVersion OnlyDetect="no" Minimum="11.29.3" IncludeMinimum="no" Maximum="{}" Property="GEOMINSTALLED"/>'.format(sys.argv[1])) + print(r' <UpgradeVersion OnlyDetect="no" Minimum="11.29.3" IncludeMinimum="no" Maximum="{}" Property="GEOMINSTALLED"/>'.format(version)) print(r' </Upgrade>') print(r' <MajorUpgrade AllowDowngrades="no" DowngradeErrorMessage="A later version of [ProductName] is already installed." AllowSameVersionUpgrades="no"/>') print(r' <WixVariable Id="WixUILicenseRtf" Value="share\license.rtf"/>') @@ -101,12 +102,12 @@ def main(): print(r' </DirectorySearch>') print(r' </Property>') print(r' <Property Id="GEOMMALEXISTS">') - print(r' <DirectorySearch Id="CheckFileDir3" Path="[INSTALLDIR]\lib\monetdb5" Depth="0">') + print(rf' <DirectorySearch Id="CheckFileDir3" Path="[INSTALLDIR]\lib\monetdb5{version}" Depth="0">') print(r' <FileSearch Id="CheckFile3" Name="geom.mal"/>') print(r' </DirectorySearch>') print(r' </Property>') print(r' <Property Id="GEOMLIBEXISTS">') - print(r' <DirectorySearch Id="CheckFileDir4" Path="[INSTALLDIR]\lib\monetdb5" Depth="0">') + print(rf' <DirectorySearch Id="CheckFileDir4" Path="[INSTALLDIR]\lib\monetdb5{version}" Depth="0">') print(r' <FileSearch Id="CheckFile4" Name="_geom.dll"/>') print(r' </DirectorySearch>') print(r' </Property>') @@ -152,12 +153,12 @@ def main(): [r'bin\mclient.exe', r'bin\mserver5.exe', r'bin\msqldump.exe', - r'bin\bat.dll', - r'bin\mapi.dll', - r'bin\monetdb5.dll', + rf'bin\bat{version}.dll', + rf'bin\mapi{version}.dll', + rf'bin\monetdb5{version}.dll', _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org