HDK
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
pySafePython.h
Go to the documentation of this file.
1
//
2
// Copyright 2020 Pixar
3
//
4
// Licensed under the Apache License, Version 2.0 (the "Apache License")
5
// with the following modification; you may not use this file except in
6
// compliance with the Apache License and the following modification to it:
7
// Section 6. Trademarks. is deleted and replaced with:
8
//
9
// 6. Trademarks. This License does not grant permission to use the trade
10
// names, trademarks, service marks, or product names of the Licensor
11
// and its affiliates, except as required to comply with Section 4(c) of
12
// the License and to reproduce the content of the NOTICE file.
13
//
14
// You may obtain a copy of the Apache License at
15
//
16
// http://www.apache.org/licenses/LICENSE-2.0
17
//
18
// Unless required by applicable law or agreed to in writing, software
19
// distributed under the Apache License with the above modification is
20
// distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21
// KIND, either express or implied. See the Apache License for the specific
22
// language governing permissions and limitations under the Apache License.
23
//
24
#ifndef PXR_BASE_TF_PY_SAFE_PYTHON_H
25
#define PXR_BASE_TF_PY_SAFE_PYTHON_H
26
27
#include "
pxr/base/arch/pragmas.h
"
28
29
/// \file tf/pySafePython.h
30
/// Intended to replace a direct include of Python.h, which causes several
31
/// build problems with certain configurations and platforms (e.g., debug
32
/// builds on Windows, Qt slots keyword, etc.)
33
34
// This include is a hack to avoid build errors due to incompatible
35
// macro definitions in pyport.h on MacOS for older versions of Python.
36
// See: https://bugs.python.org/issue10910
37
#include <locale>
38
39
// Python 3 has a conflict with the slots macro defined by the Qt library,
40
// so we're undef'ing here temporarily before including Python.
41
ARCH_PRAGMA_PUSH_MACRO
(slots)
42
#undef slots
43
44
#include <hboost/python/detail/wrap_python.hpp>
45
46
ARCH_PRAGMA_POP_MACRO
(slots)
47
48
#endif // PXR_BASE_TF_PY_SAFE_PYTHON_H
pragmas.h
ARCH_PRAGMA_POP_MACRO
#define ARCH_PRAGMA_POP_MACRO
Definition:
pragmas.h:182
ARCH_PRAGMA_PUSH_MACRO
#define ARCH_PRAGMA_PUSH_MACRO
Definition:
pragmas.h:178
pxr
base
tf
pySafePython.h
Generated on Fri Nov 8 2024 03:40:52 for HDK by
1.8.6