/usr/include/sp/config.h is in libsp1-dev 1.3.4-1.2.1-47.3ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 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 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 | // Copyright (c) 1994, 1995, 1996 James Clark
// See the file COPYING for copying permission.
#ifndef config_INCLUDED
#define config_INCLUDED 1
#define SP_INCLUDE_UNISTD_H
#define SP_POSIX_FILENAMES
#ifndef SP_MULTI_BYTE
#define SP_MULTI_BYTE
#endif
#ifdef __GNUG__
// It's not missing, but it pulls in libg++
#define SP_NEW_H_MISSING
// set_new_handler() has to be declared extern "C"
#define SP_SET_NEW_HANDLER_EXTERN_C
#ifndef SP_MANUAL_INST
#define SP_MANUAL_INST
#endif
#ifndef SP_ANSI_CLASS_INST
#define SP_ANSI_CLASS_INST
#endif
#ifndef SP_HAVE_BOOL
#define SP_HAVE_BOOL
#endif
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
#define SP_ANSI_FOR_SCOPE
#endif
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 8)
#define SP_ANSI_LIB
#undef SP_NEW_H_MISSING
#define SP_HAVE_TYPENAME
#endif
#if (__GNUC__ == 2 && __GNUC_MINOR__ >= 8)
#define SP_NO_STD_NAMESPACE
#endif
#endif /* __GNUG__ */
#if defined(sun) || defined(__sun)
// struct stat has st_blksize member
#define SP_STAT_BLKSIZE
#endif
#if (defined __MACH__) && (! defined __GNU__)
#define SP_MUTEX_MACH
#endif
#ifdef __EMX__
// EMX 0.9a for OS/2
#undef SP_POSIX_FILENAMES
#define SP_MSDOS_FILENAMES
#endif
#ifdef _MSC_VER
// Microsoft Visual C++ 4.0
#undef SP_INCLUDE_UNISTD_H
#define SP_INCLUDE_IO_H
#ifndef SP_ANSI_CLASS_INST
#define SP_ANSI_CLASS_INST
#endif
#undef SP_POSIX_FILENAMES
#define SP_MSDOS_FILENAMES
#define SP_SHORT_HEADERS
#pragma warning ( disable : 4660 ) // already instantiated
#pragma warning ( disable : 4661 ) // missing def for decl member
#pragma warning ( disable : 4786 ) // debug symbol truncated (>255 chars)
#pragma warning ( disable : 4018 ) // signed/unsigned mismatch
#pragma warning ( disable : 4251 ) // __declspec(dllexport)
#pragma warning ( disable : 4275 )
#pragma warning ( disable : 4237 ) // future reserved keyword
#define huge verybig
#if _MSC_VER == 900
#define SP_DECLARE_PLACEMENT_OPERATOR_NEW
#endif
#define set_new_handler _set_new_handler
// Function passed to set_new_handler() returns int and takes size_t argument.
#define SP_FANCY_NEW_HANDLER
#if _MSC_VER >= 1100
// Visual C++ 5.0
#define SP_HAVE_BOOL
#define SP_SIZEOF_BOOL_1
#pragma warning ( disable : 4800 ) // forcing value to bool 'true' or
// 'false' (performance warning)
#endif
#if _MSC_VER >= 1200
// Visual C++ 6.0
#define SP_HAVE_PLACEMENT_OPERATOR_DELETE
#define SP_HAVE_TYPENAME
#endif
#define SP_HAVE_SETMODE
#define SP_DLLEXPORT __declspec(dllexport)
#define SP_DLLIMPORT __declspec(dllimport)
#ifdef _DLL
#define SP_USE_DLL
#endif
#ifdef SP_USE_DLL
#ifndef BUILD_LIBSP
// It's not possible to export templates using __declspec(dllexport),
// so instead we include the template definitions in the headers,
// which allows Visual C++ to instantiate any needed templates
// in the client.
#define SP_DEFINE_TEMPLATES
#endif
#endif /* SP_USE_DLL */
#ifndef SP_MANUAL_INST
#ifndef SP_DEFINE_TEMPLATES
#define SP_MANUAL_INST
#endif
#endif /* not SP_MANUAL_INST */
#ifdef SP_MULTI_BYTE
#define SP_WIDE_SYSTEM
#endif
// wchar_t's base type is an unsigned short
#define SP_WCHAR_T_USHORT
// Enable precompiled header support.
#define SP_PCH
// Don't compile in message text.
#define SP_NO_MESSAGE_TEXT
#ifdef _MT
// Use Win32 critical section facilities
#define SP_MUTEX_WIN32
// Use the new Standard C++ library
#define SP_ANSI_LIB
#if _MSC_VER < 1100
// Versions prior to 5.0 don't use the std namespace
#define SP_NO_STD_NAMESPACE
#endif
#endif /* _MT */
#endif /* _MSC_VER */
#ifdef __WATCOMC__
// Watcom C++ 10.0a
#define SP_MANUAL_INST
#undef SP_POSIX_FILENAMES
#define SP_MSDOS_FILENAMES
#undef SP_INCLUDE_UNISTD_H
#define SP_INCLUDE_IO_H
#pragma warning 004 9
#undef huge
// Cannot handle T::~T in template.
#define SP_QUAL_TEMPLATE_DTOR_BROKEN
#define SP_HAVE_SETMODE
#define _setmode setmode
#if __WATCOMC__ < 1050
#define _O_BINARY O_BINARY
#endif
#define SP_WCHAR_T_USHORT
#if __WATCOMC__ >= 1100
#define SP_HAVE_BOOL
// #define SP_SIZEOF_BOOL_1
#endif
#endif /* __WATCOMC__ */
#ifdef __BORLANDC__
// Borland C++ 5.0
#define SP_ANSI_FOR_SCOPE
#define SP_HAVE_RTTI
#define SP_HAVE_SETMODE
#undef SP_INCLUDE_UNISTD_H
#define SP_INCLUDE_IO_H
#undef SP_POSIX_FILENAMES
#define SP_MSDOS_FILENAMES
#define SP_HAVE_BOOL
#define SP_SHORT_HEADERS
#define _O_BINARY O_BINARY
#define _setmode setmode
#define SP_ANSI_CLASS_INST
#define SP_MANUAL_INST
// Building as a DLL doesn't work with Borland C++ yet.
#define SP_DLLEXPORT __declspec(dllexport)
#define SP_DLLIMPORT __declspec(dllimport)
#ifdef SP_USE_DLL
#ifndef BUILD_LIBSP
#define SP_DEFINE_TEMPLATES
#endif
#endif /* SP_USE_DLL */
#define SP_WCHAR_T_USHORT
#endif /* __BORLANDC__ */
#if defined(__IBMCPP__) && !defined(_AIX)
// IBM CSet++ 2.1 from Horst Szillat <szillat@berlin.snafu.de>.
#undef SP_POSIX_FILENAMES
#define SP_MANUAL_INST
#define SP_SHORT_HEADERS
#define SP_MSDOS_FILENAMES
#undef SP_INCLUDE_UNISTD_H
#define SP_INCLUDE_IO_H
#define S_IFMT (S_IFDIR|S_IFCHR|S_IFREG)
#endif
#ifdef __xlC__
// IBM CSet++ 3.1 on AIX 4.1.
// Use CXX=xlC and CC=xlC in the Makefile.
// Note that -g creates massive executables and that -O
// takes ages to compile and creates core dumping executables!
// I havn't tried the socket stuff.
// <Chris_Paulson-Ellis@3mail.3com.com>
#define SP_MANUAL_INST
#define SP_HAVE_LOCALE
#define SP_STAT_BLKSIZE
#endif /* __xlC__ */
#ifdef macintosh
// Apple MacOS. Tested only with Metrowerks CW10.
// From Ashley Colin Yakeley <AshleyB@halcyon.com>
#undef SP_POSIX_FILENAMES
#define SP_MAC_FILENAMES
#define SP_LINE_TERM1 '\r'
#ifdef __MWERKS__
// Metrowerks for some platform (MacOS in this case)
#pragma mpwc_newline off
#define SP_DEFINE_TEMPLATES
// #define SP_USE_DLL -- __declspec doesn't work with classes (yet)
#ifdef SP_USE_DLL
#define SP_DLLEXPORT __declspec(export)
#define SP_DLLIMPORT __declspec(import)
#endif // SP_USE_DLL
#if __MWERKS__ >= 0x1000
// bool option only defined for CW10 and later (note __MWERKS__ is BCD)
#if __option(bool)
#define SP_HAVE_BOOL
#endif // __option(bool)
#endif // __MWERKS__ >= 0x1000
#endif // __MWERKS__
#if ('\n' != 10) || ('\r' != 13)
#error "newlines incorrect"
#endif
#endif /* macintosh */
#ifdef SP_HAVE_SETMODE
#ifndef SP_LINE_TERM1
#define SP_LINE_TERM1 '\r'
#define SP_LINE_TERM2 '\n'
#endif
#endif /* not SP_HAVE_SETMODE */
#ifndef SP_LINE_TERM1
#define SP_LINE_TERM1 '\n'
#endif
#ifndef SP_ANSI_FOR_SCOPE
// This simulates the new ANSI "for" scope rules
#define for if (0); else for
#endif
#ifndef SP_HAVE_TYPENAME
#define typename /* as nothing */
#endif
#ifndef SP_DLLEXPORT
#define SP_DLLEXPORT /* as nothing */
#endif
#ifndef SP_DLLIMPORT
#define SP_DLLIMPORT /* as nothing */
#endif
#ifdef SP_USE_DLL
#ifdef BUILD_LIBSP
#define SP_API SP_DLLEXPORT
#else
#define SP_API SP_DLLIMPORT
#endif
#else /* not SP_USE_DLL */
#define SP_API /* as nothing */
#endif /* not SP_USE_DLL */
// SP_WIDE_SYSTEM says that your OS provides wide character interfaces
// SP_WIDE_SYSTEM currently works only with Visual C++ and Windows NT/95
// SP_WIDE_SYSTEM implies SP_MULTI_BYTE
#ifdef SP_WIDE_SYSTEM
#ifndef SP_MULTI_BYTE
#define SP_MULTI_BYTE
#endif
#endif
#ifdef SP_NAMESPACE
#define SP_NAMESPACE_SCOPE SP_NAMESPACE::
#else
#define SP_NAMESPACE_SCOPE
#endif
#endif /* not config_INCLUDED */
|