Menu

#150 MSVC 2005 project and support files, set-prefix code

0.60
closed
None
5
2016-12-11
2007-07-11
No

This package, when extracted over the official aspell-0.60.5 package, gives full Visual Studio projects with 12 compile targets:
aspell, libaspell (static) and libaspell (dynamic)
for platforms Win32 and Win64
in Debug and Release

A few support files has been added to allow the mutex-locked section to be enabled (USE_POSIX_MUTEX)

The old-forgotten set-prefix of the ENABLE_WIN32_RELOCATABLE feature has been reimplemented and tested.

Batch scripts to install aspell in the selected directory after compilation, and a small install system with batch files and support files to install any dictionary.

After installing this patch, all you need is Windows and Visual Studio 2005. No MinGW or Cygwin required.

The Visual Studio projects and the install script are in the new /msvc directory. I left the win32 directory untouched for those who wish to compile with MinGW.

For more informations, see msvc/msvc.readme

Sorry not to provide a real patch file, but since there is many new files in a new directory, it was easier to pack all in a zip.

Due to the few win32-native binary files included in the package, the file is a bit too large to be attached here, you can follow this link to get it (453kb):

http://www.niversoft.com/downloads/aspell-0.60.5-msvc-patch.zip

Discussion

  • Kevin Atkinson

    Kevin Atkinson - 2007-07-11

    Logged In: YES
    user_id=6591
    Originator: NO

    Can you please provide a patch for the files you modified. Preferably
    with "diff -u".

     
  • Nicolas Hatier

    Nicolas Hatier - 2007-07-11

    Modified files

     
  • Nicolas Hatier

    Nicolas Hatier - 2007-07-11

    Logged In: YES
    user_id=299896
    Originator: YES

    Diff is attached.

    Explanations of the mods:
    modules/speller/affix.hpp: MSVC does not support having two params with the same name, even in a header

    modules/speller/speller_impl.hpp: SensitiveCompare is defined as struct somewhere else, not as class, MSVC issues a warning

    common/possib_err.cpp: missing settings.h header defining snprintf as _snprintf (snprintf does not exists in MSVC. _snprintf does.)

    common/obj_stack.cpp: using a namespace that is not previously defined.

    common/file_util.cpp: missing the definition of asc_isalpha() - the call is enclosed in a #ifdef WIN32, normal you didn't notice the problem

    common/config.cpp: separate_list() - when the ":" characters were previously escaped and the list is split against non-escaped characters, the escape character (\) remains in the string. This breaks WIN32 paths, giving strings such as "C\:/temp". The code I added remove the escape character only if the string looks like a WIN32 path
    when the ":" characters weren't previously escaped, the string is separated there and WIN32 paths are broken ("c:/temp" -> "c","/temp"). The code I added avoids breaking strings when it looks like a WIN32 path.

    common/config.cpp: commit_all()
    I took the old set-prefix code I found in aspell-0.33 and adapted it there. The set-prefix is enabled by default when ENABLE_WIN32_RELOCATABLE is on, but I made a special case to not use set-prefix if --prefix is specified on the command line. Also, paths that are likely to be set on the command line are normalized ("\" replaced by "/")

    File Added: aspell-msvc.diff

     
  • Kevin Atkinson

    Kevin Atkinson - 2007-10-28
    • assigned_to: nobody --> kevina
     
  • Kevin Atkinson

    Kevin Atkinson - 2011-06-26
    • milestone: --> 0.60
     
  • Kevin Atkinson

    Kevin Atkinson - 2016-12-11

    This issue has moved to GitHub: https://github.com/GNUAspell/aspell/issues/415

     
  • Kevin Atkinson

    Kevin Atkinson - 2016-12-11
    • Status: open --> closed
     
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.