jdk/src/java.base/share/native/launcher/defines.h
author henryjen
Wed, 08 Jul 2015 23:26:48 -0700
changeset 32267 4e96a9ee01b1
parent 30822 e26f66cc0f05
child 34000 a5c49d5a7d7f
permissions -rw-r--r--
8027634: Support @argfiles for java command-line tool Reviewed-by: ksrini, mchung
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     1
/*
30822
e26f66cc0f05 8080991: Compilation error with recent clang in java.base/share/native/launcher/main.c: error: comparison of array 'const_jargs' not equal to a null pointer is always true
ksrini
parents: 25859
diff changeset
     2
 * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
90ce3da70b43 Initial load
duke
parents:
diff changeset
     4
 *
90ce3da70b43 Initial load
duke
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
90ce3da70b43 Initial load
duke
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
5506
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 2
diff changeset
     7
 * published by the Free Software Foundation.  Oracle designates this
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     8
 * particular file as subject to the "Classpath" exception as provided
5506
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 2
diff changeset
     9
 * by Oracle in the LICENSE file that accompanied this code.
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    10
 *
90ce3da70b43 Initial load
duke
parents:
diff changeset
    11
 * This code is distributed in the hope that it will be useful, but WITHOUT
90ce3da70b43 Initial load
duke
parents:
diff changeset
    12
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
90ce3da70b43 Initial load
duke
parents:
diff changeset
    13
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
90ce3da70b43 Initial load
duke
parents:
diff changeset
    14
 * version 2 for more details (a copy is included in the LICENSE file that
90ce3da70b43 Initial load
duke
parents:
diff changeset
    15
 * accompanied this code).
90ce3da70b43 Initial load
duke
parents:
diff changeset
    16
 *
90ce3da70b43 Initial load
duke
parents:
diff changeset
    17
 * You should have received a copy of the GNU General Public License version
90ce3da70b43 Initial load
duke
parents:
diff changeset
    18
 * 2 along with this work; if not, write to the Free Software Foundation,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    19
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    20
 *
5506
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 2
diff changeset
    21
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 2
diff changeset
    22
 * or visit www.oracle.com if you need additional information or have any
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 2
diff changeset
    23
 * questions.
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    24
 */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    25
90ce3da70b43 Initial load
duke
parents:
diff changeset
    26
#ifndef _DEFINES_H
90ce3da70b43 Initial load
duke
parents:
diff changeset
    27
#define _DEFINES_H
90ce3da70b43 Initial load
duke
parents:
diff changeset
    28
90ce3da70b43 Initial load
duke
parents:
diff changeset
    29
#include "java.h"
90ce3da70b43 Initial load
duke
parents:
diff changeset
    30
90ce3da70b43 Initial load
duke
parents:
diff changeset
    31
/*
90ce3da70b43 Initial load
duke
parents:
diff changeset
    32
 * This file contains commonly defined constants used only by main.c
90ce3da70b43 Initial load
duke
parents:
diff changeset
    33
 * and should not be included by another file.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    34
 */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    35
#ifndef FULL_VERSION
90ce3da70b43 Initial load
duke
parents:
diff changeset
    36
/* make sure the compilation fails */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    37
#error "FULL_VERSION must be defined"
90ce3da70b43 Initial load
duke
parents:
diff changeset
    38
#endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
    39
90ce3da70b43 Initial load
duke
parents:
diff changeset
    40
#if defined(JDK_MAJOR_VERSION) && defined(JDK_MINOR_VERSION)
90ce3da70b43 Initial load
duke
parents:
diff changeset
    41
#define DOT_VERSION JDK_MAJOR_VERSION "." JDK_MINOR_VERSION
90ce3da70b43 Initial load
duke
parents:
diff changeset
    42
#else
90ce3da70b43 Initial load
duke
parents:
diff changeset
    43
/* make sure the compilation fails */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    44
#error "JDK_MAJOR_VERSION and JDK_MINOR_VERSION must be defined"
90ce3da70b43 Initial load
duke
parents:
diff changeset
    45
#endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
    46
90ce3da70b43 Initial load
duke
parents:
diff changeset
    47
90ce3da70b43 Initial load
duke
parents:
diff changeset
    48
#ifdef JAVA_ARGS
30822
e26f66cc0f05 8080991: Compilation error with recent clang in java.base/share/native/launcher/main.c: error: comparison of array 'const_jargs' not equal to a null pointer is always true
ksrini
parents: 25859
diff changeset
    49
