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

Reply via email to