[Xapian-tickets] [Xapian] #556: MSVC x64 1.3.0 changes

Xapian nobody at xapian.org
Mon Dec 28 23:16:58 GMT 2015

#556: MSVC x64 1.3.0 changes
 Reporter:  greg0t          |             Owner:  charliejuggler
     Type:  defect          |            Status:  closed
 Priority:  normal          |         Milestone:  1.3.4
Component:  MSVC makefiles  |           Version:  SVN trunk
 Severity:  normal          |        Resolution:  fixed
 Keywords:                  |        Blocked By:
 Blocking:                  |  Operating System:  Microsoft Windows
Changes (by olly):

 * status:  new => closed
 * resolution:   => fixed
 * milestone:  1.4.x => 1.3.4


 Charlie's no longer maintaining these makefiles.  I don't use this
 compiler myself, but I've attempted to apply the changes, not helped by
 the rampant whitespace changes the patch includes.

 Rather than commenting out all the uses of `$(MANIFEST)`, I added a print
 and no-op version of `$(MANIFEST)` - untested I'm afraid.

 The patch removed all the `nmake [...] HEADERS` commands, with no
 explanation as to why - AIUI, these are needed for the dependency
 generation to work, so I've added a way to disable these by setting a
 single variable (also untested).

 Just adding the version suffix to `XAPIAN_BINDINGS`, etc seems a bad idea
 - it forces an update for every release, and also breaks building from a
 VCS checkout.  Instead I've added a `VERSION_SUFFIX` variable which can be
 set so there's just one place to update (and guess what, untested).

 Changing hard-coded paths to installed tools doesn't seem a useful change
 - it seems these are going to vary for almost everyone, so hard-coding
 them at all seems a really bad idea.  Surely people must put them on their
 `PATH` in reality?

 I'm unconvinced that these makefiles are a viable long term approach.
 They've always been a maintenance pain, due to duplicating much of the
 information encoded in the standard build system, and they've had no
 active maintainer for several years now.  I'm pretty certain they don't
 work with current git master even after these updates, but that's best
 handled in a new ticket I think.

 My preference would be that MSVC builds are supported via the standard
 build system.  That will require a bit of work by a developer using MSVC,
 but so would getting these makefiles working again, and at least once the
 standard build system supports MSVC we'll be free of the tedious job of
 having to manually update lists of source files, binaries to build, etc
 here as well as in the standard build system.

 That said, I'm OK with merging clean patches to these makefiles, but
 please don't mix whitespace changes and functional changes, as it makes it
 harder to see what the patch actually changes.  I've done a mass
 whitespace cleanup, so if it was your editor messing with the whitespace,
 hopefully it won't now.

Ticket URL: <http://trac.xapian.org/ticket/556#comment:5>
Xapian <http://xapian.org/>

More information about the Xapian-tickets mailing list