This is the mail archive of the gsl-discuss@sourceware.org mailing list for the GSL project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Small Changes Needed for Windows Build with Visual Studio


Dear Rhys, Patrick and colleagues,

As you may know, I provide build files that allow GSL to be built with
the Microsoft and the Intel compilers on Windows.   To do this requires
only a small number of changes to the GSL source code as follows:

In ieee-utils/env.c:

void
gsl_ieee_env_setup (void)
{
  const char * p = getenv("GSL_IEEE_MODE") ;

  int precision = 0, rounding = 0, exception_mask = 0 ;

  int comma = 0 ;

#if defined( _MSC_VER )    /* BRG */

    extern const char *fp_env_string;
    p = fp_env_string;

#else

  if (p == 0)  /* GSL_IEEE_MODE environment variable is not set */
    return ;

  if (*p == '\0') /* GSL_IEEE_MODE environment variable is empty */
    return ;

#endif
  ...

and early in matrix/test.c and vector/test.c:

#if defined( _MSC_VER ) && defined( GSL_DLL )    /* BRG */
#undef inline
#define inline __forceinline
#endif

With these changes it is possible to build GSL on Windows using the
Microsoft and Intel compilers with no
further source code changes (I do also add one file to read the floating
point control word). 

Although I recognise that GSL on WIndows is not a priority, there is
nevertheless a substantial user community on this platform, some of whom
do make ongoing contributions to GSL. 

Whilst writing I would like to thank Rhys for helping me get bzr on
windows working.  The effort has paid off since it is now working very well.
 
   with my regards,

        Brian Gladman


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]