Files
sousa-gecko/mozilla-config.h.in
Bob Owen 5525fb5db4 Bug 1998388 - Remove sdkdecls.h from windows sandbox code. r=tjr,firefox-build-system-reviewers,sergesanspaille
All of the #defines and declarations are now in upstream mingw.
The need for the windows.h include can be removed by includes in our shim files.
excpt.h now needs to be included explicitly before the GetExceptionCode
override, this used to be included by the windows.h include.
This also fixes the line endings for launch.h.

Differential Revision: https://phabricator.services.mozilla.com/D271421
2025-11-10 17:09:26 +00:00

65 lines
1.9 KiB
C

/* List of defines generated by configure. Included with preprocessor flag,
* -include, to avoid long list of -D defines on the compile command-line.
* Do not edit.
*/
#ifndef MOZILLA_CONFIG_H
#define MOZILLA_CONFIG_H
#if defined(__clang__)
#pragma clang diagnostic push
#if __has_warning("-Wreserved-id-macro")
#pragma clang diagnostic ignored "-Wreserved-id-macro"
#endif
#endif
/* Expands to all the defines from configure. */
#undef ALLDEFINES
/*
* The c99 defining the limit macros (UINT32_MAX for example), says:
*
* C++ implementations should define these macros only when
* __STDC_LIMIT_MACROS is defined before <stdint.h> is included.
*
* The same also occurs with __STDC_CONSTANT_MACROS for the constant macros
* (INT8_C for example) used to specify a literal constant of the proper type,
* and with __STDC_FORMAT_MACROS for the format macros (PRId32 for example) used
* with the fprintf function family.
*/
#define __STDC_LIMIT_MACROS
#if !defined(__STDC_CONSTANT_MACROS)
#define __STDC_CONSTANT_MACROS
#endif
#if !defined(__STDC_FORMAT_MACROS)
#define __STDC_FORMAT_MACROS
#endif
#if defined(__clang__)
#pragma clang diagnostic pop
#endif
/*
* CHROMIUM_SANDBOX_BUILD is defined in security/sandbox/moz.build.
*/
#if defined(CHROMIUM_SANDBOX_BUILD) && defined(XP_WIN)
#ifdef __MINGW32__
/*
* MinGW doesn't support __try / __except. There are a few mechanisms available
* to hack around it and pseudo-support it, but these are untested in Firefox.
* What is tested (and works) is replacing them with if(true) and else.
* We need to include excpt.h first, so that we can then override it.
*/
#include <excpt.h>
#define __try if(true)
#define __except(x) else
#ifdef GetExceptionCode
#undef GetExceptionCode
#endif
#define GetExceptionCode() 0
#endif /* __MINGW32__ */
#endif /* defined(CHROMIUM_SANDBOX_BUILD) && defined(XP_WIN) */
#endif /* MOZILLA_CONFIG_H */