1 /* 2 * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 #ifndef _DEFINES_H 27 #define _DEFINES_H 28 29 #include "java.h" 30 31 /* 32 * This file contains commonly defined constants used only by main.c 33 * and should not be included by another file. 34 */ 35 #ifndef FULL_VERSION 36 /* make sure the compilation fails */ 37 #error "FULL_VERSION must be defined" 38 #endif 39 40 #if defined(JDK_MAJOR_VERSION) && defined(JDK_MINOR_VERSION) 41 #define DOT_VERSION JDK_MAJOR_VERSION "." JDK_MINOR_VERSION 42 #else 43 /* make sure the compilation fails */ 44 #error "JDK_MAJOR_VERSION and JDK_MINOR_VERSION must be defined" 45 #endif 46 47 48 #ifdef JAVA_ARGS 49 #define HAS_JAVA_ARGS JNI_TRUE 50 static const char* const_progname = "java"; 51 static const char* const_jargs[] = JAVA_ARGS; 52 /* 53 * ApplicationHome is prepended to each of these entries; the resulting 54 * strings are concatenated (separated by PATH_SEPARATOR) and used as the 55 * value of -cp option to the launcher. 56 */ 57 #ifndef APP_CLASSPATH 58 #define APP_CLASSPATH { "/lib/tools.jar", "/classes" } 59 #endif /* APP_CLASSPATH */ 60 static const char* const_appclasspath[] = APP_CLASSPATH; 61 #else /* !JAVA_ARGS */ 62 #define HAS_JAVA_ARGS JNI_FALSE 63 #ifdef PROGNAME 64 static const char* const_progname = PROGNAME; 65 #else 66 static char* const_progname = NULL; 67 #endif 68 static const char** const_jargs = NULL; 69 static const char** const_appclasspath = NULL; 70 #endif /* JAVA_ARGS */ 71 72 #ifdef LAUNCHER_NAME 73 static const char* const_launcher = LAUNCHER_NAME; 74 #else /* LAUNCHER_NAME */ 75 static char* const_launcher = NULL; 76 #endif /* LAUNCHER_NAME */ 77 78 #ifdef EXPAND_CLASSPATH_WILDCARDS 79 static const jboolean const_cpwildcard = JNI_TRUE; 80 #else 81 static const jboolean const_cpwildcard = JNI_FALSE; 82 #endif /* EXPAND_CLASSPATH_WILDCARDS */ 83 84 #if defined(NEVER_ACT_AS_SERVER_CLASS_MACHINE) 85 static const jint const_ergo_class = NEVER_SERVER_CLASS; 86 #elif defined(ALWAYS_ACT_AS_SERVER_CLASS_MACHINE) 87 static const jint const_ergo_class = ALWAYS_SERVER_CLASS; 88 #else 89 static const jint const_ergo_class = DEFAULT_POLICY; 90 #endif /* NEVER_ACT_AS_SERVER_CLASS_MACHINE */ 91 92 #endif /*_DEFINES_H */