Changeset: 6414b75bf78b for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6414b75bf78b
Modified Files:
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures.stable.out.int128
clients/Tests/exports.stable.out
gdk/CMakeLists.txt
gdk/gdk_aggr.c
gdk/gdk_bat.c
gdk/gdk_firstn.c
gdk/gdk_group.c
gdk/gdk_hash.c
gdk/gdk_imprints.c
gdk/gdk_join.c
gdk/gdk_orderidx.c
gdk/gdk_project.c
gdk/gdk_select.c
gdk/gdk_unique.c
monetdb5/mal/mal_interpreter.c
monetdb5/modules/kernel/batmmath.c
monetdb5/modules/mal/CMakeLists.txt
monetdb5/optimizer/CMakeLists.txt
sql/backends/monet5/rel_bin.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql_statement.c
sql/common/sql_types.c
sql/server/rel_optimizer.c
sql/server/rel_updates.c
sql/test/BugTracker-2019/Tests/duplicates-not-eliminated-long-CASE-stmt.Bug-6697.stable.out
sql/test/emptydb/Tests/check.stable.out
sql/test/emptydb/Tests/check.stable.out.32bit
sql/test/emptydb/Tests/check.stable.out.int128
sql/test/remote/Tests/partition_elim.stable.out
sql/test/sys-schema/Tests/systemfunctions.stable.out
sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
Branch: unlock
Log Message:
merged
diffs (truncated from 192223 to 300 lines):
diff --git a/.hgignore b/.hgignore
--- a/.hgignore
+++ b/.hgignore
@@ -15,32 +15,7 @@ syntax: glob
# recommended build process plus a few patterns of files that we never
# want in the repository (object files and such).
-# files generated by bootstrap
-Makefile.am
-Makefile.in
-Makefile.msc
-aclocal.m4
-acout.in
-autom4te.cache
-buildtools/conf/compile
-buildtools/conf/config.guess
-buildtools/conf/config.sub
-buildtools/conf/install-sh
-buildtools/conf/libtool.m4
-buildtools/conf/ltmain.sh
-buildtools/conf/ltoptions.m4
-buildtools/conf/ltsugar.m4
-buildtools/conf/ltversion.m4
-buildtools/conf/lt~obsolete.m4
-buildtools/conf/missing
-buildtools/conf/ylwrap
-configure
-configure.ac
-doc.lst
-install.lst
-monetdb_config.h.in
*.pyc
-sql/backends/monet5/UDF/capi/cheader.text.h
# files generated by various editors
*.swp
@@ -73,21 +48,6 @@ tags
*.rej
*.orig
-# build results on Windows
-NT/.monetdb
-NT/buildtools
-NT/clients
-NT/common
-NT/gdk
-NT/geom
-NT/java
-NT/monetdb5
-NT/monetdb_config.h
-NT/sql
-NT/testing
-NT/tools
-NT/unistd.h
-
# package building on Mac OS X
MacOSX/build
MacOSX/usr
diff --git a/misc/packages/rpm/COPYING b/COPYING
rename from misc/packages/rpm/COPYING
rename to COPYING
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -65,6 +65,9 @@
# operators. Otherwise the POSIX regex functions are used.
%bcond_without pcre
+# By default, include C integration
+%bcond_without cintegration
+
%if %{fedpkgs}
# By default, create the MonetDB-R package.
%bcond_without rintegration
@@ -108,6 +111,7 @@ BuildRequires: checkpolicy
BuildRequires: selinux-policy-devel
BuildRequires: hardlink
%endif
+BuildRequires: cmake >= 3.12
BuildRequires: gcc
BuildRequires: bison
BuildRequires: /usr/bin/python3
@@ -187,6 +191,7 @@ functionality of MonetDB.
%{_includedir}/monetdb/gdk*.h
%{_includedir}/monetdb/matomic.h
%{_includedir}/monetdb/mstring.h
+%exclude %{_includedir}/monetdb/monetdbe.h
%{_includedir}/monetdb/monet*.h
%{_libdir}/libbat.so
%{_libdir}/pkgconfig/monetdb-gdk.pc
@@ -462,7 +467,6 @@ Provides: MonetDB5-server-hugeint%{?_isa
%endif
%if (0%{?fedora} >= 22)
Recommends: %{name}-SQL-server5%{?_isa} = %{version}-%{release}
-%endif
Suggests: %{name}-client%{?_isa} = %{version}-%{release}
%endif
# versions up to 1.0.5 don't accept the queryid field in the result set
@@ -515,7 +519,10 @@ exit 0
%{_libdir}/libmonetdb5.so.*
%dir %{_libdir}/monetdb5
%{_libdir}/monetdb5/microbenchmark.mal
+%{_libdir}/monetdb5/run_*.mal
+%if %{with cintegration}
%{_libdir}/monetdb5/lib_capi.so
+%endif
%{_libdir}/monetdb5/lib_generator.so
%{_libdir}/monetdb5/lib_udf.so
%doc %{_mandir}/man1/mserver5.1.gz
@@ -540,7 +547,6 @@ used from the MAL level.
%files -n MonetDB5-server-devel
%defattr(-,root,root)
-%dir %{_includedir}/monetdb
%{_includedir}/monetdb/mal*.h
%{_libdir}/libmonetdb5.so
%{_libdir}/pkgconfig/monetdb5.pc
@@ -599,13 +605,50 @@ use SQL with MonetDB, you will need to i
%config(noreplace) %attr(664,monetdb,monetdb)
%{_localstatedir}/monetdb5/dbfarm/.merovingian_properties
%verify(not mtime) %attr(664,monetdb,monetdb)
%{_localstatedir}/monetdb5/dbfarm/.merovingian_lock
%config(noreplace) %attr(644,root,root) %{_sysconfdir}/logrotate.d/monetdbd
-%{_libdir}/monetdb5/lib_sql.so
+%{_libdir}/monetdb5/lib_sql.so*
%doc %{_mandir}/man1/monetdb.1.gz
%doc %{_mandir}/man1/monetdbd.1.gz
%dir %{_datadir}/doc/MonetDB-SQL
%docdir %{_datadir}/doc/MonetDB-SQL
%{_datadir}/doc/MonetDB-SQL/*
+%package embedded
+Summary: MonetDB as an embedded library
+Group: Applications/Databases
+
+%description embedded
+MonetDB is a database management system that is developed from a
+main-memory perspective with use of a fully decomposed storage model,
+automatic index management, extensibility of data types and search
+accelerators. It also has an SQL front end.
+
+This package contains the library to turn MonetDB into an embeddable
+library. Also see %{name}-embedded-devel to use this in a program.
+
+%files embedded
+%{_libdir}/libmonetdbe.so.*
+
+%package embedded-devel
+Summary: MonetDB as an embedded library development files
+Group: Applications/Databases
+Requires: %{name}-embedded%{?_isa} = %{version}-%{release}
+Requires: %{name}-devel%{?_isa} = %{version}-%{release}
+
+%description embedded-devel
+MonetDB is a database management system that is developed from a
+main-memory perspective with use of a fully decomposed storage model,
+automatic index management, extensibility of data types and search
+accelerators. It also has an SQL front end.
+
+This package contains the library and include files to create a
+program that uses MonetDB as an embeddable library.
+
+%files embedded-devel
+%defattr(-,root,root)
+%{_libdir}/libmonetdbe.so
+%{_includedir}/monetdb/monetdbe.h
+%{_libdir}/pkgconfig/monetdbe.pc
+
%package testing
Summary: MonetDB - Monet Database Management System
Group: Applications/Databases
@@ -719,66 +762,36 @@ fi
%setup -q
%build
-
-# There is a bug in GCC version 4.8 on AArch64 architectures
-# that causes it to report an internal error when compiling
-# testing/difflib.c. The work around is to not use -fstack-protector-strong.
-# The bug exhibits itself on CentOS 7 on AArch64.
-# Everywhere else, add -Wno-format-truncation to the compiler options
-# to reduce the number of warnings during compilation.
-%ifarch aarch64
- if gcc -v 2>&1 | grep -q 'gcc version 4\.'; then
- CFLAGS="${CFLAGS:-$(echo %optflags | sed
's/-fstack-protector-strong//')}"
- else
- CFLAGS="${CFLAGS:-%optflags -Wno-format-truncation}"
- fi
-%else
- CFLAGS="${CFLAGS:-%optflags -Wno-format-truncation}"
-%endif
-export CFLAGS
-# do not use --enable-optimize or --disable-optimize: we don't want
-# any changes to optimization flags
-%{configure} \
- --with-rundir=%{_rundir}/monetdb \
- --enable-assert=no \
- --enable-debug=yes \
- --enable-developer=no \
- --enable-embedded=no \
- --enable-embedded-r=no \
- --enable-fits=%{?with_fits:yes}%{!?with_fits:no} \
- --enable-geom=%{?with_geos:yes}%{!?with_geos:no} \
- --enable-int128=%{?with_hugeint:yes}%{!?with_hugeint:no} \
- --enable-mapi=yes \
- --enable-netcdf=no \
- --enable-odbc=yes \
- --enable-profiler=no \
-
--enable-py3integration=%{?with_py3integration:yes}%{!?with_py3integration:no} \
-
--enable-rintegration=%{?with_rintegration:yes}%{!?with_rintegration:no} \
- --enable-sanitizer=no \
- --enable-shp=no \
- --enable-static-analysis=no \
- --enable-strict=no \
- --enable-testing=yes \
- --with-bz2=yes \
- --with-curl=yes \
- --with-gdal=no \
- --with-geos=%{?with_geos:yes}%{!?with_geos:no} \
- --with-libxml2=yes \
- --with-lz4=no \
- --with-lzma=yes \
- --with-openssl=yes \
- --with-proj=no \
- --with-pthread=yes \
- --with-python3=yes \
- --with-readline=yes \
- --with-regex=%{?with_pcre:PCRE}%{!?with_pcre:POSIX} \
- --with-snappy=no \
- --with-unixodbc=yes \
- --with-uuid=yes \
- --with-valgrind=no \
- %{?comp_cc:CC="%{comp_cc}"}
-
-%make_build
+%{cmake} \
+ -DASSERT=OFF \
+ -DCINTEGRATION=%{?with_cintegration:ON}%{!?with_cintegration:OFF} \
+ -DFITS=%{?with_fits:ON}%{!?with_fits:OFF} \
+ -DGEOM=%{?with_geos:ON}%{!?with_geos:OFF} \
+ -DINT128=%{?with_hugeint:ON}%{!?with_hugeint:OFF} \
+ -DNETCDF=OFF \
+ -DODBC=ON \
+ -DPY3INTEGRATION=%{?with_py3integration:ON}%{!?with_py3integration:OFF}
\
+ -DRINTEGRATION=%{?with_rintegration:ON}%{!?with_rintegration:OFF} \
+ -DSANITIZER=OFF \
+ -DSHP=OFF \
+ -DSTRICT=OFF \
+ -DTESTING=ON \
+ -DWITH_BZ2=ON \
+ -DWITH_CMOCKA=OFF \
+ -DWITH_CRYPTO=ON \
+ -DWITH_CURL=ON \
+ -DWITH_LZ4=OFF \
+ -DWITH_LZMA=ON \
+ -DWITH_PCRE=ON \
+ -DWITH_PROJ=OFF \
+ -DWITH_READLINE=ON \
+ -DWITH_SNAPPY=OFF \
+ -DWITH_UUID=ON \
+ -DWITH_VALGRIND=OFF \
+ -DWITH_XML2=ON \
+ -DWITH_ZLIB=ON
+
+%cmake_build
%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
cd buildtools/selinux
@@ -797,7 +810,7 @@ cd -
%endif
%install
-%make_install
+%cmake_install
# move file to correct location
%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
@@ -819,6 +832,8 @@ install -d -m 0775 %{buildroot}%{_rundir
rm -f %{buildroot}%{_libdir}/*.la
rm -f %{buildroot}%{_libdir}/monetdb5/*.la
rm -f %{buildroot}%{_libdir}/monetdb5/lib_opt_sql_append.so
+rm -f %{buildroot}%{_bindir}/monetdb_mtest.sh
+rm -rf %{buildroot}%{_datadir}/monetdb # /cmake
%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
for selinuxvariant in %{selinux_variants}
diff --git a/clients/Tests/MAL-signatures.stable.out
b/clients/Tests/MAL-signatures.stable.out
--- a/clients/Tests/MAL-signatures.stable.out
+++ b/clients/Tests/MAL-signatures.stable.out
@@ -5330,8 +5330,12 @@ stdout of test 'MAL-signatures` in direc
[ "batmmath", "atan", "pattern batmmath.atan(X_1:bat[:dbl],
X_2:bat[:oid]):bat[:dbl] ", "CMDscience_bat_atan;", "" ]
[ "batmmath", "atan", "pattern batmmath.atan(X_1:bat[:flt]):bat[:flt] ",
"CMDscience_bat_atan;", "" ]
[ "batmmath", "atan", "pattern batmmath.atan(X_1:bat[:flt],
X_2:bat[:oid]):bat[:flt] ", "CMDscience_bat_atan;", "" ]
+[ "batmmath", "atan2", "pattern batmmath.atan2(X_1:bat[:dbl],
X_2:bat[:dbl]):bat[:dbl] ", "CMDscience_bat_atan2;", "" ]
+[ "batmmath", "atan2", "pattern batmmath.atan2(X_1:bat[:dbl],
X_2:bat[:dbl], X_3:bat[:oid], X_4:bat[:oid]):bat[:dbl] ",
"CMDscience_bat_atan2;", "" ]
[ "batmmath", "atan2", "pattern batmmath.atan2(X_1:bat[:dbl],
X_2:dbl):bat[:dbl] ", "CMDscience_bat_atan2;", "" ]
[ "batmmath", "atan2", "pattern batmmath.atan2(X_1:bat[:dbl], X_2:dbl,
X_3:bat[:oid]):bat[:dbl] ", "CMDscience_bat_atan2;", "" ]
+[ "batmmath", "atan2", "pattern batmmath.atan2(X_1:bat[:flt],
X_2:bat[:flt]):bat[:flt] ", "CMDscience_bat_atan2;", "" ]
+[ "batmmath", "atan2", "pattern batmmath.atan2(X_1:bat[:flt],
X_2:bat[:flt], X_3:bat[:oid], X_4:bat[:oid]):bat[:flt] ",
"CMDscience_bat_atan2;", "" ]
[ "batmmath", "atan2", "pattern batmmath.atan2(X_1:bat[:flt],
X_2:flt):bat[:flt] ", "CMDscience_bat_atan2;", "" ]
[ "batmmath", "atan2", "pattern batmmath.atan2(X_1:bat[:flt], X_2:flt,
X_3:bat[:oid]):bat[:flt] ", "CMDscience_bat_atan2;", "" ]
[ "batmmath", "atan2", "pattern batmmath.atan2(X_1:dbl,
X_2:bat[:dbl]):bat[:dbl] ", "CMDscience_bat_atan2;", "" ]
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list