Changeset: 62f8b38c7a4c for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=62f8b38c7a4c Modified Files: buildtools/doc/windowsbuild.rst clients/R/MonetDB.R/R/dbi.R clients/R/Tests/survey.R clients/R/Tests/survey.stable.err clients/mapilib/mapi.rc clients/odbc/driver/driver.rc clients/odbc/winsetup/setup.rc gdk/gdk_bat.c gdk/libbat.rc geom/monetdb5/geom.c geom/monetdb5/geom.mal geom/sql/40_geom.sql monetdb5/tools/libmonetdb5.rc sql/backends/monet5/sql.c sql/backends/monet5/sql.h sql/backends/monet5/sql.mal sql/backends/monet5/sql_scenario.c sql/backends/monet5/sql_upgrades.c sql/server/rel_optimizer.c sql/storage/bat/bat_logger.c sql/storage/bat/bat_storage.c sql/storage/bat/bat_storage.h sql/storage/bat/bat_table.c Branch: default Log Message:
merged with Oct2014 diffs (truncated from 673 to 300 lines): diff --git a/buildtools/doc/windowsbuild.rst b/buildtools/doc/windowsbuild.rst --- a/buildtools/doc/windowsbuild.rst +++ b/buildtools/doc/windowsbuild.rst @@ -23,12 +23,11 @@ Building MonetDB On Windows +++++++++++++++++++++++++++ In this document we describe how to build the MonetDB suite of -programs on Windows using the sources from our source repository at -`our server`__. This document is mainly targeted at building on -Windows on a 32-bit architecture, but there are notes throughout about -building on Windows on a 64-bit architecture which is indicated with -Windows64. We have successfully built on Windows XP, Windows Server, -and Windows 7. +programs on Windows using the sources from `our source repository`__. +This document is mainly targeted at building on Windows on a 32-bit +architecture, but there are notes throughout about building on Windows +on a 64-bit architecture which is indicated with Windows64. We have +successfully built on Windows XP, Windows Server, and Windows 7. __ http://dev.monetdb.org/hg/MonetDB/ @@ -172,7 +171,8 @@ the build process would be much more lik here). We currently use Microsoft Visual Studio 2010 and Intel(R) C++ -Compiler XE 13.1.2.190, the latter using Microsoft Visual Studio 10.0. +Compiler XE 13.1.2.190, the latter using Microsoft Visual Studio +10.0. Older versions haven't been tried in a long time. __ http://www.cygwin.com/ __ http://www.mingw.org/ @@ -262,7 +262,27 @@ Files\PCRE``. For Windows64, select the correct compiler (``Visual Studio 10 2010 Win64``) and proceed normally. When building the 32 bit version on Windows64, choose ``C:/Program Files (x86)/PCRE`` for the -``CMAKE_INSTALL_PREFIX`` value, otherwise choose ``C:/Program Files/PCRE``. +``CMAKE_INSTALL_PREFIX`` value, otherwise choose ``C:/Program +Files/PCRE``. + +In order to get a version number in the DLL that is produced, we added +a file ``version.rc`` to the sources for the ``pcre`` subproject. The +contents of the file are:: + + #include <Windows.h> + VS_VERSION_INFO VERSIONINFO + FILEVERSION 8,36,0,0 // change as appropriate + PRODUCTVERSION 8,36,0,0 // change as appropriate + FILEFLAGSMASK 0x3fL + FILEFLAGS 0 + FILEOS VOS_NT_WINDOWS32 + FILETYPE VFT_DLL + FILESUBTYPE VFT2_UNKNOWN + BEGIN + BLOCK "StringFileInfo" + BEGIN + END + END __ http://www.pcre.org/ @@ -338,6 +358,29 @@ Studio 2008 a warning. ``d`` to the definitions of ``XML_SO``, ``XML_IMP``, ``XML_A``, and ``XML_A_DLL``. Also add ``d`` to the ``zlib.lib`` and ``iconv.lib``. +In order to get a version number in the DLL that is produced, we added +a file ``version.rc`` in the ``win32`` folder. The contents of the +file are:: + + #include <Windows.h> + VS_VERSION_INFO VERSIONINFO + FILEVERSION 2,9,2,0 // change as appropriate + PRODUCTVERSION 2,9,2,0 // change as appropriate + FILEFLAGSMASK 0x3fL + FILEFLAGS 0 + FILEOS VOS_NT_WINDOWS32 + FILETYPE VFT_DLL + FILESUBTYPE VFT2_UNKNOWN + BEGIN + BLOCK "StringFileInfo" + BEGIN + END + END + +To use it, we also added ``version.res`` after ``$(XML_OBJS)`` in +``win32\Makefile.msvc`` both in the list of dependencies of +``$(BINDIR)\$(XML_SO)`` and in the command to produce said file. + After this, you may want to move the file ``libxml2.dll`` from the ``lib`` folder to the ``bin`` folder. @@ -366,6 +409,32 @@ in the instructions. .. On Windows64, add WIN64=YES to the nmake command line. +.. For a debug build, add ``BUILD_DEBUG=YES`` to the ``nmake`` command + line. + +In order to get a version number in the DLL that is produced, we added +a file ``version.rc`` in the ``src`` folder. The contents of the +file are:: + + #include <Windows.h> + VS_VERSION_INFO VERSIONINFO + FILEVERSION 3,4,2,0 // change as appropriate + PRODUCTVERSION 3,4,2,0 // change as appropriate + FILEFLAGSMASK 0x3fL + FILEFLAGS 0 + FILEOS VOS_NT_WINDOWS32 + FILETYPE VFT_DLL + FILESUBTYPE VFT2_UNKNOWN + BEGIN + BLOCK "StringFileInfo" + BEGIN + END + END + +To use it, we also added ``version.res`` at the end of the definition +of the ``OBJ`` macro and to the list of dependencies of and the +command for ``$(CDLLNAME)`` in ``src\Makefile.vc``. + After this, install the library somewhere, e.g. in ``C:\geos-3.4.2.win32``:: @@ -524,6 +593,28 @@ the following patches to the files ``mak #else # define BZ_API(func) func +In order to get a version number in the DLL that is produced, we added +a file ``version.rc`` in the top-level folder. The contents of the +file are:: + + #include <Windows.h> + VS_VERSION_INFO VERSIONINFO + FILEVERSION 1,0,6,0 // change as appropriate + PRODUCTVERSION 1,0,6,0 // change as appropriate + FILEFLAGSMASK 0x3fL + FILEFLAGS 0 + FILEOS VOS_NT_WINDOWS32 + FILETYPE VFT_DLL + FILESUBTYPE VFT2_UNKNOWN + BEGIN + BLOCK "StringFileInfo" + BEGIN + END + END + +To use it, we also added ``version.res`` to the list of dependencies of and the +command for ``lib`` in ``makefile.msc``. + After this, compile using ``nmake /f makefile.msc`` and copy the files ``bzlib.h``, ``libbz2.dll``, and ``libbz2.lib`` to a location where the MonetDB build process can find them, @@ -533,9 +624,9 @@ e.g. ``C:\bzip2-1.0.5.win32``. mt /nologo /manifest libbz2.dll.manifest /Outputresource:libbz2.dll;2 .. For a debug build, change the definition of CFLAGS to contain -.. ``-MDd -D_DEBUG -Od`` instead of ``-MD -Ox``, and change all -.. occurences of ``libbz2.dll`` and ``libbz2.lib`` to ``libbz2d.dll`` -.. and ``libbz2d.lib``. + ``-MDd -D_DEBUG -Od`` instead of ``-MD -Ox``, and change all + occurences of ``libbz2.dll`` and ``libbz2.lib`` to ``libbz2d.dll`` + and ``libbz2d.lib``. Fix the ``LIBBZ2`` definitions in ``buildtools\conf\winrules.msc`` so that they refer to the location where you installed the library and diff --git a/clients/R/MonetDB.R/R/dbi.R b/clients/R/MonetDB.R/R/dbi.R --- a/clients/R/MonetDB.R/R/dbi.R +++ b/clients/R/MonetDB.R/R/dbi.R @@ -46,8 +46,8 @@ setMethod("dbConnect", "MonetDBDriver", password="monetdb", host="localhost", port=50000L, timeout=86400L, wait=FALSE, language="sql", ..., url="") { - if (substring(url, 1, 10) == "monetdb://") { - dbname <- url + if (substring(dbname, 1, 10) == "monetdb://") { + url <- dbname } timeout <- as.integer(timeout) diff --git a/clients/R/Tests/survey.R b/clients/R/Tests/survey.R --- a/clients/R/Tests/survey.R +++ b/clients/R/Tests/survey.R @@ -2,8 +2,10 @@ ll <- NULL if (Sys.getenv("TSTTRGDIR") != "") { ll <- paste0(Sys.getenv("TSTTRGDIR"),"/rlibdir") } -library(MonetDB.R,quietly=T,lib.loc=ll) -library(sqlsurvey,quietly=T) +suppressMessages({ + library(MonetDB.R,quietly=T,lib.loc=ll) + library(sqlsurvey,quietly=T) +}) args <- commandArgs(trailingOnly = TRUE) dbport <- 50000 diff --git a/clients/R/Tests/survey.stable.err b/clients/R/Tests/survey.stable.err --- a/clients/R/Tests/survey.stable.err +++ b/clients/R/Tests/survey.stable.err @@ -30,18 +30,8 @@ stderr of test 'survey` in directory 'cl # 14:26:23 > "R" "--vanilla" "--slave" "--args" "38676" # 14:26:23 > -KernSmooth 2.23 loaded -Copyright M. P. Wand 1997-2009 -Loading required package: grid -Attaching package: 'survey' +# 13:05:49 > +# 13:05:49 > "Done." +# 13:05:49 > -The following object is masked from 'package:graphics': - - dotchart - - -# 14:26:26 > -# 14:26:26 > "Done." -# 14:26:26 > - diff --git a/clients/mapilib/mapi.rc b/clients/mapilib/mapi.rc --- a/clients/mapilib/mapi.rc +++ b/clients/mapilib/mapi.rc @@ -16,7 +16,7 @@ BEGIN BLOCK "040904b0" // US-English; Unicode BEGIN VALUE "Comments", "\0" - VALUE "CompanyName", "CWI\0" + VALUE "CompanyName", "MonetDB B.V.\0" VALUE "FileDescription", "MonetDB Application Interface DLL\0" VALUE "FileVersion", "11.20.0\0" // ^^^^^^^^ diff --git a/clients/odbc/driver/driver.rc b/clients/odbc/driver/driver.rc --- a/clients/odbc/driver/driver.rc +++ b/clients/odbc/driver/driver.rc @@ -16,7 +16,7 @@ BEGIN BLOCK "040904b0" // US-English; Unicode BEGIN VALUE "Comments", "\0" - VALUE "CompanyName", "CWI\0" + VALUE "CompanyName", "MonetDB B.V.\0" VALUE "FileDescription", "MonetDB ODBC Driver DLL\0" VALUE "FileVersion", "11.20.0\0" // ^^^^^^^^ diff --git a/clients/odbc/winsetup/setup.rc b/clients/odbc/winsetup/setup.rc --- a/clients/odbc/winsetup/setup.rc +++ b/clients/odbc/winsetup/setup.rc @@ -78,7 +78,7 @@ BEGIN BEGIN BLOCK "040904e4" BEGIN - VALUE "CompanyName", "CWI" + VALUE "CompanyName", "MonetDB B.V." VALUE "FileDescription", "MonetDB ODBC Setup DLL" VALUE "FileVersion", "11.20.0" VALUE "InternalName", "libMonetODBCs.dll" diff --git a/gdk/gdk_bat.c b/gdk/gdk_bat.c --- a/gdk/gdk_bat.c +++ b/gdk/gdk_bat.c @@ -2751,7 +2751,10 @@ BATmode(BAT *b, int mode) BBPdirty(1); if (mode == PERSISTENT && isVIEW(b)) { - VIEWreset(b); + if (VIEWreset(b) == NULL) { + GDKerror("BATmode: cannot allocate memory.\n"); + return NULL; + } } /* persistent BATs get a logical reference */ if (mode == PERSISTENT) { diff --git a/gdk/libbat.rc b/gdk/libbat.rc --- a/gdk/libbat.rc +++ b/gdk/libbat.rc @@ -16,7 +16,7 @@ BEGIN BLOCK "040904b0" // US-English; Unicode BEGIN VALUE "Comments", "\0" - VALUE "CompanyName", "CWI\0" + VALUE "CompanyName", "MonetDB B.V.\0" VALUE "FileDescription", "MonetDB Goblin Database Kernel DLL\0" VALUE "FileVersion", "11.20.0\0" // ^^^^^^^^ diff --git a/monetdb5/tools/libmonetdb5.rc b/monetdb5/tools/libmonetdb5.rc --- a/monetdb5/tools/libmonetdb5.rc +++ b/monetdb5/tools/libmonetdb5.rc @@ -16,7 +16,7 @@ BEGIN BLOCK "040904b0" // US-English; Unicode BEGIN VALUE "Comments", "\0" - VALUE "CompanyName", "CWI\0" + VALUE "CompanyName", "MonetDB B.V.\0" VALUE "FileDescription", "MonetDB5 Library DLL\0" VALUE "FileVersion", "11.20.0\0" // ^^^^^^^^ diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c --- a/sql/backends/monet5/sql.c +++ b/sql/backends/monet5/sql.c @@ -920,25 +920,60 @@ UPGcreate_func(Client cntxt, MalBlkPtr m { _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list