Fossil

Check-in [b065aff4b9]
Login

Check-in [b065aff4b9]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Further improve reporting of the compiler version information.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: b065aff4b94996282c40e4b1b705ada3ca290da2
User & Date: mistachkin 2014-02-15 03:03:31.010
Context
2014-02-15
03:49
Expand version reporting support to all compilers with in-tree makefiles. ... (check-in: 43dbc41226 user: mistachkin tags: trunk)
03:03
Further improve reporting of the compiler version information. ... (check-in: b065aff4b9 user: mistachkin tags: trunk)
01:44
Handle more corner cases when locating the title for wiki pages. ... (check-in: afc25dd4bc user: mistachkin tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to src/config.h.
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87



88
89




90






91
92
93



94
95
96
97
98
99
100
101
# include <signal.h>
# include <pwd.h>
#endif

/*
** Utility macro to wrap an argument with double quotes.
*/
#if !defined(COMPILER_NAME_STRINGIFY)
#  define COMPILER_NAME_STRINGIFY(x)  COMPILER_NAME_STRINGIFY1(x)
#  define COMPILER_NAME_STRINGIFY1(x) #x
#endif

/*
** Define the compiler variant, used to compile the project
*/
#if !defined(COMPILER_NAME)
#  if defined(__DMC__)
#    define COMPILER_NAME "dmc"
#  elif defined(__POCC__)
#    if defined(_M_X64)
#      define COMPILER_NAME "pellesc64"
#    else
#      define COMPILER_NAME "pellesc32"
#    endif
#  elif defined(_MSC_VER)



#    define COMPILER_NAME "msc-" COMPILER_NAME_STRINGIFY(_MSC_VER)
#  elif defined(__MINGW32__)




#    define COMPILER_NAME "mingw32-" COMPILER_NAME_STRINGIFY(__MINGW32_VERSION)






#  elif defined(_WIN32)
#    define COMPILER_NAME "win32"
#  elif defined(__GNUC__)



#    define COMPILER_NAME "gcc-" __VERSION__
#  else
#    define COMPILER_NAME "unknown"
#  endif
#endif

#if !defined(_RC_COMPILE_) && !defined(SQLITE_AMALGAMATION)








|
|
|















>
>
>
|

>
>
>
>
|
>
>
>
>
>
>



>
>
>
|







63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
# include <signal.h>
# include <pwd.h>
#endif

/*
** Utility macro to wrap an argument with double quotes.
*/
#if !defined(COMPILER_STRINGIFY)
#  define COMPILER_STRINGIFY(x)  COMPILER_STRINGIFY1(x)
#  define COMPILER_STRINGIFY1(x) #x
#endif

/*
** Define the compiler variant, used to compile the project
*/
#if !defined(COMPILER_NAME)
#  if defined(__DMC__)
#    define COMPILER_NAME "dmc"
#  elif defined(__POCC__)
#    if defined(_M_X64)
#      define COMPILER_NAME "pellesc64"
#    else
#      define COMPILER_NAME "pellesc32"
#    endif
#  elif defined(_MSC_VER)
#    if !defined(COMPILER_VERSION)
#      define COMPILER_VERSION COMPILER_STRINGIFY(_MSC_VER)
#    endif
#    define COMPILER_NAME "msc-" COMPILER_VERSION
#  elif defined(__MINGW32__)
#    if defined(__GNUC__) && defined(__VERSION__)
#      if !defined(COMPILER_VERSION)
#        define COMPILER_VERSION COMPILER_STRINGIFY(__MINGW32_VERSION) "-gcc-" __VERSION__
#      endif
#      define COMPILER_NAME "mingw32-" COMPILER_VERSION
#    else
#      if !defined(COMPILER_VERSION)
#        define COMPILER_VERSION COMPILER_STRINGIFY(__MINGW32_VERSION)
#      endif
#      define COMPILER_NAME "mingw32-" COMPILER_VERSION
#    endif
#  elif defined(_WIN32)
#    define COMPILER_NAME "win32"
#  elif defined(__GNUC__)
#    if !defined(COMPILER_VERSION)
#      define COMPILER_VERSION __VERSION__
#    endif
#    define COMPILER_NAME "gcc-" COMPILER_VERSION
#  else
#    define COMPILER_NAME "unknown"
#  endif
#endif

#if !defined(_RC_COMPILE_) && !defined(SQLITE_AMALGAMATION)

Changes to src/json.c.
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
** Here's how command/page dispatching works: json_page_top() (in HTTP mode) or
** json_cmd_top() (in CLI mode) catch the "json" path/command. Those functions then
** dispatch to a JSON-mode-specific command/page handler with the type fossil_json_f().
** See the API docs for that typedef (below) for the semantics of the callbacks.
**
**
*/
#include "config.h"
#include "VERSION.h"
#include "json.h"
#include <assert.h>
#include <time.h>

#if INTERFACE
#include "json_detail.h" /* workaround for apparent enum limitation in makeheaders */
#endif







|
|







28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
** Here's how command/page dispatching works: json_page_top() (in HTTP mode) or
** json_cmd_top() (in CLI mode) catch the "json" path/command. Those functions then
** dispatch to a JSON-mode-specific command/page handler with the type fossil_json_f().
** See the API docs for that typedef (below) for the semantics of the callbacks.
**
**
*/
#include "VERSION.h"
#include "config.h"
#include "json.h"
#include <assert.h>
#include <time.h>

#if INTERFACE
#include "json_detail.h" /* workaround for apparent enum limitation in makeheaders */
#endif
Changes to src/main.c.
14
15
16
17
18
19
20

21
22
23
24
25
26
27
**   http://www.hwaci.com/drh/
**
*******************************************************************************
**
** This module codes the main() procedure that runs first when the
** program is invoked.
*/

#include "config.h"
#include "main.h"
#include <string.h>
#include <time.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/stat.h>







>







14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
**   http://www.hwaci.com/drh/
**
*******************************************************************************
**
** This module codes the main() procedure that runs first when the
** program is invoked.
*/
#include "VERSION.h"
#include "config.h"
#include "main.h"
#include <string.h>
#include <time.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/stat.h>
Changes to src/mkversion.c.
67
68
69
70
71
72
73





74
75
        z[0] = '\0';
        break;
      }
    }
    printf("#define RELEASE_RESOURCE_VERSION %s", vx);
    while( d<3 ){ printf(",0"); d++; }
    printf("\n");





    return 0;
}







