Changeset: f80cc85c1a11 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f80cc85c1a11
Modified Files:
NT/rules.msc
testing/Mtest.py.in
Branch: default
Log Message:
Merge with Aug2011 branch.
diffs (truncated from 403 to 300 lines):
diff --git a/NT/Makefile b/NT/Makefile
--- a/NT/Makefile
+++ b/NT/Makefile
@@ -24,7 +24,7 @@ prefix = $(MAKEDIR)
!INCLUDE "$(TOPDIR)\..\NT\rules.msc"
-all: "$(srcdir)\Makefile.msc" monetdb_config.h unistd.h inttypes.h .monetdb
+all: "$(srcdir)\Makefile.msc" monetdb_config.h unistd.h inttypes.h .monetdb
update_winconfig_conds_py
$(MAKE) /nologo /f "$(srcdir)\Makefile.msc" "prefix=$(prefix)"
"bits=$(bits)" all
install: targetdirs all
diff --git a/NT/rules.msc b/NT/rules.msc
--- a/NT/rules.msc
+++ b/NT/rules.msc
@@ -244,86 +244,199 @@ NATIVE_WIN32 = 1
FILTER=findstr /v /l
FILTERPREF=/c:
+# To avoid a too long commandline when calling winconfig.py ($(CONFIGURE)),
+# we called the settings for AM_CONDITIONALS defined in configure.ag into
+# a file ($(TOPDIR)\winconfig_conds.py) where winconfig.py reads these
+# settings from, and make each call of winconfig.py (via $(CONFIGURE))
+# depend on this file.
+# To avoid unnecessary identical re-creation of $(TOPDIR)\winconfig_conds.py
+# (and thus unnecessary identical re-conversion of *.in files by winconfig.py,
+# and thus unnecessary re-compilation of the resulting code files),
+# we first create a temporary $(TOPDIR)\winconfig_conds_new.py with each
+# nmake call, and then update the actual $(TOPDIR)\winconfig_conds.py
+# only if the new $(TOPDIR)\winconfig_conds_new.py is different.
+
+create_winconfig_conds_new_py:
+ $(ECHO) > "$(TOPDIR)\winconfig_conds_new.py"
+ # These should cover all AM_CONDITIONALS defined in configure.ag, i.e.,
+ # `grep AM_CONDITIONAL configure.ag | sed
's|^AM_CONDITIONAL(\([^,]*\),.*$|\1|' | sort -u`
!IFDEF BITS32
-BITS32_FALSE=^#
+ $(ECHO) "BITS32_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "BITS32_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
!ENDIF
!IFDEF BITS64
-BITS64_FALSE=^#
+ $(ECHO) "BITS64_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "BITS64_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF CROSS_COMPILING
+ $(ECHO) "CROSS_COMPILING_FALSE='#'" >>
"$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "CROSS_COMPILING_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
!ENDIF
!IFDEF DOCTOOLS
-DOCTOOLS_FALSE=^#
+ $(ECHO) "DOCTOOLS_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "DOCTOOLS_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF ENABLE_CRACKERS
+ $(ECHO) "ENABLE_CRACKERS_FALSE='#'" >>
"$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "ENABLE_CRACKERS_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF ENABLE_DATACELL
+ $(ECHO) "ENABLE_DATACELL_FALSE='#'" >>
"$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "ENABLE_DATACELL_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_ANT
+ $(ECHO) "HAVE_ANT_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_ANT_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_CFITSIO
+ $(ECHO) "HAVE_CFITSIO_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_CFITSIO_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_DEVELOPER
+ $(ECHO) "HAVE_DEVELOPER_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_DEVELOPER_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_GDK
+ $(ECHO) "HAVE_GDK_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_GDK_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_GEOM
+ $(ECHO) "HAVE_GEOM_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_GEOM_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
!ENDIF
!IFDEF HAVE_JAVA
-HAVE_JAVA_FALSE=^#
+ $(ECHO) "HAVE_JAVA_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!IFDEF HAVE_JAVAJDBC
+ $(ECHO) "HAVE_JAVAJDBC_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_JAVAJDBC_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
!ENDIF
-!IFDEF HAVE_JAVAJDBC
-HAVE_JAVAJDBC_FALSE=^#
+!IFDEF HAVE_JAVAMEROCONTROL
+ $(ECHO) "HAVE_JAVAMEROCONTROL_FALSE='#'" >>
"$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_JAVAMEROCONTROL_FALSE=''" >>
"$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!ELSE
+ $(ECHO) "HAVE_JAVA_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+ $(ECHO) "HAVE_JAVAJDBC_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+ $(ECHO) "HAVE_JAVAMEROCONTROL_FALSE=''" >>
"$(TOPDIR)\winconfig_conds_new.py"
!ENDIF
!IFDEF HAVE_LIBBZ2
-HAVE_LIBBZ2_FALSE=^#
+ $(ECHO) "HAVE_LIBBZ2_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_LIBBZ2_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_LIBXML2
+ $(ECHO) "HAVE_LIBXML2_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_LIBXML2_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
!ENDIF
!IFDEF HAVE_LIBZ
-HAVE_LIBZ_FALSE=^#
+ $(ECHO) "HAVE_LIBZ_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_LIBZ_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
!ENDIF
!IFDEF HAVE_MONETDB5
-HAVE_MONETDB5_FALSE=^#
+ $(ECHO) "HAVE_MONETDB5_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_MONETDB5_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_MSEED
+ $(ECHO) "HAVE_MSEED_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_MSEED_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_ODBC
+ $(ECHO) "HAVE_ODBC_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_ODBC_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_PCRE
+ $(ECHO) "HAVE_PCRE_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_PCRE_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_PERL
+ $(ECHO) "HAVE_PERL_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_PERL_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_PHP
+ $(ECHO) "HAVE_PHP_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_PHP_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_PYTHON
+ $(ECHO) "HAVE_PYTHON_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_PYTHON_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
!ENDIF
!IFDEF HAVE_RAPTOR
-HAVE_RAPTOR_FALSE=^#
-!ENDIF
-!IFDEF HAVE_ODBC
-HAVE_ODBC_FALSE=^#
-!ENDIF
-!IFDEF HAVE_PCRE
-HAVE_PCRE_FALSE=^#
-!ENDIF
-!IFDEF HAVE_PERL
-HAVE_PERL_FALSE=^#
-!ENDIF
-!IFDEF HAVE_PHP
-HAVE_PHP_FALSE=^#
-!ENDIF
-!IFDEF HAVE_PYTHON
-HAVE_PYTHON_FALSE=^#
+ $(ECHO) "HAVE_RAPTOR_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_RAPTOR_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
!ENDIF
!IFDEF HAVE_RUBYGEM
-HAVE_RUBYGEM_FALSE=^#
+ $(ECHO) "HAVE_RUBYGEM_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_RUBYGEM_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_HAVE_SPHINXCLIENT
+ $(ECHO) "HAVE_HAVE_SPHINXCLIENT_FALSE='#'" >>
"$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_HAVE_SPHINXCLIENT_FALSE=''" >>
"$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_HAVE_SQL
+ $(ECHO) "HAVE_HAVE_SQL_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_HAVE_SQL_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_HAVE_TESTING
+ $(ECHO) "HAVE_HAVE_TESTING_FALSE='#'" >>
"$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_HAVE_TESTING_FALSE=''" >>
"$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_NATIVE_WIN32
+ $(ECHO) "HAVE_NATIVE_WIN32_FALSE='#'" >>
"$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_NATIVE_WIN32_FALSE=''" >>
"$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
+!IFDEF HAVE_NOT_WIN32
+ $(ECHO) "HAVE_NOT_WIN32_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "HAVE_NOT_WIN32_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
!ENDIF
!IFDEF PROFILING
-PROFILING_FALSE=^#
-!ENDIF
-!IFDEF HAVE_LIBXML2
-HAVE_LIBXML2_FALSE=^#
+ $(ECHO) "PROFILING_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) "PROFILING_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py"
!ENDIF
-CONFIGURE=$(PYTHON) $(CONFIGURE_PY) \
+update_winconfig_conds_py: create_winconfig_conds_new_py
+ if not exist "$(TOPDIR)\winconfig_conds.py" $(CP)
"$(TOPDIR)\winconfig_conds_new.py" "$(TOPDIR)\winconfig_conds.py"
+ C:\cygwin\bin\cmp.exe -s "$(TOPDIR)\winconfig_conds_new.py"
"$(TOPDIR)\winconfig_conds.py"
+ if ERRORLEVEL 1 $(CP) "$(TOPDIR)\winconfig_conds_new.py"
"$(TOPDIR)\winconfig_conds.py"
+
+CONFIGURE=$(PYTHON) $(CONFIGURE_PY)
+ "$(TOPDIR)\winconfig_conds.py" \
"prefix=$(prefix)" \
- "BITS32_FALSE=$(BITS32_FALSE)" \
- "BITS64_FALSE=$(BITS64_FALSE)" \
- "DOCTOOLS_FALSE=$(DOCTOOLS_FALSE)" \
- "HAVE_CFITSIO_FALSE=$(HAVE_CFITSIO_FALSE)" \
- "HAVE_JAVAJDBC_FALSE=$(HAVE_JAVAJDBC_FALSE)" \
- "HAVE_JAVA_FALSE=$(HAVE_JAVA_FALSE)" \
- "HAVE_LIBBZ2_FALSE=$(HAVE_LIBBZ2_FALSE)" \
- "HAVE_LIBXML2_FALSE=$(HAVE_LIBXML2_FALSE)" \
- "HAVE_LIBZ_FALSE=$(HAVE_LIBZ_FALSE)" \
- "HAVE_MONETDB5_FALSE=$(HAVE_MONETDB5_FALSE)" \
- "HAVE_MSEED_FALSE=$(HAVE_MSEED_FALSE)" \
- "HAVE_OPENSSL_FALSE=$(HAVE_OPENSSL_FALSE)" \
- "HAVE_ODBC_FALSE=$(HAVE_ODBC_FALSE)" \
- "HAVE_PCRE_FALSE=$(HAVE_PCRE_FALSE)" \
- "HAVE_PERL_FALSE=$(HAVE_PERL_FALSE)" \
- "HAVE_PHP_FALSE=$(HAVE_PHP_FALSE)" \
- "HAVE_PYTHON_FALSE=$(HAVE_PYTHON_FALSE)" \
- "HAVE_RAPTOR_FALSE=$(HAVE_RAPTOR_FALSE)" \
- "HAVE_RUBYGEM_FALSE=$(HAVE_RUBYGEM_FALSE)" \
"JDBCCLIENT_JAR=$(JDBCCLIENT_JAR)" \
"LIBICONV=$(LIBICONV)" \
"LIBXML2=$(LIBXML2)" \
"LIBZLIB=$(LIBZLIB)" \
"PACKAGE=$(pkg)" \
"PERL_LIBDIR=$(PERL_LIBDIR)" \
- "PROFILING_FALSE=$(PROFILING_FALSE)" \
"PYTHON=$(PYTHON)" \
"PYTHON_LIBDIR=$(PYTHON_LIBDIR)" \
"RUBY_DIR=$(RUBY_DIR)" \
diff --git a/NT/winconfig.py b/NT/winconfig.py
--- a/NT/winconfig.py
+++ b/NT/winconfig.py
@@ -40,11 +40,16 @@ subs = [("@exec_prefix@", r'%prefix%'),
("@pkglibdir@", r'%exec_prefix%\lib\@PACKAGE@'),
("@pkgincludedir@", r'%prefix%\include\@PACKAGE@'),
("@DIRSEP@", '\\'),
- ("@CROSS_COMPILING_FALSE@", ''),
- ("@NATIVE_WIN32_FALSE@", '#'),
- ("@NOT_WIN32_FALSE@", ''),
("@PATHSEP@", ';')]
+if len(sys.argv) > 1 and sys.argv[1][-19:] == '\\winconfig_conds.py':
+ conds = {}
+ for line in fileinput.input(sys.argv[1]):
+ exec(line, None, conds)
+ for k in conds.keys():
+ subs.append(('@'+k+'@', conds[k]))
+ del sys.argv[1]
+
while len(sys.argv) > 2 and '=' in sys.argv[1]:
arg = sys.argv[1]
i = arg.find('=')
diff --git a/buildtools/autogen/autogen/msc.py
b/buildtools/autogen/autogen/msc.py
--- a/buildtools/autogen/autogen/msc.py
+++ b/buildtools/autogen/autogen/msc.py
@@ -336,7 +336,7 @@ def msc_dep(fd, tar, deplist, msc):
for x, y in _in:
# TODO
# replace this hack by something like configure ...
- fd.write('%s: "%s"\n' % (x, y))
+ fd.write('%s: "$(TOPDIR)\\winconfig_conds.py" "%s"\n' % (x, y))
fd.write('\t$(CONFIGURE) "%s" > "%s"\n' % (y, x))
msc['_IN'].append(y)
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list