Changeset: 5320bcb7869a for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5320bcb7869a
Added Files:
sql/backends/monet5/UDF/capi/Tests/capi14.sql
sql/backends/monet5/UDF/capi/Tests/capi14.stable.err
sql/backends/monet5/UDF/capi/Tests/capi14.stable.out
sql/test/BugTracker-2018/Tests/multiple-count.Bug-6599.sql
sql/test/BugTracker-2018/Tests/multiple-count.Bug-6599.stable.err
sql/test/BugTracker-2018/Tests/multiple-count.Bug-6599.stable.out
sql/test/BugTracker-2018/Tests/procedure-create-table.Bug-6604.sql
sql/test/BugTracker-2018/Tests/remote-table-where-is-null.Bug-6601.SQL.py
sql/test/BugTracker-2018/Tests/remote-table-where-is-null.Bug-6601.stable.err
sql/test/BugTracker-2018/Tests/remote-table-where-is-null.Bug-6601.stable.out
sql/test/BugTracker-2018/Tests/sqlitelogictest-cast-null-not-in.Bug-6605.sql
sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-not-in.Bug-6594.sql
sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-not-in.Bug-6594.stable.err
sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-not-in.Bug-6594.stable.out
sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-distinct-duplicate.Bug-6603.sql
sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-distinct-duplicate.Bug-6603.stable.err
sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-distinct-duplicate.Bug-6603.stable.out
sql/test/BugTracker-2018/Tests/sqlitelogictest-select-errors.Bug-6600.sql
sql/test/BugTracker-2018/Tests/sqlitelogictest-select-errors.Bug-6600.stable.err
sql/test/BugTracker-2018/Tests/sqlitelogictest-select-errors.Bug-6600.stable.out
sql/test/BugTracker-2018/Tests/sqlitelogictest-select-not-in-wrong.Bug-6602.sql
sql/test/BugTracker-2018/Tests/sqlitelogictest-select-not-in-wrong.Bug-6602.stable.err
sql/test/BugTracker-2018/Tests/sqlitelogictest-select-not-in-wrong.Bug-6602.stable.out
sql/test/BugTracker-2018/Tests/temp-table-performance.Bug-6577.sql
sql/test/BugTracker-2018/Tests/temp-table-performance.Bug-6577.stable.err
sql/test/BugTracker-2018/Tests/temp-table-performance.Bug-6577.stable.out
sql/test/Dump/Tests/clean-again.reqtests
sql/test/Dump/Tests/clean-again.sql.src
sql/test/Dump/Tests/clean-again.stable.err
sql/test/Dump/Tests/clean-again.stable.out
sql/test/Dump/Tests/dump-again.SQL.py
sql/test/Dump/Tests/dump-again.reqtests
sql/test/Dump/Tests/dump-again.stable.err
sql/test/Dump/Tests/dump-again.stable.out
sql/test/Dump/Tests/reload-again.SQL.py
sql/test/Dump/Tests/reload-again.reqtests
sql/test/Dump/Tests/reload-again.stable.err
sql/test/Dump/Tests/reload-again.stable.out
sql/test/Dump/Tests/test-again.reqtests
sql/test/Dump/Tests/test-again.sql.src
sql/test/Dump/Tests/test-again.stable.err.src
sql/test/Dump/Tests/test-again.stable.out.src
sql/test/Tests/copy-from-compressed.csv.bz2
sql/test/Tests/copy-from-compressed.csv.gz
sql/test/Tests/copy-from-compressed.csv.raw
sql/test/Tests/copy-from-compressed.csv.xz
sql/test/Tests/copy-from-compressed.sql.in
sql/test/Tests/copy-from-compressed.stable.err
sql/test/Tests/copy-from-compressed.stable.out
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.reqtests
sql/test/emptydb-upgrade-chain/Tests/upgrade.reqtests
sql/test/emptydb-upgrade-hge/Tests/upgrade.reqtests
sql/test/emptydb-upgrade/Tests/upgrade.reqtests
Removed Files:
NT/mkgeomwxs.py
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.powerpc64
Modified Files:
NT/Makefile
NT/mksqlwxs.py
buildtools/ChangeLog
clients/mapiclient/dump.c
clients/mapiclient/mclient.c
clients/mapiclient/msqldump.c
clients/mapiclient/msqldump.h
clients/odbc/driver/Makefile.ag
clients/odbc/driver/SQLColumnPrivileges.c
clients/odbc/driver/SQLExecute.c
clients/odbc/driver/SQLTablePrivileges.c
common/stream/stream.c
configure.ag
gdk/gdk_select.c
sql/ChangeLog.Mar2018
sql/backends/monet5/UDF/capi/Tests/All
sql/backends/monet5/UDF/capi/capi.c
sql/backends/monet5/rel_bin.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql_cat.c
sql/backends/monet5/sql_execute.c
sql/backends/monet5/sql_gencode.c
sql/backends/monet5/sql_statement.c
sql/backends/monet5/sql_upgrades.c
sql/common/sql_types.c
sql/common/sql_types.h
sql/scripts/21_dependency_functions.sql
sql/scripts/21_dependency_views.sql
sql/server/rel_exp.c
sql/server/rel_optimizer.c
sql/server/rel_optimizer.h
sql/server/rel_partition.c
sql/server/rel_psm.c
sql/server/rel_schema.c
sql/server/rel_select.c
sql/server/rel_updates.c
sql/server/sql_atom.c
sql/server/sql_mvc.c
sql/server/sql_mvc.h
sql/server/sql_parser.h
sql/server/sql_parser.y
sql/storage/bat/bat_logger.c
sql/test/BugTracker-2014/Tests/temporary.Bug-3430.stable.err
sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.stable.out
sql/test/BugTracker-2018/Tests/All
sql/test/BugTracker-2018/Tests/sqlitelogictest-coalesce-division-by-zero.Bug-6556.sql
sql/test/BugTracker-2018/Tests/sqlitelogictest-coalesce-division-by-zero.Bug-6556.stable.err
sql/test/BugTracker-2018/Tests/sqlitelogictest-coalesce-division-by-zero.Bug-6556.stable.out
sql/test/BugTracker-2018/Tests/sqlitelogictest-mal-calc-undefined.Bug-6566.stable.out
sql/test/BugTracker-2018/Tests/sqlitelogictest-not-in-wrong-results.Bug-6530.stable.out
sql/test/Dependencies/Tests/Dependencies.stable.out
sql/test/Dependencies/Tests/Dependencies.stable.out.int128
sql/test/Dump/Tests/All
sql/test/Tests/All
sql/test/Tests/systemfunctions.stable.out
sql/test/Tests/systemfunctions.stable.out.int128
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64.int128
sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade/Tests/upgrade.stable.out
sql/test/emptydb-upgrade/Tests/upgrade.stable.out.32bit
sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128
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/mergetables/Tests/mergequery.stable.out
sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade/Tests/upgrade.stable.out
sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit
sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128
testing/Mtest.py.in
Branch: candidate-type
Log Message:
Merge with default branch.
diffs (truncated from 45052 to 300 lines):
diff --git a/NT/Makefile b/NT/Makefile
--- a/NT/Makefile
+++ b/NT/Makefile
@@ -26,7 +26,6 @@ install: targetdirs all
$(MAKE) /nologo /f "$(srcdir)\Makefile.msc" "prefix=$(prefix)"
"bits=$(bits)" install
$(INSTALL) .monetdb "$(sysconfdir)"
$(PYTHON) $(NT)\mksqlwxs.py $(VERSION) "$(MAKE_INCLUDEFILE)"
"$(prefix)" > "$(prefix)\MonetDB5-SQL-Installer.wxs"
- $(PYTHON) $(NT)\mkgeomwxs.py $(VERSION) "$(MAKE_INCLUDEFILE)"
"$(prefix)" > "$(prefix)\MonetDB5-Geom-Installer.wxs"
$(PYTHON) $(NT)\mkodbcwxs.py $(VERSION) "$(MAKE_INCLUDEFILE)"
"$(prefix)" > "$(prefix)\MonetDB-ODBC-Installer.wxs"
$(srcdir)\Makefile.msc: "$(srcdir)\Makefile.ag"
diff --git a/NT/mkgeomwxs.py b/NT/mkgeomwxs.py
deleted file mode 100644
--- a/NT/mkgeomwxs.py
+++ /dev/null
@@ -1,143 +0,0 @@
-from __future__ import print_function
-
-# python mkgeomwxs.py VERSION makedefs.txt PREFIX >
PREFIX/MonetDB5-Geom-Installer.wxs
-# "c:\Program Files (x86)\WiX Toolset v3.10\bin\candle.exe" -nologo -arch
x64/x86 PREFIX/MonetDB5-Geom-Installer.wxs
-# "c:\Program Files (x86)\WiX Toolset v3.10\bin\light.exe" -nologo -sice:ICE03
-sice:ICE60 -sice:ICE82 -ext WixUIExtension
PREFIX/MonetDB5-Geom-Installer.wixobj
-
-import sys, os
-
-# doesn't change
-upgradecode = {'x64': '{8E6CDFDE-39B9-43D9-97B3-2440C012845C}',
- 'x86': '{92C89C36-0E86-45E1-B3D8-0D6C91108F30}'}
-
-def comp(features, id, depth, files):
- indent = ' ' * depth
- for f in files:
- print('%s<Component Id="_%d" Guid="*">' % (indent, id))
- print('%s <File DiskId="1" KeyPath="yes" Name="%s" Source="%s"/>' %
(indent, f.split('\\')[-1], f))
- print('%s</Component>' % indent)
- features.append('_%d' % id)
- id += 1
- return id
-
-def main():
- if len(sys.argv) != 4:
- print(r'Usage: mkgeomwxs.py version makedefs.txt installdir')
- return 1
- makedefs = {}
- for line in open(sys.argv[2]):
- key, val = line.strip().split('=', 1)
- makedefs[key] = val
- if makedefs['bits'] == '64':
- folder = r'ProgramFiles64Folder'
- arch = 'x64'
- else:
- folder = r'ProgramFilesFolder'
- arch = 'x86'
- vs = os.getenv('vs') # inherited from TestTools\common.bat
- 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="MonetDB5 SQL GIS Module" UpgradeCode="%s" Version="%s">' %
(upgradecode[arch], sys.argv[1]))
- print(r' <Package Id="*" Comments="MonetDB5/SQL/GIS Module"
Compressed="yes" InstallerVersion="301" Keywords="MonetDB5 MonetDB SQL GIS
Database" Languages="1033" Manufacturer="MonetDB BV" Platform="%s"/>' % arch)
- print(r' <MajorUpgrade AllowDowngrades="no" DowngradeErrorMessage="A
later version of [ProductName] is already installed."
AllowSameVersionUpgrades="no"/>')
- print(r' <WixVariable Id="WixUILicenseRtf" Value="license.rtf"/>')
- print(r' <WixVariable Id="WixUIBannerBmp" Value="banner.bmp"/>')
- # print(r' <WixVariable Id="WixUIDialogBmp"
Value="backgroundRipple.bmp"/>')
- print(r' <Property Id="INSTALLDIR">')
- print(r' <RegistrySearch Id="MonetDBRegistry"
Key="Software\[Manufacturer]\MonetDB5" Name="InstallPath" Root="HKLM"
Type="raw"/>')
- print(r' </Property>')
- print(r' <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR"/>')
- print(r' <Property Id="ARPPRODUCTICON" Value="monetdb.ico"/>')
- print(r' <Media Id="1" Cabinet="monetdb.cab" EmbedCab="yes"/>')
- print(r' <Condition Message="MonetDB5-SQL needs to be installed
first.">')
- print(r' INSTALLDIR')
- print(r' </Condition>')
- print(r' <Directory Id="TARGETDIR" Name="SourceDir">')
- if vs == '17':
- msvc = r'C:\Program Files (x86)\Microsoft Visual
Studio\2017\Community\VC\Redist\MSVC'
- d = sorted(os.listdir(msvc))[-1]
- msm = '_CRT_%s.msm' % arch
- for f in sorted(os.listdir(os.path.join(msvc, d, 'MergeModules'))):
- if msm in f:
- fn = f
- print(r' <Merge Id="VCRedist" DiskId="1" Language="0"
SourceFile="%s\%s\MergeModules\%s"/>' % (msvc, d, fn))
- else:
- print(r' <Merge Id="VCRedist" DiskId="1" Language="0"
SourceFile="C:\Program Files (x86)\Common Files\Merge
Modules\Microsoft_VC%s0_CRT_%s.msm"/>' % (vs, arch))
- print(r' <Directory Id="%s">' % folder)
- print(r' <Directory Id="ProgramFilesMonetDB" Name="MonetDB">')
- print(r' <Directory Id="INSTALLDIR" Name="MonetDB5">')
- id = 1
- print(r' <Directory Id="bin" Name="bin">')
- id = comp(features, id, 14,
- [r'%s\bin\geos_c.dll' % makedefs['LIBGEOS']])
- print(r' </Directory>')
- print(r' <Directory Id="lib" Name="lib">')
- print(r' <Directory Id="monetdb5" Name="monetdb5">')
- print(r' <Directory Id="autoload" Name="autoload">')
- id = comp(features, id, 18,
- [r'lib\monetdb5\autoload\%s' % x for x in sorted(filter(lambda
x: x.endswith('.mal') and ('geom' in x), os.listdir(os.path.join(sys.argv[3],
'lib', 'monetdb5', 'autoload'))))])
- print(r' </Directory>')
- print(r' <Directory Id="createdb" Name="createdb">')
- id = comp(features, id, 18,
- [r'lib\monetdb5\createdb\%s' % x for x in sorted(filter(lambda
x: x.endswith('.sql') and ('geom' in x), os.listdir(os.path.join(sys.argv[3],
'lib', 'monetdb5', 'createdb'))))])
- print(r' </Directory>')
- id = comp(features, id, 16,
- [r'lib\monetdb5\%s' % x for x in sorted(filter(lambda x:
x.endswith('.mal') and ('geom' in x), os.listdir(os.path.join(sys.argv[3],
'lib', 'monetdb5'))))])
- id = comp(features, id, 16,
- [r'lib\monetdb5\%s' % x for x in sorted(filter(lambda x:
x.startswith('lib_') and (x.endswith('.dll') or x.endswith('.pdb')) and ('geom'
in x), os.listdir(os.path.join(sys.argv[3], 'lib', 'monetdb5'))))])
- print(r' </Directory>')
- print(r' </Directory>')
- print(r' </Directory>')
- print(r' </Directory>')
- print(r' </Directory>')
- print(r' </Directory>')
- print(r' <Feature Id="Complete" ConfigurableDirectory="INSTALLDIR"
Title="MonetDB/SQL">')
- for f in features:
- print(r' <ComponentRef Id="%s"/>' % f)
- print(r' <MergeRef Id="VCRedist"/>')
- print(r' </Feature>')
- # the <UI> section was lifted from
- # ...\SDK\wixui\WixUI_InstallDir.wxs and modified to remove the
- # InstallDirDlg subsection
- # see
http://wixtoolset.org/documentation/manual/v3/wixui/wixui_customizations.html
- print(r' <UI Id="MyWixUI_InstallDir">')
- print(r' <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma"
Size="8"/>')
- print(r' <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma"
Size="12"/>')
- print(r' <TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9"
Bold="yes"/>')
- print(r' <Property Id="DefaultUIFont" Value="WixUI_Font_Normal"/>')
- print(r' <Property Id="WixUI_Mode" Value="InstallDir"/>')
- print(r' <DialogRef Id="BrowseDlg"/>')
- print(r' <DialogRef Id="DiskCostDlg"/>')
- print(r' <DialogRef Id="ErrorDlg"/>')
- print(r' <DialogRef Id="FatalError"/>')
- print(r' <DialogRef Id="FilesInUse"/>')
- print(r' <DialogRef Id="MsiRMFilesInUse"/>')
- print(r' <DialogRef Id="PrepareDlg"/>')
- print(r' <DialogRef Id="ProgressDlg"/>')
- print(r' <DialogRef Id="ResumeDlg"/>')
- print(r' <DialogRef Id="UserExit"/>')
- print(r' <Publish Dialog="BrowseDlg" Control="OK" Event="DoAction"
Value="WixUIValidatePath" Order="3">1</Publish>')
- print(r' <Publish Dialog="BrowseDlg" Control="OK" Event="SpawnDialog"
Value="InvalidDirDlg" Order="4"><![CDATA[NOT WIXUI_DONTVALIDATEPATH AND
WIXUI_INSTALLDIR_VALID<>"1"]]></Publish>')
- print(r' <Publish Dialog="ExitDialog" Control="Finish"
Event="EndDialog" Value="Return" Order="999">1</Publish>')
- print(r' <Publish Dialog="WelcomeDlg" Control="Next"
Event="NewDialog" Value="LicenseAgreementDlg">NOT Installed</Publish>')
- print(r' <Publish Dialog="WelcomeDlg" Control="Next"
Event="NewDialog" Value="VerifyReadyDlg">Installed AND PATCH</Publish>')
- print(r' <Publish Dialog="LicenseAgreementDlg" Control="Back"
Event="NewDialog" Value="WelcomeDlg">1</Publish>')
- print(r' <Publish Dialog="LicenseAgreementDlg" Control="Next"
Event="NewDialog" Value="VerifyReadyDlg">LicenseAccepted = "1"</Publish>')
- print(r' <Publish Dialog="VerifyReadyDlg" Control="Back"
Event="NewDialog" Value="LicenseAgreementDlg" Order="1">NOT
Installed</Publish>')
- print(r' <Publish Dialog="VerifyReadyDlg" Control="Back"
Event="NewDialog" Value="MaintenanceTypeDlg" Order="2">Installed AND NOT
PATCH</Publish>')
- print(r' <Publish Dialog="VerifyReadyDlg" Control="Back"
Event="NewDialog" Value="WelcomeDlg" Order="2">Installed AND PATCH</Publish>')
- print(r' <Publish Dialog="MaintenanceWelcomeDlg" Control="Next"
Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish>')
- print(r' <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton"
Event="NewDialog" Value="VerifyReadyDlg">1</Publish>')
- print(r' <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton"
Event="NewDialog" Value="VerifyReadyDlg">1</Publish>')
- print(r' <Publish Dialog="MaintenanceTypeDlg" Control="Back"
Event="NewDialog" Value="MaintenanceWelcomeDlg">1</Publish>')
- print(r' <Property Id="ARPNOMODIFY" Value="1"/>')
- print(r' </UI>')
- print(r' <UIRef Id="WixUI_Common"/>')
- print(r' <UIRef Id="MyWixUI_InstallDir"/>')
- print(r' <UIRef Id="WixUI_ErrorProgressText"/>')
- print(r' <Icon Id="monetdb.ico" SourceFile="monetdb.ico"/>')
- print(r' </Product>')
- print(r'</Wix>')
-
-main()
diff --git a/NT/mksqlwxs.py b/NT/mksqlwxs.py
--- a/NT/mksqlwxs.py
+++ b/NT/mksqlwxs.py
@@ -7,8 +7,15 @@ from __future__ import print_function
import sys, os
# doesn't change
-upgradecode = {'x64': '{839D3C90-B578-41E2-A004-431440F9E899}',
- 'x86': '{730C595B-DBA6-48D7-94B8-A98780AC92B6}'}
+upgradecode = {
+ 'x64': '{839D3C90-B578-41E2-A004-431440F9E899}',
+ 'x86': '{730C595B-DBA6-48D7-94B8-A98780AC92B6}'
+}
+# the Geom upgrade codes that we are replacing
+geomupgradecode = {
+ 'x64': '{8E6CDFDE-39B9-43D9-97B3-2440C012845C}',
+ 'x86': '{C1F69378-3F5C-4120-8224-32F07D3458F3}'
+}
def comp(features, id, depth, files, name=None, args=None, sid=None,
vital=None):
indent = ' ' * depth
@@ -41,10 +48,19 @@ def main():
libcrypto = ''
vs = os.getenv('vs') # inherited from TestTools\common.bat
features = []
+ extend = []
+ debug = []
+ geom = []
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="%s" Version="%s">' % (upgradecode[arch],
sys.argv[1]))
print(r' <Package Id="*" Comments="MonetDB5/SQL Server and Client"
Compressed="yes" InstallerVersion="301" Keywords="MonetDB5 MonetDB SQL
Database" Languages="1033" Manufacturer="MonetDB BV" Platform="%s"/>' % arch)
+ print(r' <Upgrade Id="%s">' % 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="%s" Property="GEOMINSTALLED"/>' % sys.argv[1])
+ 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="license.rtf"/>')
print(r' <WixVariable Id="WixUIBannerBmp" Value="banner.bmp"/>')
@@ -52,6 +68,33 @@ def main():
print(r' <Property Id="INSTALLDIR">')
print(r' <RegistrySearch Id="MonetDBRegistry"
Key="Software\[Manufacturer]\[ProductName]" Name="InstallPath" Root="HKLM"
Type="raw"/>')
print(r' </Property>')
+ print(r' <Property Id="DEBUGEXISTS">')
+ print(r' <DirectorySearch Id="CheckFileDir1" Path="[INSTALLDIR]\bin"
Depth="0">')
+ print(r' <FileSearch Id="CheckFile1" Name="libbat.pdb"/>')
+ print(r' </DirectorySearch>')
+ print(r' </Property>')
+ print(r' <Property Id="INCLUDEEXISTS">')
+ print(r' <DirectorySearch Id="CheckFileDir2"
Path="[INSTALLDIR]\include\monetdb" Depth="0">')
+ print(r' <FileSearch Id="CheckFile2" Name="gdk.h"/>')
+ print(r' </DirectorySearch>')
+ print(r' </Property>')
+ print(r' <Property Id="GEOMEXISTS">')
+ print(r' <DirectorySearch Id="CheckFileDir3"
Path="[INSTALLDIR]\lib\monetdb5" Depth="0">')
+ print(r' <FileSearch Id="CheckFile3" Name="geom.mal"/>')
+ print(r' </DirectorySearch>')
+ print(r' </Property>')
+ # 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, therefore we disallow
+ # running the current installer
+ print(r' <Property Id="OLDGEOMINSTALLED">')
+ print(r' <ProductSearch UpgradeCode="%s" Minimum="11.1.1"
Maximum="11.29.3" IncludeMinimum="yes" IncludeMaximum="yes"/>' %
geomupgradecode[arch])
+ print(r' </Property>')
+ print(r' <Condition Message="Please uninstall MonetDB5 SQL GIS Module
first, then rerun and select to install Complete package.">')
+ print(r' NOT OLDGEOMINSTALLED')
+ print(r' </Condition>')
+ print(r' <Property Id="ApplicationFolderName" Value="MonetDB"/>')
+ print(r' <Property Id="WixAppFolder" Value="WixPerMachineFolder"/>')
print(r' <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR"/>')
print(r' <Property Id="ARPPRODUCTICON" Value="monetdb.ico"/>')
print(r' <Media Id="1" Cabinet="monetdb.cab" EmbedCab="yes"/>')
@@ -78,27 +121,38 @@ def main():
id = 1
print(r' <Directory Id="bin" Name="bin">')
id = comp(features, id, 14,
- [r'bin\mclient.exe', r'bin\mclient.pdb',
- r'bin\mserver5.exe', r'bin\mserver5.pdb',
- r'bin\msqldump.exe', r'bin\msqldump.pdb',
- r'bin\stethoscope.exe', r'bin\stethoscope.pdb',
- r'lib\libbat.dll', r'lib\libbat.pdb',
- r'lib\libmapi.dll', r'lib\libmapi.pdb',
- r'lib\libmonetdb5.dll', r'lib\libmonetdb5.pdb',
- r'lib\libstream.dll', r'lib\libstream.pdb',
+ [r'bin\mclient.exe',
+ r'bin\mserver5.exe',
+ r'bin\msqldump.exe',
+ r'bin\stethoscope.exe',
+ r'lib\libbat.dll',
+ r'lib\libmapi.dll',
+ r'lib\libmonetdb5.dll',
+ r'lib\libstream.dll',
r'%s\bin\iconv-2.dll' % makedefs['LIBICONV'],
r'%s\bin\libbz2.dll' % makedefs['LIBBZIP2'],
r'%s\bin\libcrypto-1_1%s.dll' % (makedefs['LIBOPENSSL'],
libcrypto),
r'%s\bin\libxml2.dll' % makedefs['LIBXML2'],
r'%s\bin\pcre.dll' % makedefs['LIBPCRE'],
r'%s\bin\zlib1.dll' % makedefs['LIBZLIB']])
+ id = comp(debug, id, 14,
+ [r'bin\mclient.pdb',
+ r'bin\mserver5.pdb',
+ r'bin\msqldump.pdb',
+ r'bin\stethoscope.pdb',
+ r'lib\libbat.pdb',
+ r'lib\libmapi.pdb',
+ r'lib\libmonetdb5.pdb',
+ r'lib\libstream.pdb'])
+ id = comp(geom, id, 14,
+ [r'%s\bin\geos_c.dll' % makedefs['LIBGEOS']])
print(r' </Directory>')
print(r' <Directory Id="etc" Name="etc">')
id = comp(features, id, 14, [r'etc\.monetdb'])
print(r' </Directory>')
print(r' <Directory Id="include" Name="include">')
print(r' <Directory Id="monetdb" Name="monetdb">')
- id = comp(features, id, 16,
+ id = comp(extend, id, 16,
sorted([r'include\monetdb\%s' % x for x in filter(lambda x:
(x.startswith('gdk') or x.startswith('monet') or x.startswith('mal')) and
x.endswith('.h'), os.listdir(os.path.join(sys.argv[3], 'include', 'monetdb')))]
+
[r'include\monetdb\mapi.h',
r'include\monetdb\stream.h',
@@ -111,17 +165,27 @@ def main():
print(r' <Directory Id="autoload" Name="autoload">')
id = comp(features, id, 18,
[r'lib\monetdb5\autoload\%s' % x for x in sorted(filter(lambda
x: x.endswith('.mal') and ('geom' not in x),
os.listdir(os.path.join(sys.argv[3], 'lib', 'monetdb5', 'autoload'))))])
+ id = comp(geom, id, 18,
+ [r'lib\monetdb5\autoload\%s' % x for x in sorted(filter(lambda
x: x.endswith('.mal') and ('geom' in x), os.listdir(os.path.join(sys.argv[3],
'lib', 'monetdb5', 'autoload'))))])
print(r' </Directory>')
print(r' <Directory Id="createdb" Name="createdb">')
id = comp(features, id, 18,
[r'lib\monetdb5\createdb\%s' % x for x in sorted(filter(lambda
x: x.endswith('.sql') and ('geom' not in x),
os.listdir(os.path.join(sys.argv[3], 'lib', 'monetdb5', 'createdb'))))])
+ id = comp(geom, id, 18,
+ [r'lib\monetdb5\createdb\%s' % x for x in sorted(filter(lambda
x: x.endswith('.sql') and ('geom' in x), os.listdir(os.path.join(sys.argv[3],
'lib', 'monetdb5', 'createdb'))))])
print(r' </Directory>')
id = comp(features, id, 16,
[r'lib\monetdb5\%s' % x for x in sorted(filter(lambda x:
x.endswith('.mal') and ('geom' not in x), os.listdir(os.path.join(sys.argv[3],
'lib', 'monetdb5'))))])
id = comp(features, id, 16,
- [r'lib\monetdb5\%s' % x for x in sorted(filter(lambda x:
x.startswith('lib_') and (x.endswith('.dll') or x.endswith('.pdb')) and ('geom'
not in x), os.listdir(os.path.join(sys.argv[3], 'lib', 'monetdb5'))))])
+ [r'lib\monetdb5\%s' % x for x in sorted(filter(lambda x:
x.startswith('lib_') and x.endswith('.dll') and ('geom' not in x),
os.listdir(os.path.join(sys.argv[3], 'lib', 'monetdb5'))))])
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list