Project

General

Profile

Feature #538

Run-time features must be separated from build-time features

Added by Nikolai Saoukh over 11 years ago. Updated about 4 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
not-a-bug
Target version:
Start date:
Due date:
% Done:

100%

Estimated time:

Description

Right now _MSVC_VER, for example, is abused for run time envoronment AND build properties. There must be clear distinction between

run time (win32, win64, unix, wince, cygwin, mingw, plan9, vms, ...)

and

build time (Microsoft VC, Borland bcc, Watcom, Intel, gcc, ...)


Files

src.patch (8.5 KB) src.patch Redmine Admin, 14 Jan 2008 03:33

Related issues

Related to Exiv2 - Bug #710: Problems Compiling Exiv2 Under SGI IRIXClosed29 Jun 2010

Actions

History

#1

Updated by Nikolai Saoukh over 11 years ago

Well,
mingw is not run time environment ;-)

#2

Updated by Andreas Huggel over 11 years ago

Can you elaborate, maybe with an example from the code of what's wrong and how you propose to change this? I don't quite understand what the problem is. (_MSC_VER is a precompiler define, as such it is only used at compile-time.)

#3

Updated by Nikolai Saoukh over 11 years ago

I do not claim the bug (or feature request). Rather small lament.

I made, just for curiosity, (fruitless) attempt to compile exiv2lib with free borland compiler:

File types.hpp:

#ifdef _MSC_VER
typedef unsigned __int8 uint8_t;
typedef unsigned __int16 uint16_t;
typedef unsigned __int32 uint32_t;
typedef __int16 int16_t;
typedef __int32 int32_t;
#endif

File basicio.cpp:

#if defined WIN32 && !defined CYGWIN
// This is required on msvcrt before stat after writing to a file
commit(_fileno(fp));
#endif

#4

Updated by Nikolai Saoukh over 11 years ago

Small neat pick by borland bcc32 5.5.1 in attached src.patch. It just a few, I am not spent much time on that issue.

#5

Updated by Robin Mills about 4 years ago

  • Category changed from build to not-a-bug
  • Status changed from New to Closed
  • Assignee set to Robin Mills
  • Target version set to 0.26

We do not support the Borland compiler. Please see #710 for additional comments about the state of C++ compilers.

#6

Updated by Robin Mills about 4 years ago

  • % Done changed from 0 to 100

Also available in: Atom PDF