annotate oct-conf-post.in.h @ 31191:bb9d776eafac stable

Fix wrong color in PDF printout of some latex strings (bug #62884) * octave-svgconvert (draw): For "rect" elements only set brush color if necessary and eventually restore to previous color.
author Pantxo Diribarne <pantxo.diribarne@gmail.com>
date Sun, 14 Aug 2022 18:24:07 +0200
parents 243b51ec9ff0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
27923
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
1 ////////////////////////////////////////////////////////////////////////
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
2 //
30564
796f54d4ddbf update Octave Project Developers copyright for the new year
John W. Eaton <jwe@octave.org>
parents: 30319
diff changeset
3 // Copyright (C) 1993-2022 The Octave Project Developers
27923
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
4 //
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
5 // See the file COPYRIGHT.md in the top-level directory of this
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
6 // distribution or <https://octave.org/copyright/>.
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
7 //
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
8 // This file is part of Octave.
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
9 //
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
10 // Octave is free software: you can redistribute it and/or modify it
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
11 // under the terms of the GNU General Public License as published by
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
12 // the Free Software Foundation, either version 3 of the License, or
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
13 // (at your option) any later version.
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
14 //
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
15 // Octave is distributed in the hope that it will be useful, but
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
16 // WITHOUT ANY WARRANTY; without even the implied warranty of
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
18 // GNU General Public License for more details.
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
19 //
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
20 // You should have received a copy of the GNU General Public License
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
21 // along with Octave; see the file COPYING. If not, see
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
22 // <https://www.gnu.org/licenses/>.
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
23 //
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
24 ////////////////////////////////////////////////////////////////////////
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
25
29953
e35442c969f5 provide macros for beginning and ending octave namespace
John W. Eaton <jwe@octave.org>
parents: 29417
diff changeset
26 # define OCTAVE_NAMESPACE_BEGIN namespace octave {
e35442c969f5 provide macros for beginning and ending octave namespace
John W. Eaton <jwe@octave.org>
parents: 29417
diff changeset
27 # define OCTAVE_NAMESPACE_END }
e35442c969f5 provide macros for beginning and ending octave namespace
John W. Eaton <jwe@octave.org>
parents: 29417
diff changeset
28
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
29 /* The C++ standard is evolving to allow attribute hints in a
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
30 compiler-independent manner. In C++ 2011 support for noreturn was
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
31 added. In C++ 2014 support for deprecated was added. The Octave
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
32 code base has been future-proofed by using macros of the form
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
33 OCTAVE_ATTRIBUTE_NAME in place of vendor specific attribute
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
34 mechanisms. As compilers evolve, the underlying implementation can
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
35 be changed with the macro definitions below. FIXME: Update macros
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
36 to use C++ standard attribute syntax when Octave moves to C++ 2011
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
37 standard. */
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
38
21040
3e7cfee5f786 maint: Rename attributes GCC_ATTR_XXX to OCTAVE_XXX.
Rik <rik@octave.org>
parents: 20436
diff changeset
39 #if defined (__GNUC__)
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
40 /* The following attributes are used with gcc and clang compilers. */
21325
64be7d374f86 Make OCTAVE_DEPRECATED macro compatible with older gcc
Mike Miller <mtmiller@octave.org>
parents: 21240
diff changeset
41 # if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5)
23615
be7b884ac589 use version number in OCTAVE_DEPRECATED macro
John W. Eaton <jwe@octave.org>
parents: 23220
diff changeset
42 # define OCTAVE_DEPRECATED(ver, msg) __attribute__ ((__deprecated__ ("[" #ver "]: " msg)))
21325
64be7d374f86 Make OCTAVE_DEPRECATED macro compatible with older gcc
Mike Miller <mtmiller@octave.org>
parents: 21240
diff changeset
43 # else
23615
be7b884ac589 use version number in OCTAVE_DEPRECATED macro
John W. Eaton <jwe@octave.org>
parents: 23220
diff changeset
44 # define OCTAVE_DEPRECATED(ver, msg) __attribute__ ((__deprecated__))
21325
64be7d374f86 Make OCTAVE_DEPRECATED macro compatible with older gcc
Mike Miller <mtmiller@octave.org>
parents: 21240
diff changeset
45 # endif
21229
a83e7a384ee0 create and install a subset of config.h in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21228
diff changeset
46 # define HAVE_OCTAVE_DEPRECATED_ATTR 1
21040
3e7cfee5f786 maint: Rename attributes GCC_ATTR_XXX to OCTAVE_XXX.
Rik <rik@octave.org>
parents: 20436
diff changeset
47
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
48 # define OCTAVE_NORETURN __attribute__ ((__noreturn__))
21229
a83e7a384ee0 create and install a subset of config.h in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21228
diff changeset
49 # define HAVE_OCTAVE_NORETURN_ATTR 1
21040
3e7cfee5f786 maint: Rename attributes GCC_ATTR_XXX to OCTAVE_XXX.
Rik <rik@octave.org>
parents: 20436
diff changeset
50
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
51 # define OCTAVE_UNUSED __attribute__ ((__unused__))
21229
a83e7a384ee0 create and install a subset of config.h in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21228
diff changeset
52 # define HAVE_OCTAVE_UNUSED_ATTR 1
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
53 #else
23615
be7b884ac589 use version number in OCTAVE_DEPRECATED macro
John W. Eaton <jwe@octave.org>
parents: 23220
diff changeset
54 # define OCTAVE_DEPRECATED(ver, msg)
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
55 # define OCTAVE_NORETURN
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
56 # define OCTAVE_UNUSED
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
57 #endif
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
58
26164
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
59 #if defined (__MINGW32__)
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
60 /* MinGW requires special handling due to different format specifiers
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
61 * on different platforms. The macro __MINGW_PRINTF_FORMAT maps to
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
62 * either gnu_printf or ms_printf depending on where we are compiling
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
63 * to avoid warnings on format specifiers that are legal.
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
64 * See: https://bugzilla.mozilla.org/show_bug.cgi?id=1331349 */
27737
527e25f7ee38 Add missing header for compile time format check for MinGW (bug #57270).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27486
diff changeset
65 # if defined (__cplusplus)
527e25f7ee38 Add missing header for compile time format check for MinGW (bug #57270).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27486
diff changeset
66 # include <cstdio>
527e25f7ee38 Add missing header for compile time format check for MinGW (bug #57270).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27486
diff changeset
67 # else
527e25f7ee38 Add missing header for compile time format check for MinGW (bug #57270).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27486
diff changeset
68 # include <stdio.h>
527e25f7ee38 Add missing header for compile time format check for MinGW (bug #57270).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27486
diff changeset
69 # endif
527e25f7ee38 Add missing header for compile time format check for MinGW (bug #57270).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27486
diff changeset
70
26164
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
71 # define OCTAVE_FORMAT_PRINTF(stringIndex, firstToCheck) \
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
72 __attribute__ ((format (__MINGW_PRINTF_FORMAT, stringIndex, firstToCheck)))
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
73
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
74 # define HAVE_OCTAVE_FORMAT_PRINTF_ATTR 1
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
75 #elif defined (__GNUC__)
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
76 /* The following attributes are used with gcc and clang compilers. */
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
77 # define OCTAVE_FORMAT_PRINTF(index, first) \
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
78 __attribute__ ((__format__(printf, index, first)))
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
79
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
80 # define HAVE_OCTAVE_FORMAT_PRINTF_ATTR 1
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
81 #else
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
82 # define OCTAVE_FORMAT_PRINTF(index, first)
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
83
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
84 /* # undef HAVE_OCTAVE_FORMAT_PRINTF_ATTR */
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
85 #endif
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
86
23826
d69021d58a61 avoid fallthrough warnings
John W. Eaton <jwe@octave.org>
parents: 23696
diff changeset
87 #if ! defined (OCTAVE_FALLTHROUGH)
d69021d58a61 avoid fallthrough warnings
John W. Eaton <jwe@octave.org>
parents: 23696
diff changeset
88 # if defined (__cplusplus) && __cplusplus > 201402L
d69021d58a61 avoid fallthrough warnings
John W. Eaton <jwe@octave.org>
parents: 23696
diff changeset
89 # define OCTAVE_FALLTHROUGH [[fallthrough]]
d69021d58a61 avoid fallthrough warnings
John W. Eaton <jwe@octave.org>
parents: 23696
diff changeset
90 # elif defined (__GNUC__) && __GNUC__ < 7
d69021d58a61 avoid fallthrough warnings
John W. Eaton <jwe@octave.org>
parents: 23696
diff changeset
91 # define OCTAVE_FALLTHROUGH ((void) 0)
d69021d58a61 avoid fallthrough warnings
John W. Eaton <jwe@octave.org>
parents: 23696
diff changeset
92 # else
d69021d58a61 avoid fallthrough warnings
John W. Eaton <jwe@octave.org>
parents: 23696
diff changeset
93 # define OCTAVE_FALLTHROUGH __attribute__ ((__fallthrough__))
d69021d58a61 avoid fallthrough warnings
John W. Eaton <jwe@octave.org>
parents: 23696
diff changeset
94 # endif
d69021d58a61 avoid fallthrough warnings
John W. Eaton <jwe@octave.org>
parents: 23696
diff changeset
95 #endif
d69021d58a61 avoid fallthrough warnings
John W. Eaton <jwe@octave.org>
parents: 23696
diff changeset
96
29954
4c88a452519c rename OCTAVE_USE_DEPRECATED_FUNCTIONS macro and attempt to make it work
John W. Eaton <jwe@octave.org>
parents: 29953
diff changeset
97 /* This macro is intended to be used only to enable inline functions or
4c88a452519c rename OCTAVE_USE_DEPRECATED_FUNCTIONS macro and attempt to make it work
John W. Eaton <jwe@octave.org>
parents: 29953
diff changeset
98 typedefs that provide access to symbols that have been moved to the
4c88a452519c rename OCTAVE_USE_DEPRECATED_FUNCTIONS macro and attempt to make it work
John W. Eaton <jwe@octave.org>
parents: 29953
diff changeset
99 octave namespace. It may be temporarily useful to define this macro
4c88a452519c rename OCTAVE_USE_DEPRECATED_FUNCTIONS macro and attempt to make it work
John W. Eaton <jwe@octave.org>
parents: 29953
diff changeset
100 when moving a symbol to the octave namespace but it should not be
4c88a452519c rename OCTAVE_USE_DEPRECATED_FUNCTIONS macro and attempt to make it work
John W. Eaton <jwe@octave.org>
parents: 29953
diff changeset
101 defined when building released versions of Octave, as building those
4c88a452519c rename OCTAVE_USE_DEPRECATED_FUNCTIONS macro and attempt to make it work
John W. Eaton <jwe@octave.org>
parents: 29953
diff changeset
102 should not require deprecated symbols. It is defined in
4c88a452519c rename OCTAVE_USE_DEPRECATED_FUNCTIONS macro and attempt to make it work
John W. Eaton <jwe@octave.org>
parents: 29953
diff changeset
103 octave-config.h, so users of Octave may continue to access symbols
4c88a452519c rename OCTAVE_USE_DEPRECATED_FUNCTIONS macro and attempt to make it work
John W. Eaton <jwe@octave.org>
parents: 29953
diff changeset
104 using the deprecated names. */
4c88a452519c rename OCTAVE_USE_DEPRECATED_FUNCTIONS macro and attempt to make it work
John W. Eaton <jwe@octave.org>
parents: 29953
diff changeset
105 /* #undef OCTAVE_PROVIDE_DEPRECATED_SYMBOLS */
21726
f05a00e611ff use namespace for glob and fnmatch wrapper functions
John W. Eaton <jwe@octave.org>
parents: 21691
diff changeset
106
21691
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21325
diff changeset
107 #if defined (__cplusplus)
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21325
diff changeset
108 template <typename T>
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21325
diff changeset
109 static inline void
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21325
diff changeset
110 octave_unused_parameter (const T&)
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21325
diff changeset
111 { }
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21325
diff changeset
112 #else
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21325
diff changeset
113 # define octave_unused_parameter(param) (void) param;
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21325
diff changeset
114 #endif
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21325
diff changeset
115
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
116 #if ! defined (HAVE_DEV_T)
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
117 typedef short dev_t;
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
118 #endif
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
119
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
120 #if ! defined (HAVE_INO_T)
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
121 typedef unsigned long ino_t;
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
122 #endif
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
123
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
124 #if defined (_MSC_VER)
21213
f7d1050b9b53 maint: Clean up various usages of #ifdef.
Rik <rik@octave.org>
parents: 21189
diff changeset
125 # define __WIN32__ 1
f7d1050b9b53 maint: Clean up various usages of #ifdef.
Rik <rik@octave.org>
parents: 21189
diff changeset
126 # define WIN32 1
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
127 /* missing parameters in macros */
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
128 # pragma warning (disable: 4003)
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
129 /* missing implementations in template instantiation */
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
130 # pragma warning (disable: 4996)
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
131 /* deprecated function names (FIXME: ???) */
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
132 # pragma warning (disable: 4661)
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
133 #endif
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
134
22012
22a272df4ac4 restore API macros to oct-conf-post.h removed in cset 6bce4d23af6b
John W. Eaton <jwe@octave.org>
parents: 21989
diff changeset
135 #if defined (__APPLE__) && defined (__MACH__)
22a272df4ac4 restore API macros to oct-conf-post.h removed in cset 6bce4d23af6b
John W. Eaton <jwe@octave.org>
parents: 21989
diff changeset
136 # define OCTAVE_USE_OS_X_API 1
22a272df4ac4 restore API macros to oct-conf-post.h removed in cset 6bce4d23af6b
John W. Eaton <jwe@octave.org>
parents: 21989
diff changeset
137 #endif
22a272df4ac4 restore API macros to oct-conf-post.h removed in cset 6bce4d23af6b
John W. Eaton <jwe@octave.org>
parents: 21989
diff changeset
138
26976
eebf4b67f012 Silence warning on Mac platforms about deprecated OpenGL API (bug #55991).
Rik <rik@octave.org>
parents: 26376
diff changeset
139 /* Silence deprecated API warning from Apple OS > 10.14 */
eebf4b67f012 Silence warning on Mac platforms about deprecated OpenGL API (bug #55991).
Rik <rik@octave.org>
parents: 26376
diff changeset
140 #if defined (__APPLE__) && defined (__MACH__) && defined (HAVE_OPENGL)
eebf4b67f012 Silence warning on Mac platforms about deprecated OpenGL API (bug #55991).
Rik <rik@octave.org>
parents: 26376
diff changeset
141 # define GL_SILENCE_DEPRECATION 1
eebf4b67f012 Silence warning on Mac platforms about deprecated OpenGL API (bug #55991).
Rik <rik@octave.org>
parents: 26376
diff changeset
142 #endif
eebf4b67f012 Silence warning on Mac platforms about deprecated OpenGL API (bug #55991).
Rik <rik@octave.org>
parents: 26376
diff changeset
143
22012
22a272df4ac4 restore API macros to oct-conf-post.h removed in cset 6bce4d23af6b
John W. Eaton <jwe@octave.org>
parents: 21989
diff changeset
144 /* Define to 1 if we expect to have <windows.h>, Sleep, etc. */
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
145 #if defined (__WIN32__) && ! defined (__CYGWIN__)
22012
22a272df4ac4 restore API macros to oct-conf-post.h removed in cset 6bce4d23af6b
John W. Eaton <jwe@octave.org>
parents: 21989
diff changeset
146 # define OCTAVE_USE_WINDOWS_API 1
22a272df4ac4 restore API macros to oct-conf-post.h removed in cset 6bce4d23af6b
John W. Eaton <jwe@octave.org>
parents: 21989
diff changeset
147 #endif
22a272df4ac4 restore API macros to oct-conf-post.h removed in cset 6bce4d23af6b
John W. Eaton <jwe@octave.org>
parents: 21989
diff changeset
148
22a272df4ac4 restore API macros to oct-conf-post.h removed in cset 6bce4d23af6b
John W. Eaton <jwe@octave.org>
parents: 21989
diff changeset
149 #if defined (OCTAVE_USE_WINDOWS_API)
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
150 # define OCTAVE_HAVE_WINDOWS_FILESYSTEM 1
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
151 #elif defined (__CYGWIN__)
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
152 # define OCTAVE_HAVE_WINDOWS_FILESYSTEM 1
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
153 # define OCTAVE_HAVE_POSIX_FILESYSTEM 1
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
154 #else
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
155 # define OCTAVE_HAVE_POSIX_FILESYSTEM 1
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
156 #endif
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
157
30319
a12b5a32f94b oct-conf-post.in.h: Include header that defines __MSVCRT_VERSION__.
Markus Mützel <markus.muetzel@gmx.de>
parents: 30309
diff changeset
158 #if defined (__MINGW32__)
a12b5a32f94b oct-conf-post.in.h: Include header that defines __MSVCRT_VERSION__.
Markus Mützel <markus.muetzel@gmx.de>
parents: 30309
diff changeset
159 /* We need to include this header or __MSVCRT_VERSION__ might not be defined
a12b5a32f94b oct-conf-post.in.h: Include header that defines __MSVCRT_VERSION__.
Markus Mützel <markus.muetzel@gmx.de>
parents: 30309
diff changeset
160 to the correct value */
a12b5a32f94b oct-conf-post.in.h: Include header that defines __MSVCRT_VERSION__.
Markus Mützel <markus.muetzel@gmx.de>
parents: 30309
diff changeset
161 # include <_mingw.h>
a12b5a32f94b oct-conf-post.in.h: Include header that defines __MSVCRT_VERSION__.
Markus Mützel <markus.muetzel@gmx.de>
parents: 30309
diff changeset
162 #endif
30309
bf619727bf6c interpreter: Use UTF-8 locale on Windows if possible.
Markus Mützel <markus.muetzel@gmx.de>
parents: 29967
diff changeset
163 /* assume that Windows will support UTF-8 locales when using UCRT */
bf619727bf6c interpreter: Use UTF-8 locale on Windows if possible.
Markus Mützel <markus.muetzel@gmx.de>
parents: 29967
diff changeset
164 #if defined (__MSVCRT_VERSION__) && __MSVCRT_VERSION__ == 0x0E00
30319
a12b5a32f94b oct-conf-post.in.h: Include header that defines __MSVCRT_VERSION__.
Markus Mützel <markus.muetzel@gmx.de>
parents: 30309
diff changeset
165 # define OCTAVE_HAVE_WINDOWS_UTF8_LOCALE 1
30309
bf619727bf6c interpreter: Use UTF-8 locale on Windows if possible.
Markus Mützel <markus.muetzel@gmx.de>
parents: 29967
diff changeset
166 #endif
bf619727bf6c interpreter: Use UTF-8 locale on Windows if possible.
Markus Mützel <markus.muetzel@gmx.de>
parents: 29967
diff changeset
167
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
168 /* sigsetjmp is a macro, not a function. */
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
169 #if defined (sigsetjmp) && defined (HAVE_SIGLONGJMP)
21213
f7d1050b9b53 maint: Clean up various usages of #ifdef.
Rik <rik@octave.org>
parents: 21189
diff changeset
170 # define OCTAVE_HAVE_SIG_JUMP 1
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
171 #endif
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
172
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
173 /* To be able to use long doubles for 64-bit mixed arithmetics, we need
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
174 them at least 80 bits wide and we need roundl declared in math.h.
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
175 FIXME: Maybe substitute this by a more precise check in the future? */
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
176 #if (SIZEOF_LONG_DOUBLE >= 10) && defined (HAVE_ROUNDL)
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
177 # define OCTAVE_INT_USE_LONG_DOUBLE
22197
e43d83253e28 refill multi-line macro definitions
John W. Eaton <jwe@octave.org>
parents: 22143
diff changeset
178 # if (SIZEOF_LONG_DOUBLE < 16 \
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
179 && (defined __i386__ || defined __x86_64__) && defined __GNUC__)
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
180 # define OCTAVE_ENSURE_LONG_DOUBLE_OPERATIONS_ARE_NOT_TRUNCATED 1
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
181 # endif
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
182 #endif
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
183
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
184 /* oct-dlldefs.h */
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
185
29313
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
186 #if defined (OCTAVE_ENABLE_LIB_VISIBILITY_FLAGS)
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
187 # if defined (_WIN32) || defined (__CYGWIN__)
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
188 # if defined (__GNUC__)
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
189 /* GCC */
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
190 # define OCTAVE_EXPORT __attribute__ ((dllexport))
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
191 # define OCTAVE_IMPORT __attribute__ ((dllimport))
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
192 # else
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
193 /* MSVC */
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
194 # define OCTAVE_EXPORT __declspec(dllexport)
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
195 # define OCTAVE_IMPORT __declspec(dllimport)
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
196 # endif
29239
f6058c6e1b18 Visibility: Compile with visibility attributes for Windows (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29238
diff changeset
197 # else
29313
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
198 /* All other platforms. */
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
199 # define OCTAVE_EXPORT __attribute__ ((visibility ("default")))
6dea3b384846 Optionally disable building libraries with visibility attributes (bug #59820).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29239
diff changeset
200 # define OCTAVE_IMPORT
29239
f6058c6e1b18 Visibility: Compile with visibility attributes for Windows (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29238
diff changeset
201 # endif
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
202 #else
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
203 # define OCTAVE_EXPORT
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
204 # define OCTAVE_IMPORT
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
205 #endif
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
206
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
207 /* API macro for liboctave */
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
208 #if defined (OCTAVE_DLL)
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
209 # define OCTAVE_API OCTAVE_EXPORT
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
210 #else
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
211 # define OCTAVE_API OCTAVE_IMPORT
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
212 #endif
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
213
29224
cc4a4df4e32f Add API tag for Array class that is exported from liboctave and liboctinterp (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27923
diff changeset
214 /* API macro for liboctinterp */
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
215 #if defined (OCTINTERP_DLL)
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
216 # define OCTINTERP_API OCTAVE_EXPORT
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
217 #else
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
218 # define OCTINTERP_API OCTAVE_IMPORT
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
219 #endif
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
220
29224
cc4a4df4e32f Add API tag for Array class that is exported from liboctave and liboctinterp (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27923
diff changeset
221 /* API macro for the Array class in liboctave and liboctinterp */
cc4a4df4e32f Add API tag for Array class that is exported from liboctave and liboctinterp (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27923
diff changeset
222 #if (defined (OCTAVE_DLL) || defined (OCTINTERP_DLL))
cc4a4df4e32f Add API tag for Array class that is exported from liboctave and liboctinterp (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27923
diff changeset
223 # define OCTARRAY_API OCTAVE_EXPORT
cc4a4df4e32f Add API tag for Array class that is exported from liboctave and liboctinterp (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27923
diff changeset
224 #else
cc4a4df4e32f Add API tag for Array class that is exported from liboctave and liboctinterp (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27923
diff changeset
225 # define OCTARRAY_API OCTAVE_IMPORT
cc4a4df4e32f Add API tag for Array class that is exported from liboctave and liboctinterp (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27923
diff changeset
226 #endif
cc4a4df4e32f Add API tag for Array class that is exported from liboctave and liboctinterp (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents: 27923
diff changeset
227
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
228 /* API macro for libinterp/graphics */
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
229 #if defined (OCTGRAPHICS_DLL)
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
230 # define OCTGRAPHICS_API OCTAVE_EXPORT
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
231 #else
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
232 # define OCTGRAPHICS_API OCTAVE_IMPORT
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
233 #endif
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
234
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
235 /* API macro for libgui */
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
236 #if defined (OCTGUI_DLL)
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
237 # define OCTGUI_API OCTAVE_EXPORT
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
238 #else
21189
47765afaf131 style fixes for oct-conf-post.in.h
John W. Eaton <jwe@octave.org>
parents: 21188
diff changeset
239 # define OCTGUI_API OCTAVE_IMPORT
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
240 #endif
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
241
21131
54527108599a store more --enable-FEATURE info in octave_config_info
John W. Eaton <jwe@octave.org>
parents: 21092
diff changeset
242 /* Backward compatibility */
54527108599a store more --enable-FEATURE info in octave_config_info
John W. Eaton <jwe@octave.org>
parents: 21092
diff changeset
243
21229
a83e7a384ee0 create and install a subset of config.h in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21228
diff changeset
244 #if defined (OCTAVE_ENABLE_64)
21213
f7d1050b9b53 maint: Clean up various usages of #ifdef.
Rik <rik@octave.org>
parents: 21189
diff changeset
245 # define USE_64_BIT_IDX_T 1
21131
54527108599a store more --enable-FEATURE info in octave_config_info
John W. Eaton <jwe@octave.org>
parents: 21092
diff changeset
246 #endif
54527108599a store more --enable-FEATURE info in octave_config_info
John W. Eaton <jwe@octave.org>
parents: 21092
diff changeset
247
21229
a83e7a384ee0 create and install a subset of config.h in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21228
diff changeset
248 #if defined (OCTAVE_ENABLE_OPENMP)
21213
f7d1050b9b53 maint: Clean up various usages of #ifdef.
Rik <rik@octave.org>
parents: 21189
diff changeset
249 # define HAVE_OPENMP 1
21131
54527108599a store more --enable-FEATURE info in octave_config_info
John W. Eaton <jwe@octave.org>
parents: 21092
diff changeset
250 #endif
54527108599a store more --enable-FEATURE info in octave_config_info
John W. Eaton <jwe@octave.org>
parents: 21092
diff changeset
251
21229
a83e7a384ee0 create and install a subset of config.h in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21228
diff changeset
252 #if defined (OCTAVE_ENABLE_FLOAT_TRUNCATE)
21225
19a619ac9508 rename FLOAT_TRUNCATE to OCTAVE_FLOAT_TRUNCATE
John W. Eaton <jwe@octave.org>
parents: 21213
diff changeset
253 # define OCTAVE_FLOAT_TRUNCATE volatile
21131
54527108599a store more --enable-FEATURE info in octave_config_info
John W. Eaton <jwe@octave.org>
parents: 21092
diff changeset
254 #else
21225
19a619ac9508 rename FLOAT_TRUNCATE to OCTAVE_FLOAT_TRUNCATE
John W. Eaton <jwe@octave.org>
parents: 21213
diff changeset
255 # define OCTAVE_FLOAT_TRUNCATE
21131
54527108599a store more --enable-FEATURE info in octave_config_info
John W. Eaton <jwe@octave.org>
parents: 21092
diff changeset
256 #endif
54527108599a store more --enable-FEATURE info in octave_config_info
John W. Eaton <jwe@octave.org>
parents: 21092
diff changeset
257
21850
0507f0d2135d indent preprocessor directives in octave-config.h and oct-conf-post.h
John W. Eaton <jwe@octave.org>
parents: 21749
diff changeset
258 #if defined (__cplusplus)
27850
8384125d6f5f Include header that defines the macros with format constants.
Markus Mützel <markus.muetzel@gmx.de>
parents: 27737
diff changeset
259 # include <cinttypes>
21850
0507f0d2135d indent preprocessor directives in octave-config.h and oct-conf-post.h
John W. Eaton <jwe@octave.org>
parents: 21749
diff changeset
260 #else
27850
8384125d6f5f Include header that defines the macros with format constants.
Markus Mützel <markus.muetzel@gmx.de>
parents: 27737
diff changeset
261 # include <inttypes.h>
21850
0507f0d2135d indent preprocessor directives in octave-config.h and oct-conf-post.h
John W. Eaton <jwe@octave.org>
parents: 21749
diff changeset
262 #endif
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
263
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
264 typedef OCTAVE_IDX_TYPE octave_idx_type;
26164
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
265
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
266 #if defined (OCTAVE_ENABLE_64)
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
267 # define OCTAVE_IDX_TYPE_FORMAT PRId64
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
268 #else
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
269 # define OCTAVE_IDX_TYPE_FORMAT PRId32
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
270 #endif
7f6a50f73625 Silence compiler warnings about format identifier for octave_idx_type (bug #55046).
Markus Mützel <markus.muetzel@gmx.de>
parents: 26147
diff changeset
271
22842
60405b73e439 provide separate typedefs for octave_idx_type and octave_f77_int_type
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
272 typedef OCTAVE_F77_INT_TYPE octave_f77_int_type;
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
273
29417
a6ab7069a87c Use matching format string for Fortran integers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 29359
diff changeset
274 #if OCTAVE_SIZEOF_F77_INT_TYPE == 8
a6ab7069a87c Use matching format string for Fortran integers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 29359
diff changeset
275 # define OCTAVE_F77_INT_TYPE_FORMAT PRId64
a6ab7069a87c Use matching format string for Fortran integers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 29359
diff changeset
276 #else
a6ab7069a87c Use matching format string for Fortran integers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 29359
diff changeset
277 # define OCTAVE_F77_INT_TYPE_FORMAT PRId32
a6ab7069a87c Use matching format string for Fortran integers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 29359
diff changeset
278 #endif
a6ab7069a87c Use matching format string for Fortran integers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 29359
diff changeset
279
22990
f71191aea679 provide macro declaring existence of f77 integer type
John W. Eaton <jwe@octave.org>
parents: 22985
diff changeset
280 #define OCTAVE_HAVE_F77_INT_TYPE 1
20436
bf47ac616bc0 Backout 9c7dd58b57e4 and have configure generate oct-conf-post.h
Rik <rik@octave.org>
parents:
diff changeset
281
30826
243b51ec9ff0 Remove `time_t` from API (bug #61821).
Markus Mützel <markus.muetzel@gmx.de>
parents: 30564
diff changeset
282 /* time type in API is always 64 bits wide */
243b51ec9ff0 Remove `time_t` from API (bug #61821).
Markus Mützel <markus.muetzel@gmx.de>
parents: 30564
diff changeset
283 #define OCTAVE_TIME_T int64_t
243b51ec9ff0 Remove `time_t` from API (bug #61821).
Markus Mützel <markus.muetzel@gmx.de>
parents: 30564
diff changeset
284
24538
2b273df71aa0 allow experimenting with thread_local storage
John W. Eaton <jwe@octave.org>
parents: 24534
diff changeset
285 #if defined (__cplusplus) && ! defined (OCTAVE_THREAD_LOCAL)
2b273df71aa0 allow experimenting with thread_local storage
John W. Eaton <jwe@octave.org>
parents: 24534
diff changeset
286 # define OCTAVE_THREAD_LOCAL
2b273df71aa0 allow experimenting with thread_local storage
John W. Eaton <jwe@octave.org>
parents: 24534
diff changeset
287 #endif
2b273df71aa0 allow experimenting with thread_local storage
John W. Eaton <jwe@octave.org>
parents: 24534
diff changeset
288
29967
da1678140f7e make interpreter functions in .oct files static
John W. Eaton <jwe@octave.org>
parents: 29954
diff changeset
289 /* Make all .oct file interpreter functions and methods static. */
da1678140f7e make interpreter functions in .oct files static
John W. Eaton <jwe@octave.org>
parents: 29954
diff changeset
290 #define OCTAVE_USE_STATIC_DEFUN
da1678140f7e make interpreter functions in .oct files static
John W. Eaton <jwe@octave.org>
parents: 29954
diff changeset
291
21240
7af5ca01ecac allow octave-config.h to be included unconditionally
John W. Eaton <jwe@octave.org>
parents: 21229
diff changeset
292 /* Tag indicating Octave's autoconf-generated config.h has been
7af5ca01ecac allow octave-config.h to be included unconditionally
John W. Eaton <jwe@octave.org>
parents: 21229
diff changeset
293 included. This symbol is provided because autoconf-generated
7af5ca01ecac allow octave-config.h to be included unconditionally
John W. Eaton <jwe@octave.org>
parents: 21229
diff changeset
294 config.h files do not define a multiple-inclusion guard. See also
7af5ca01ecac allow octave-config.h to be included unconditionally
John W. Eaton <jwe@octave.org>
parents: 21229
diff changeset
295 the notes at the top of the generated octave-config.h file. */
7af5ca01ecac allow octave-config.h to be included unconditionally
John W. Eaton <jwe@octave.org>
parents: 21229
diff changeset
296
7af5ca01ecac allow octave-config.h to be included unconditionally
John W. Eaton <jwe@octave.org>
parents: 21229
diff changeset
297 #define OCTAVE_AUTOCONFIG_H_INCLUDED 1