Changeset: db8bea739d7f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=db8bea739d7f
Added Files:
NT/makelibdef.py
sql/backends/monet5/bam/Tests/check_files.reqtests
sql/backends/monet5/bam/Tests/query1.1.reqtests
sql/backends/monet5/bam/Tests/query1.2.reqtests
sql/backends/monet5/bam/Tests/query1.3.reqtests
sql/backends/monet5/bam/Tests/query1.4.reqtests
sql/backends/monet5/bam/Tests/query1.5.reqtests
sql/backends/monet5/bam/Tests/query1.6.reqtests
sql/backends/monet5/bam/Tests/query2.1.reqtests
sql/backends/monet5/bam/Tests/query2.10.reqtests
sql/backends/monet5/bam/Tests/query2.11.reqtests
sql/backends/monet5/bam/Tests/query2.12.reqtests
sql/backends/monet5/bam/Tests/query2.2.reqtests
sql/backends/monet5/bam/Tests/query2.3.reqtests
sql/backends/monet5/bam/Tests/query2.4.reqtests
sql/backends/monet5/bam/Tests/query2.5.reqtests
sql/backends/monet5/bam/Tests/query2.6.reqtests
sql/backends/monet5/bam/Tests/query2.7.reqtests
sql/backends/monet5/bam/Tests/query2.8.reqtests
sql/backends/monet5/bam/Tests/query2.9.reqtests
sql/backends/monet5/bam/Tests/sam_export.reqtests
sql/test/BugTracker-2014/Tests/ifthenelse.Bug-3546.sql
sql/test/BugTracker-2014/Tests/ifthenelse.Bug-3546.stable.err
sql/test/BugTracker-2014/Tests/ifthenelse.Bug-3546.stable.out
Modified Files:
MonetDB.spec
NT/rules.msc
NT/wincompile.py
buildtools/autogen/autogen/am.py
buildtools/autogen/autogen/msc.py
clients/R/MonetDB.R/NEWS
clients/R/MonetDB.R/R/monetdb.R
clients/Tests/MAL-signatures_all.stable.out
clients/Tests/MAL-signatures_fits_geom.stable.out
clients/Tests/MAL-signatures_geom.stable.out
clients/Tests/MAL-signatures_none.stable.out
configure.ag
monetdb5/extras/rapi/Makefile.ag
monetdb5/extras/rapi/Tests/rapi08.malC
monetdb5/extras/rapi/rapi.c
monetdb5/mal/Makefile.ag
monetdb5/tools/Makefile.ag
sql/backends/monet5/rest/Makefile.ag
sql/backends/monet5/sql.c
sql/backends/monet5/sql.h
sql/backends/monet5/sql.mal
sql/backends/monet5/sql_gencode.c
sql/backends/monet5/sql_scenario.c
sql/backends/monet5/vaults/fits.c
sql/benchmarks/tpch/Tests/20-explain.stable.out
sql/benchmarks/tpch/Tests/20-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/20-plan.stable.out
sql/benchmarks/tpch/Tests/21-explain.stable.out.32bit
sql/include/sql_catalog.h
sql/server/rel_optimizer.c
sql/server/rel_select.c
sql/server/sql_parser.y
sql/storage/bat/bat_logger.c
sql/storage/bat/bat_storage.c
sql/storage/sql_catalog.c
sql/test/BugTracker-2014/Tests/All
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
sql/test/testdb-upgrade/Tests/upgrade.stable.out
Branch: default
Log Message:
Merge with Oct2014 branch.
diffs (truncated from 2744 to 300 lines):
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -18,31 +18,69 @@
%define release %{buildno}%{?dist}%{?oidsuf}
+# On RedHat Enterprise Linux and derivatives, if the Extra Packages
+# for Enterprise Linux (EPEL) repository is available, you can define
+# the _with_epel macro. When using mock to build the RPMs, this can
+# be done using the --with=epel option to mock.
+# If the EPEL repository is availabe, or if building for Fedora, all
+# optional sub packages can be built. We indicate that here by
+# setting the macro fedpkgs to 1. If the EPEL repository is not
+# available and we are not building for Fedora, we set fedpkgs to 0.
+%if %{?rhel:1}%{!?rhel:0}
+# RedHat Enterprise Linux (or CentOS or Scientific Linux)
+%if %{?_with_epel:1}%{!?_with_epel:0}
+# EPEL is enabled through the command line
+%define fedpkgs 1
+%else
+# EPEL is not enabled
+%define fedpkgs 0
+%endif
+%else
+# Not RHEL (so presumably Fedora)
+%define fedpkgs 1
+%endif
+
# On Fedora, the geos library is available, and so we can require it
# and build the geom modules. On RedHat Enterprise Linux and
# derivatives (CentOS, Scientific Linux), the geos library is not
# available. However, the geos library is available in the Extra
-# Packages for Enterprise Linux (EPEL). If the _with_epel macro is
-# set, we assume that EPEL is available, and so we enable building the
-# geom modules. The _with_epel macro can be set when using mock by
-# passing it the flag --with epel.
-%if %{?rhel:1}%{!?rhel:0}
-%if %{?_with_epel:1}%{!?_with_epel:0}
-# RedHat Enterprise Linux and derivatives with EPEL enabled
-%define with_geos 1
-%endif
-%else
-# Fedora
+# Packages for Enterprise Linux (EPEL). In other words, we can check
+# the fedpkgs macro (see above).
+%if %{fedpkgs}
%define with_geos 1
%endif
-%if %{?_with_samtools:1}%{!?_with_samtools:0}
+%if %{?rhel:0}%{!?rhel:1}
+# If the _without_samtools macro is set, the MonetDB-bam-MonetDB5 RPM
+# will be created. The macro can be set when using mock by passing it
+# the flag --without=samtools.
+# Note that the samtools-devel RPM is not available on RedHat
+# Enterprise Linux and derivatives, even with EPEL availabe.
+# (Actually, at the moment of writing, samtools-devel is available in
+# EPEL for RHEL 6, but not for RHEL 7. We don't make the distinction
+# here and just not build the MonetDB-bam-MonetDB5 RPM.)
+%if %{?_without_samtools:0}%{!?_without_samtools:1}
%define with_samtools 1
%endif
+%endif
-%if %{?_with_rintegration:1}%{!?_with_rintegration:0}
+%if %{fedpkgs}
+# If the _without_rintegration macro is not set, the MonetDB-R RPM
+# will be created. The macro can be set when using mock by passing it
+# the flag --without=rintegration.
+%if %{?_without_rintegration:0}%{!?_without_rintegration:1}
%define with_rintegration 1
%endif
+%endif
+
+%if %{fedpkgs}
+# If the _with_fits macro is set, the MonetDB-cfitsio RPM will be
+# created. The macro can be set when using mock by passing it the
+# flag --with=fits.
+%if %{?_with_fits:1}%{!?_with_fits:0}
+%define with_fits 1
+%endif
+%endif
Name: %{name}
Version: %{version}
@@ -57,13 +95,18 @@ Source: http://dev.monetdb.org/downloads
BuildRequires: bison
BuildRequires: bzip2-devel
-# BuildRequires: cfitsio-devel
+%if %{?with_fits:1}%{!?with_fits:0}
+BuildRequires: cfitsio-devel
+%endif
BuildRequires: flex
%if %{?with_geos:1}%{!?with_geos:0}
BuildRequires: geos-devel >= 3.0.0
%endif
BuildRequires: gsl-devel
+BuildRequires: libatomic_ops-devel
BuildRequires: libcurl-devel
+# BuildRequires: libmicrohttpd-devel
+# BuildRequires: libsphinxclient-devel
BuildRequires: libuuid-devel
BuildRequires: libxml2-devel
BuildRequires: openssl-devel
@@ -85,6 +128,7 @@ BuildRequires: rubygems
BuildRequires: rubygems-devel
%endif
BuildRequires: unixODBC-devel
+# BuildRequires: uriparser-devel
BuildRequires: zlib-devel
%if %{?with_samtools:1}%{!?with_samtools:0}
BuildRequires: samtools-devel
@@ -463,7 +507,7 @@ numerical analysis (gsl).
%{_libdir}/monetdb5/gsl.mal
%{_libdir}/monetdb5/lib_gsl.so
-%if %{?_with_samtools:1}%{!?_with_samtools:0}
+%if %{?with_samtools:1}%{!?with_samtools:0}
%package bam-MonetDB5
Summary: MonetDB5 SQL interface to the bam library
Group: Applications/Databases
@@ -486,11 +530,10 @@ version of Sequence Alignment/Map) data.
%{_libdir}/monetdb5/lib_bam.so
%endif
-%if %{?_with_rintegration:1}%{!?_with_rintegration:0}
+%if %{?with_rintegration:1}%{!?with_rintegration:0}
%package R
-Summary: MonetDB5 SQL interface to the bam library
+Summary: Integration of MonetDB and R, allowing use of R from within SQL
Group: Applications/Databases
-Requires: MonetDB5-server = %{version}-%{release}
Requires: MonetDB-SQL-server5 = %{version}-%{release}
%description R
@@ -508,12 +551,33 @@ install it.
%files R
%defattr(-,root,root)
-%{_includedir}/monetdb/rapi*.h
%{_libdir}/monetdb5/rapi.*
%{_libdir}/monetdb5/autoload/*_rapi.mal
%{_libdir}/monetdb5/lib_rapi.so
%endif
+%if %{?with_fits:1}%{!?with_fits:0}
+%package cfitsio
+Summary: MonetDB: Add on module that provides support for FITS files
+Group: Applications/Databases
+Requires: MonetDB-SQL-server5 = %{version}-%{release}
+
+%description cfitsio
+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 frontend.
+
+This package contains a module for accessing data in the FITS file
+format.
+
+%files cfitsio
+%defattr(-,root,root)
+%{_libdir}/monetdb5/fits.mal
+%{_libdir}/monetdb5/autoload/*_fits.mal
+%{_libdir}/monetdb5/lib_fits.so
+%endif
+
%package -n MonetDB5-server
Summary: MonetDB - Monet Database Management System
Group: Applications/Databases
@@ -559,34 +623,43 @@ fi
%{_libdir}/libmonetdb5.so.*
%dir %{_libdir}/monetdb5
%dir %{_libdir}/monetdb5/autoload
+%if %{?with_fits:1}%{!?with_fits:0}
+%exclude %{_libdir}/monetdb5/fits.mal
+%endif
%if %{?with_geos:1}%{!?with_geos:0}
%exclude %{_libdir}/monetdb5/geom.mal
%endif
%exclude %{_libdir}/monetdb5/gsl.mal
-%if %{?_with_rintegration:1}%{!?_with_rintegration:0}
+%if %{?with_rintegration:1}%{!?with_rintegration:0}
%exclude %{_libdir}/monetdb5/rapi.mal
%endif
# %exclude %{_libdir}/monetdb5/rdf.mal
%exclude %{_libdir}/monetdb5/sql.mal
%{_libdir}/monetdb5/*.mal
+%if %{?with_fits:1}%{!?with_fits:0}
+%exclude %{_libdir}/monetdb5/autoload/*_fits.mal
+%endif
%if %{?with_geos:1}%{!?with_geos:0}
%exclude %{_libdir}/monetdb5/autoload/*_geom.mal
%endif
%exclude %{_libdir}/monetdb5/autoload/*_gsl.mal
-%if %{?_with_rintegration:1}%{!?_with_rintegration:0}
+%if %{?with_rintegration:1}%{!?with_rintegration:0}
%exclude %{_libdir}/monetdb5/autoload/*_rapi.mal
%endif
# %exclude %{_libdir}/monetdb5/autoload/*_rdf.mal
%exclude %{_libdir}/monetdb5/autoload/*_sql.mal
%{_libdir}/monetdb5/autoload/*.mal
+%if %{?with_fits:1}%{!?with_fits:0}
+%exclude %{_libdir}/monetdb5/lib_fits.so
+%endif
%if %{?with_geos:1}%{!?with_geos:0}
%exclude %{_libdir}/monetdb5/lib_geom.so
%endif
%exclude %{_libdir}/monetdb5/lib_gsl.so
-%if %{?_with_rintegration:1}%{!?_with_rintegration:0}
+%if %{?with_rintegration:1}%{!?with_rintegration:0}
%exclude %{_libdir}/monetdb5/lib_rapi.so
%endif
-%if %{?_with_samtools:1}%{!?_with_samtools:0}
+%if %{?with_samtools:1}%{!?with_samtools:0}
%exclude %{_libdir}/monetdb5/bam.mal
%exclude %{_libdir}/monetdb5/autoload/*_bam.mal
%exclude %{_libdir}/monetdb5/lib_bam.so
@@ -684,7 +757,7 @@ systemd-tmpfiles --create %{_sysconfdir}
%exclude %{_libdir}/monetdb5/createdb/*_geom.sql
%endif
%exclude %{_libdir}/monetdb5/createdb/*_gsl.sql
-%if %{?_with_samtools:1}%{!?_with_samtools:0}
+%if %{?with_samtools:1}%{!?with_samtools:0}
%exclude %{_libdir}/monetdb5/createdb/*_bam.sql
%endif
# %exclude %{_libdir}/monetdb5/createdb/*_rdf.sql
@@ -814,13 +887,15 @@ developer, but if you do want to test, t
--enable-datacell=no \
--enable-debug=no \
--enable-developer=no \
- --enable-fits=no \
+ --enable-fits=%{?with_fits:yes}%{!?with_fits:no} \
--enable-gdk=yes \
--enable-geom=%{?with_geos:yes}%{!?with_geos:no} \
--enable-gsl=yes \
--enable-instrument=no \
--enable-jdbc=no \
+ --enable-jsonstore=no \
--enable-merocontrol=no \
+ --enable-microhttpd=no \
--enable-monetdb5=yes \
--enable-odbc=yes \
--enable-oid32=%{?oid32:yes}%{!?oid32:no} \
diff --git a/NT/makelibdef.py b/NT/makelibdef.py
new file mode 100644
--- /dev/null
+++ b/NT/makelibdef.py
@@ -0,0 +1,8 @@
+import fileinput, re
+p = re.compile('^\s*\d+\s+[0-9A-F]+\s+[0-9A-F]+\s+(\w+)')
+print 'LIBRARY R'
+print 'EXPORTS'
+for line in fileinput.input():
+ m = p.match(line);
+ if (m):
+ print m.group(1);
diff --git a/NT/rules.msc b/NT/rules.msc
--- a/NT/rules.msc
+++ b/NT/rules.msc
@@ -40,10 +40,12 @@ bits=32
!IF $(bits) == 32
!IFNDEF BITS32
BITS32=True
+BITSMCHN=X86
!ENDIF
!ELSEIF $(bits) == 64
!IFNDEF BITS64
BITS64=True
+BITSMCHN=X64
!ENDIF
!ENDIF
@@ -186,6 +188,26 @@ GEOS_INCS = -I$(LIBGEOS)\include
RUBY_DIR = lib\ruby\gems\1.9.1
!ENDIF
+!IFDEF HAVE_LIBR
+# This is the location of the R library
+libr_LIBDEP = R.lib
+!IFNDEF LIBR
+LIBR = c:\Program Files\R\R-3.1.0
+!ENDIF
+!IFDEF BITS32
+libr_DLL=$(LIBR)\bin\i386\R.dll
+!ELSE
+libr_DLL=$(LIBR)\bin\x64\R.dll
+!ENDIF
+libr_LIBS = $(libr_LIBDEP)
+libr_CFLAGS = -DHAVE_LIBR "-I$(LIBR)\include"
+
+# generate R.lib from R.dll, needed for linking
+R.lib: "$(libr_DLL)"
+ dumpbin /exports "$(libr_DLL)" | python "$(TOPDIR)\..\NT\makelibdef.py"
> R.def
+ lib /machine:$(BITSMCHN) /def:R.def /out:R.lib
+!ENDIF
+
# some programs we use, probably no need to edit
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list