>
>
>
>
>


67
68
69
70
71
72
73
74
75
76
77
78
79
80
        z[0] = '\0';
        break;
      }
    }
    printf("#define RELEASE_RESOURCE_VERSION %s", vx);
    while( d<3 ){ printf(",0"); d++; }
    printf("\n");
#if defined(_MSC_VER)
    d = _MSC_VER / 100;
    x = _MSC_VER % 100;
    printf("#define COMPILER_VERSION \"%d.%02d\"\n", d, x);
#endif
    return 0;
}
Changes to src/stat.c.
14
15
16
17
18
19
20

21
22
23
24
25
26
27
**   http://www.hwaci.com/drh/
**
*******************************************************************************
**
** This file contains code to implement the stat web page
**
*/

#include "config.h"
#include <string.h>
#include "stat.h"

/*
** For a sufficiently large integer, provide an alternative
** representation as MB or GB or TB.







>







14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
**   http://www.hwaci.com/drh/
**
*******************************************************************************
**
** This file contains code to implement the stat web page
**
*/
#include "VERSION.h"
#include "config.h"
#include <string.h>
#include "stat.h"

/*
** For a sufficiently large integer, provide an alternative
** representation as MB or GB or TB.
Changes to src/style.c.
14
15
16
17
18
19
20

21
22
23
24
25
26
27
**   http://www.hwaci.com/drh/
**
*******************************************************************************
**
** This file contains code to implement the basic web page look and feel.
**
*/

#include "config.h"
#include "style.h"


/*
** Elements of the submenu are collected into the following
** structure and displayed below the main menu by style_header().







>







14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
**   http://www.hwaci.com/drh/
**
*******************************************************************************
**
** This file contains code to implement the basic web page look and feel.
**
*/
#include "VERSION.h"
#include "config.h"
#include "style.h"


/*
** Elements of the submenu are collected into the following
** structure and displayed below the main menu by style_header().