summaryrefslogtreecommitdiff
path: root/cppu/inc/uno/lbnames.h
diff options
context:
space:
mode:
Diffstat (limited to 'cppu/inc/uno/lbnames.h')
-rw-r--r--cppu/inc/uno/lbnames.h103
1 files changed, 103 insertions, 0 deletions
diff --git a/cppu/inc/uno/lbnames.h b/cppu/inc/uno/lbnames.h
new file mode 100644
index 000000000000..da12caa1e276
--- /dev/null
+++ b/cppu/inc/uno/lbnames.h
@@ -0,0 +1,103 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef _UNO_LBNAMES_H_
+#define _UNO_LBNAMES_H_
+
+#ifdef __cplusplus
+
+/* environment type names for supported compilers */
+#if defined (_MSC_VER)
+#if (_MSC_VER < 1000)
+#error "ms visual c++ version must be at least 4.2"
+#elif (_MSC_VER < 1100) // MSVC 4.x
+#pragma warning( disable: 4290 )
+#define TMP_CPPU_ENV msci
+#elif (_MSC_VER < 1600) // MSVC 5-9
+#define TMP_CPPU_ENV msci
+#else
+#error "ms visual c++ version must be between 4.2 and 9.x"
+#endif /* (_MSC_VER < 1000) */
+/* sunpro cc */
+#elif defined (__SUNPRO_CC)
+#if ((__SUNPRO_CC >= 0x5000 && __SUNPRO_CC < 0x6000) || (__SUNPRO_CC >= 0x500 && __SUNPRO_CC < 0x600))
+#define TMP_CPPU_ENV sunpro5
+#elif
+#error "sunpro cc version must be 5.x"
+provoking error here, because PP ignores #error
+#endif /* defined (__SUNPRO_CC) */
+/* g++ 2.x, 3.0 */
+#elif defined (__GNUC__)
+#if (__GNUC__ == 2 && __GNUC_MINOR__ == 91)
+#define TMP_CPPU_ENV gcc2
+#elif (__GNUC__ == 2 && __GNUC_MINOR__ == 95)
+#define TMP_CPPU_ENV gcc2
+#elif (__GNUC__ == 2)
+#error "Tested gcc 2 versions are 2.91 and 2.95. Patch uno/lbnames.h to try your gcc 2 version."
+#elif (__GNUC__ == 3 && __GNUC_MINOR__ <= 4)
+#define __CPPU_ENV gcc3
+#elif (__GNUC__ == 4 && __GNUC_MINOR__ <= 4)
+#define __CPPU_ENV gcc3
+#elif (__GNUC__ == 3)
+#error "Tested gcc 3 version is <= 3.4. Patch uno/lbnames.h to try your gcc 3 version."
+#else
+#error "Supported gcc majors are 2 , 3 and 4 <= 4.4. Unsupported gcc major version."
+#endif /* defined (__GNUC__) */
+#endif /* defined (_MSC_VER) */
+
+#if (! defined (CPPU_ENV) && defined (TMP_CPPU_ENV))
+#define CPPU_ENV TMP_CPPU_ENV
+#endif
+
+#ifdef CPPU_ENV
+
+#define CPPU_STRINGIFY_EX( x ) #x
+#define CPPU_STRINGIFY( x ) CPPU_STRINGIFY_EX( x )
+
+/** Name for C++ compiler/ platform, e.g. "gcc3", "msci" */
+#define CPPU_CURRENT_LANGUAGE_BINDING_NAME CPPU_STRINGIFY( CPPU_ENV )
+
+#else
+
+#error "No supported C++ compiler environment."
+provoking error here, because PP ignores #error
+
+#endif /* CPPU_ENV */
+
+#undef TMP_CPPU_ENV
+
+#endif /* __cplusplus */
+
+/** Environment type name for binary C UNO. */
+#define UNO_LB_UNO "uno"
+/** Environment type name for ANSI C compilers. */
+#define UNO_LB_C "c"
+/** Environment type name for Java 1.3.1 compatible virtual machine. */
+#define UNO_LB_JAVA "java"
+/** Environment type name for CLI (Common Language Infrastructure). */
+#define UNO_LB_CLI "cli"
+
+#endif