Ticket #496: patch5.patch
File patch5.patch, 16.2 KB (added by , 14 years ago) |
---|
-
ChangeLog
1 Tue Jun 22 15:38:20 GMT 2010 Charlie Hull <charlie@flax.co.uk> 1 2 3 * Makefile: prevent overwriting of xapian-bindings-1.x.x/xapian-version.h 4 in packaged releases 5 * win32_matcher.mak: multixorpostlist.cc replaces xorpostlist.cc 6 * README: clarify deps.d and compilation errors behaviour 7 * win32_bindings_python.mak: add test_xapian_star.py (even thought this is 8 missing from the package at present) 9 * makebinaries.py : change to match new Flax website 10 11 Fri Apr 16 09:30:20 GMT 2010 Charlie Hull <charlie@flax.co.uk> 2 12 3 * Patch from ticket#466: 4 * win32_tests.mak: add api_none.cc and api_replacedoc.cc to list 5 of sources 6 * win32_applications_omega.cc: remove extra getopt.cc from sources, 7 change dirent.cc to msvc_dirent.cc 8 * makebinaries.py: use Python 2.6.4 9 * xapdep/xapdep.c: improve checking for redundant strings in dep file 13 * win32_tests.mak: add api_none.cc and api_replacedoc.cc to list 14 of sources 15 * win32_applications_omega.cc: remove extra getopt.cc from sources, 16 change dirent.cc to msvc_dirent.cc 17 * makebinaries.py: use Python 2.6.4 18 * xapdep/xapdep.c: improve checking for redundant strings in dep file 10 19 11 20 Wed Mar 17 01:20:08 GMT 2010 Olly Betts <olly@survex.com> 12 21 … … 51 60 Mon Jun 22 15:30:00 GMT 2009 Charlie Hull <charlie@flax.co.uk> 52 61 53 62 * Makefile, win32_bindings_python.mak, config.mak, makebinaries.py: add 54 Python 2.6 option 63 Python 2.6 option 55 64 56 65 Tue Apr 21 13:33:51 GMT 2009 Richard Boulton <richard@lemurconsulting.com> 57 66 … … 70 79 * win32_bindings_php.mak,win32_bindings_csharp.mak, 71 80 win32_bindings_java-swig.mak,win32_bindings_ruby.mak: add example 72 81 and doc files where they exist and DIST build target. 73 * config.mak,win32_bindings_python.mak: add ability to build two 82 * config.mak,win32_bindings_python.mak: add ability to build two 74 83 different Python versions, and add example files, and change 75 84 BUILDDIST to DIST for consistency with other bindings. 76 85 * setup.py: add example & documentation files for Python. -
config.h.omega.win32
83 83 #define PACKAGE_NAME "xapian-omega" 84 84 85 85 /* Define to the full name and version of this package. */ 86 #define PACKAGE_STRING "xapian-omega 1.0. 14"86 #define PACKAGE_STRING "xapian-omega 1.0.21" 87 87 88 88 /* Define to the one symbol short name of this package. */ 89 89 #define PACKAGE_TARNAME "xapian-omega" 90 90 91 91 /* Define to the version of this package. */ 92 #define PACKAGE_VERSION "1.0. 14"92 #define PACKAGE_VERSION "1.0.21" 93 93 94 94 /* Define to the name of a function implementing snprintf but not caring about 95 95 ISO C90 return value semantics (if one exists) */ … … 106 106 /* USE_ICONV */ 107 107 108 108 /* Version number of package */ 109 #define VERSION "1.0. 14"109 #define VERSION "1.0.21" 110 110 111 111 /* Define to 1 if your processor stores words with the most significant byte 112 112 first (like Motorola and SPARC, unlike Intel and VAX). */ -
config.h.win32
99 99 #define PACKAGE_NAME "xapian-core" 100 100 101 101 /* Define to the full name and version of this package. */ 102 #define PACKAGE_STRING "xapian-core 1.0. 14"102 #define PACKAGE_STRING "xapian-core 1.0.21" 103 103 104 104 /* Define to the one symbol short name of this package. */ 105 105 #define PACKAGE_TARNAME "xapian-core" 106 106 107 107 /* Define to the version of this package. */ 108 #define PACKAGE_VERSION "1.0. 14"108 #define PACKAGE_VERSION "1.0.21" 109 109 110 110 /* explicit prototype needed for pread (if any) */ 111 111 /* #undef PREAD_PROTOTYPE */ … … 128 128 #define STDC_HEADERS 1 129 129 130 130 /* Version number of package */ 131 #define VERSION "1.0. 14"131 #define VERSION "1.0.21" 132 132 133 133 /* Define if you want debugging to be enabled (will cause some slow down) */ 134 134 /* #undef XAPIAN_DEBUG */ -
config.mak
24 24 # win32_applications_omega.mak 25 25 # win32_bindings_python.mak 26 26 # and any other bindings mak files 27 XAPIAN_APPLICATIONS=..\..\xapian-omega 28 XAPIAN_BINDINGS=..\..\xapian-bindings 27 XAPIAN_APPLICATIONS=..\..\xapian-omega-1.0.21 28 XAPIAN_BINDINGS=..\..\xapian-bindings-1.0.21 29 29 30 30 # ------------- Perl settings------------- 31 31 # Perl folder -
makebinaries.py
136 136 ofi = open(newhtml, "w") 137 137 print >> ofi, r"<html><head></head><body><table>" 138 138 print >> ofi, r"<!-- cut and paste from after here -->" 139 print >> ofi, r'<tr><td><b>' + rev + '</b><br><br>' 140 print >> ofi, r'<a href=xapian/' + revnodots + '/xapian-core-' + rev + '.tar.gz>xapian-core-' + rev + '.tar.gz</a><br>' 141 print >> ofi, r'<a href=xapian/' + revnodots + '/xapian-bindings-' + rev + '.tar.gz>xapian-bindings-' + rev + '.tar.gz</a><br>' 142 print >> ofi, r'<a href=xapian/' + revnodots + '/xapian-omega-' + rev + '.tar.gz>xapian-omega-' + rev + '.tar.gz</a></td>' 143 print >> ofi, '<td><a href=\"xapian/' + revnodots + '/win32.zip\">win32.zip</a></td>' 144 print >> ofi, r'<td><a href="xapian/' + revnodots + '/readme.txt\">readme.txt</a></td><td>' 139 print >> ofi, r" <tr>" 140 print >> ofi, r" <td class version>" 141 print >> ofi, r" <h3>" + rev + " <?php binaries_link('xapian/" + revnodots + "/readme.txt'); ?></h3>" 142 print >> ofi, r" <h4>Source</h4>" 143 print >> ofi, r" <?php binaries_link('xapian/" + revnodots + "/xapian-core-" + rev + ".tar.gz'); ?>" 144 print >> ofi, r" <?php binaries_link('xapian/" + revnodots + "/xapian-bindings-" + rev + ".tar.gz'); ?>" 145 print >> ofi, r" <?php binaries_link('xapian/" + revnodots + "/xapian-omega-" + rev + ".tar.gz'); ?>" 146 print >> ofi, r" <h4>Build Files</h4>" 147 print >> ofi, r" <?php binaries_link('xapian/" + revnodots + "/win32.zip'); ?>" 148 print >> ofi, r" </td>" 149 print >> ofi, r' <td class="binaries">' 150 print >> ofi, r" <?php binaries_list(array(" 145 151 for line in ifi: 146 152 parts = line.split('*') 147 153 print parts 148 154 parts1mod = parts[1].replace("\n","") 149 print >> ofi, r '<a href="' + newdir + r'/' + parts[1] + r'">' + parts[1] + r'</a> MD5 sum: ' + parts[0] + r'<br>'155 print >> ofi, r" 'xapian/" + revnodots + "/" + parts1mod + r"' => '" + parts[0] + r"'," 150 156 157 print >> ofi, r" )); ?>" 158 print >> ofi, r" </td>" 159 print >> ofi, r" </tr>" 160 151 161 print >> ofi, r"<!-- cut and paste to before here -->" 152 162 print >> ofi, r"</table></body></html>" 153 163 -
Makefile
114 114 copy win32_queryparser.mak ..\queryparser\Makefile 115 115 copy win32_tests.mak ..\tests\Makefile 116 116 copy win32_testsuite.mak ..\tests\harness\Makefile 117 if exist $(XAPIAN_BINDINGS) copy $(XAPIAN_BINDINGS)\xapian-version.h.in $(XAPIAN_BINDINGS)\xapian-version.h118 117 if exist $(XAPIAN_BINDINGS) copy win32_bindings_python.mak $(XAPIAN_BINDINGS)\python\Makefile 119 118 if exist $(XAPIAN_BINDINGS) copy doccomments.i $(XAPIAN_BINDINGS)\python 120 119 if exist $(XAPIAN_BINDINGS) copy version.rc.python $(XAPIAN_BINDINGS)\python\version.rc -
README
1 1 README for Xapian/Visual C++ Tools 2 2 ================================== 3 2010-0 4-16 for Xapian 1.0.193 2010-06-22 for Xapian 1.0.21 4 4 5 5 Make files, some extra headers and associated tools for compiling Xapian on 6 6 Win32 using the Microsoft Visual C++ compilers. This is particularly useful … … 54 54 not expect it to cause serious problems. 55 55 56 56 - To get round the fact that MSVC doesn't do dependency checking correctly, 57 we use an external program 'xapdep'. Each Makefile use the -showIncludes switch of the MSVC 58 compiler to generate a list of includes, which xapdep then processes and inserts 59 into the Makefile in the various subdirectories. 57 we use an external program 'xapdep'. Each Makefile use the -showIncludes switch of the MSVC 58 compiler to generate a list of includes as deps.d, which xapdep then processes and inserts 59 into the Makefile in the various subdirectories. An unfortunate side effect is that 60 details of any compilation errors may be hidden: if you see: 60 61 62 NMAKE : fatal error U1077: 'cl.exe' : return code '0x2' 63 64 this signifies a compilation error while dependencies were being checked. Look at the file 65 deps.d in the appropriate folder to see what actually caused the failure. 66 67 - Note that this version does not pass the 'replicate3' test currently with the Flint database. 68 This may indicate a problem with the replication system on Windows, or may be a 69 an issue with the test itself. We thus do not recommend the use of the replication 70 system and the Flint database on Windows until this is resolved - see 71 http://trac.xapian.org/ticket/472 for more details. 72 73 - Note that one of the Python tests currently fails due a missing file (test_xapian_star.py). 74 This test failure can safely be ignored for now - if you want to use MAKEALLBINDINGS you 75 can copy the missing file from Xapian's SVN archive in branch/1.0/xapian-bindings. 76 61 77 TODOS 62 78 ===== 63 79 … … 117 133 118 134 You will then need to edit "xapian\xapian-core\win32\config.mak" as 119 135 described in step 4 in the previous section ("How do I get the released 120 sources?"). 136 sources?"). 121 137 122 138 What do I need to compile it? 123 139 ============================= … … 216 232 - to build and run the test suite 217 233 5b) nmake 218 234 - to just build. 235 236 **NOTE: if you get the following error: 219 237 238 NMAKE : fatal error U1077: 'cl.exe' : return code '0x2' 239 240 this signifies a compilation error while dependencies were being checked. Look at the file 241 deps.d in the appropriate folder to see what actually caused the failure. 242 220 243 To build the bindings (do steps 1-5 above first to make sure you have Xapian built): 221 244 222 245 6) cd to xapian-core-0.x.y\win32 or the appropriate path on your system. 223 7) edit 224 win32_bindings_python.mak 225 win32_bindings_php.mak 226 win32_bindings_ruby.mak 227 win32_bindings_java-swig.mak 228 win32_bindings_csharp.mak 229 to suit your environment (XAPIAN_CORE_REL_PYTHON or similar) 246 7) edit XAPIAN_CORE_REL_.. in the win32_bindings_xx.mak file(s) for each binding you are 247 building to suit your environment 230 248 8) nmake COPYMAKFILES 231 249 - to make sure this change is copied to the build folder (this is also done by a rebuild of Xapian) 232 250 9) cd to ..\..\xapian-bindings-0.x.y\ and then the binding folder (php, python etc.) … … 244 262 nmake PYTHON_VER=24 .. 245 263 to make bindings for Python 2.4 or 246 264 nmake PYTHON_VER=25 .. 265 or 266 nmake PYTHON_VER=26 .. 247 267 248 268 11f) For Ruby only, use 249 269 nmake INSTALL 250 270 to install the bindings to the standard Ruby library folder. 251 252 271 253 272 To build *all* the bindings (usually only done by those distributing binaries): 254 273 255 274 12) cd to xapian-core-0.x.y\win32 or the appropriate path on your system. … … 259 278 260 279 To build Omega (do steps 1-5 above first to make sure you have Xapian built): 261 280 262 14) edit win32_applications_omega.mak to suit your environment (XAPIAN_CORE_REL_OMEGA)281 14) edit XAPIAN_CORE_REL_OMEGA in win32_applications_omega.mak to suit your environment 263 282 15) nmake COPYMAKFILES 264 283 - to make sure this change is copied to the build folder 265 284 16) cd to ..\..\omega-0.x.y -
win32_applications_omega.mak
10 10 11 11 # Where the core is, relative to the Omega application 12 12 # Change this to match your environment 13 XAPIAN_CORE_REL_OMEGA=..\xapian-core-1.0. 1913 XAPIAN_CORE_REL_OMEGA=..\xapian-core-1.0.21 14 14 15 15 !IF "$(OS)" == "Windows_NT" 16 16 NULL= -
win32_bindings_csharp.mak
7 7 # Where the core is, relative to the Csharp bindings 8 8 # Change this to match your environment 9 9 10 XAPIAN_CORE_REL_CSHARP=..\..\xapian-core 10 XAPIAN_CORE_REL_CSHARP=..\..\xapian-core-1.0.21 11 11 OUTLIBDIR=$(XAPIAN_CORE_REL_CSHARP)\win32\$(XAPIAN_DEBUG_OR_RELEASE)\libs 12 12 13 13 !INCLUDE $(XAPIAN_CORE_REL_CSHARP)\win32\config.mak -
win32_bindings_java-swig.mak
7 7 # Where the core is, relative to the Java Swig bindings 8 8 # Change this to match your environment 9 9 10 XAPIAN_CORE_REL_JAVA=..\..\xapian-core 10 XAPIAN_CORE_REL_JAVA=..\..\xapian-core-1.0.21 11 11 OUTLIBDIR=$(XAPIAN_CORE_REL_JAVA)\win32\$(XAPIAN_DEBUG_OR_RELEASE)\libs 12 12 13 13 !INCLUDE $(XAPIAN_CORE_REL_JAVA)\win32\config.mak -
win32_bindings_php.mak
7 7 8 8 # Where the core is, relative to the PHP bindings 9 9 # Change this to match your environment 10 XAPIAN_CORE_REL_PHP=..\..\xapian-core 10 XAPIAN_CORE_REL_PHP=..\..\xapian-core-1.0.21 11 11 12 12 OUTLIBDIR=$(XAPIAN_CORE_REL_PHP)\win32\$(XAPIAN_DEBUG_OR_RELEASE)\libs 13 13 -
win32_bindings_python.mak
9 9 # Where the core is, relative to the Python bindings 10 10 # Change this to match your environment 11 11 12 XAPIAN_CORE_REL_PYTHON=..\..\xapian-core 12 XAPIAN_CORE_REL_PYTHON=..\..\xapian-core-1.0.21 13 13 14 14 OUTLIBDIR=$(XAPIAN_CORE_REL_PYTHON)\win32\$(XAPIAN_DEBUG_OR_RELEASE)\libs 15 15 … … 51 51 52 52 PYTHON_PACKAGE=xapian 53 53 54 ALL : "$(OUTDIR)\_xapian$(PY_DEBUG_SUFFIX).pyd" "$(OUTDIR)\xapian.py" "$(OUTDIR)\smoketest.py" "$(OUTDIR)\pythontest.py" "$(OUTDIR)\testsuite.py" 54 ALL : "$(OUTDIR)\_xapian$(PY_DEBUG_SUFFIX).pyd" "$(OUTDIR)\xapian.py" "$(OUTDIR)\smoketest.py" "$(OUTDIR)\pythontest.py" "$(OUTDIR)\testsuite.py" "$(OUTDIR)\test_xapian_star.py" 55 55 56 56 CLEANLOCAL: 57 57 -@erase *.pdb … … 152 152 "$(OUTDIR)\testsuite.py" : ".\testsuite.py" 153 153 -copy $** "$(OUTDIR)\testsuite.py" 154 154 155 "$(OUTDIR)\test_xapian_star.py" : ".\test_xapian_star.py" 156 -copy $** "$(OUTDIR)\test_xapian_star.py" 155 157 # 156 158 # Rules 157 159 # -
win32_bindings_ruby.mak
7 7 8 8 # Where the core is, relative to the Ruby bindings 9 9 # Change this to match your environment 10 XAPIAN_CORE_REL_RUBY=..\..\xapian-core 10 XAPIAN_CORE_REL_RUBY=..\..\xapian-core-1.0.21 11 11 12 12 OUTLIBDIR=$(XAPIAN_CORE_REL_RUBY)\win32\$(XAPIAN_DEBUG_OR_RELEASE)\libs 13 13 -
win32_matcher.mak
26 26 $(INTDIR)\msetpostlist.obj\ 27 27 $(INTDIR)\multiandpostlist.obj\ 28 28 $(INTDIR)\multimatch.obj\ 29 $(INTDIR)\multixorpostlist.obj\ 29 30 $(INTDIR)\orpostlist.obj\ 30 31 $(INTDIR)\phrasepostlist.obj\ 31 32 $(INTDIR)\queryoptimiser.obj\ … … 37 38 $(INTDIR)\valuerangepostlist.obj\ 38 39 $(INTDIR)\valuegepostlist.obj\ 39 40 $(INTDIR)\weight.obj\ 40 $(INTDIR)\xorpostlist.obj\41 41 $(INTDIR)\remotesubmatch.obj 42 42 43 43 … … 53 53 $(INTDIR)\msetpostlist.cc\ 54 54 $(INTDIR)\multiandpostlist.cc\ 55 55 $(INTDIR)\multimatch.cc\ 56 $(INTDIR)\multixorpostlist.cc\ 56 57 $(INTDIR)\orpostlist.cc\ 57 58 $(INTDIR)\phrasepostlist.cc\ 58 59 $(INTDIR)\queryoptimiser.cc\ … … 64 65 $(INTDIR)\valuerangepostlist.cc\ 65 66 $(INTDIR)\valuegepostlist.cc\ 66 67 $(INTDIR)\weight.cc\ 67 $(INTDIR)\xorpostlist.cc\68 68 $(INTDIR)\remotesubmatch.cc 69 69 70 70