#define HAS_JAVA_ARGS JNI_TRUE
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    50
static const char* const_progname = "java";
90ce3da70b43 Initial load
duke
parents:
diff changeset
    51
static const char* const_jargs[] = JAVA_ARGS;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    52
/*
90ce3da70b43 Initial load
duke
parents:
diff changeset
    53
 * ApplicationHome is prepended to each of these entries; the resulting
90ce3da70b43 Initial load
duke
parents:
diff changeset
    54
 * strings are concatenated (separated by PATH_SEPARATOR) and used as the
90ce3da70b43 Initial load
duke
parents:
diff changeset
    55
 * value of -cp option to the launcher.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    56
 */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    57
#ifndef APP_CLASSPATH
90ce3da70b43 Initial load
duke
parents:
diff changeset
    58
#define APP_CLASSPATH        { "/lib/tools.jar", "/classes" }
90ce3da70b43 Initial load
duke
parents:
diff changeset
    59
#endif /* APP_CLASSPATH */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    60
static const char* const_appclasspath[] = APP_CLASSPATH;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    61
#else  /* !JAVA_ARGS */
30822
e26f66cc0f05 8080991: Compilation error with recent clang in java.base/share/native/launcher/main.c: error: comparison of array 'const_jargs' not equal to a null pointer is always true
ksrini
parents: 25859
diff changeset
    62
#define HAS_JAVA_ARGS JNI_FALSE
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    63
#ifdef PROGNAME
90ce3da70b43 Initial load
duke
parents:
diff changeset
    64
static const char* const_progname = PROGNAME;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    65
#else
90ce3da70b43 Initial load
duke
parents:
diff changeset
    66
static char* const_progname = NULL;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    67
#endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
    68
static const char** const_jargs = NULL;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    69
static const char** const_appclasspath = NULL;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    70
#endif /* JAVA_ARGS */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    71
90ce3da70b43 Initial load
duke
parents:
diff changeset
    72
#ifdef LAUNCHER_NAME
90ce3da70b43 Initial load
duke
parents:
diff changeset
    73
static const char* const_launcher = LAUNCHER_NAME;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    74
#else  /* LAUNCHER_NAME */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    75
static char* const_launcher = NULL;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    76
#endif /* LAUNCHER_NAME */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    77
90ce3da70b43 Initial load
duke
parents:
diff changeset
    78
#ifdef EXPAND_CLASSPATH_WILDCARDS
90ce3da70b43 Initial load
duke
parents:
diff changeset
    79
static const jboolean const_cpwildcard = JNI_TRUE;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    80
#else
90ce3da70b43 Initial load
duke
parents:
diff changeset
    81
static const jboolean const_cpwildcard = JNI_FALSE;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    82
#endif /* EXPAND_CLASSPATH_WILDCARDS */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    83
90ce3da70b43 Initial load
duke
parents:
diff changeset
    84
#if defined(NEVER_ACT_AS_SERVER_CLASS_MACHINE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
    85
static const jint const_ergo_class = NEVER_SERVER_CLASS;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    86
#elif defined(ALWAYS_ACT_AS_SERVER_CLASS_MACHINE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
    87
static const jint const_ergo_class = ALWAYS_SERVER_CLASS;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    88
#else
90ce3da70b43 Initial load
duke
parents:
diff changeset
    89
static const jint const_ergo_class = DEFAULT_POLICY;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    90
#endif /* NEVER_ACT_AS_SERVER_CLASS_MACHINE */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    91
32267
4e96a9ee01b1 8027634: Support @argfiles for java command-line tool
henryjen
parents: 30822
diff changeset
    92
#ifdef ENABLE_ARG_FILES
4e96a9ee01b1 8027634: Support @argfiles for java command-line tool
henryjen
parents: 30822
diff changeset
    93
static const jboolean const_disable_argfile = JNI_FALSE;
4e96a9ee01b1 8027634: Support @argfiles for java command-line tool
henryjen
parents: 30822
diff changeset
    94
#else
4e96a9ee01b1 8027634: Support @argfiles for java command-line tool
henryjen
parents: 30822
diff changeset
    95
static const jboolean const_disable_argfile = JNI_TRUE;
4e96a9ee01b1 8027634: Support @argfiles for java command-line tool
henryjen
parents: 30822
diff changeset
    96
#endif
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    97
#endif /*_DEFINES_H */