Changeset: c607c389bd95 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c607c389bd95
Removed Files:
buildtools/selinux/ChangeLog-Archive
buildtools/selinux/ChangeLog.Jun2020
misc/packages/rpm/COPYING
rpm.mk.in
sql/test/Tests/sysqueue.sql
sql/test/Tests/sysqueue.stable.err
sql/test/Tests/sysqueue.stable.out
Modified Files:
monetdb5/mal/mal_runtime.c
monetdb5/modules/mal/sysmon.c
sql/backends/monet5/sql_upgrades.c
Branch: userstats
Log Message:
Merged with default
diffs (truncated from 245097 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/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -55,7 +55,6 @@ include(monetdb-toolchain)
monetdb_default_toolchain()
#monetdb_default_compiler_options()
-
include(monetdb-defines)
monetdb_hg_revision()
@@ -155,6 +154,7 @@ add_subdirectory(tools)
if(TESTING)
add_subdirectory(testing)
endif()
+add_subdirectory(buildtools)
include(CMakePackageConfigHelpers)
configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/Config.cmake.in
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: cmake3 >= 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}/libmonetdbsql.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
+%cmake3 \
+ -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
+
+%cmake3_build
%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
cd buildtools/selinux
@@ -797,7 +810,7 @@ cd -
%endif
%install
-%make_install
+%cmake3_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
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list