harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dlyd...@apache.org
Subject svn commit: r565163 - /harmony/enhanced/sandbox/bootjvm/bootJVM/jvm/src/jvmcfg.h
Date Sun, 12 Aug 2007 21:44:43 GMT
Author: dlydick
Date: Sun Aug 12 14:44:42 2007
New Revision: 565163

URL: http://svn.apache.org/viewvc?view=rev&rev=565163
Log:
Use double-hyphen prefix to custom options.

Define JVMCFG_COMMAND_LINE_SWITCH for normal options,
especially needed for utilities like 'jar'.

Support conditional compilation of 'tmparea' facility
via JVMCFG_TMPAREA_IN_USE macro.

Added jvm_attribute_index_native and jvm_attribute_index_abstract.

Modified:
    harmony/enhanced/sandbox/bootjvm/bootJVM/jvm/src/jvmcfg.h

Modified: harmony/enhanced/sandbox/bootjvm/bootJVM/jvm/src/jvmcfg.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/sandbox/bootjvm/bootJVM/jvm/src/jvmcfg.h?view=diff&rev=565163&r1=565162&r2=565163
==============================================================================
--- harmony/enhanced/sandbox/bootjvm/bootJVM/jvm/src/jvmcfg.h (original)
+++ harmony/enhanced/sandbox/bootjvm/bootJVM/jvm/src/jvmcfg.h Sun Aug 12 14:44:42 2007
@@ -151,6 +151,9 @@
 #define JVMCFG_EXTENSION_DELIMITER_CHAR   '.'
 #define JVMCFG_EXTENSION_DELIMITER_STRING "."
 
+#define JVMCFG_PATHNAME_VOLUME_DELIMITER_CHAR   '.'
+#define JVMCFG_PATHNAME_VOLUME_DELIMITER_STRING "."
+
 #else
 #define JVMCFG_PATHNAME_DELIMITER_CHAR   '/'
 #define JVMCFG_PATHNAME_DELIMITER_STRING "/"
@@ -195,35 +198,45 @@
  * @brief Command line option to show command line help.
  *
  */
-#define JVMCFG_COMMAND_LINE_HELP_PARM    "-help"
+#define JVMCFG_COMMAND_LINE_HELP_PARM    "--help"
 
 
 /*!
  * @brief Command line option to show software license.
  *
  */
-#define JVMCFG_COMMAND_LINE_LICENSE_PARM "-license"
+#define JVMCFG_COMMAND_LINE_LICENSE_PARM "--license"
 
 
 /*!
  * @brief Command line option to show program version number.
  *
  */
-#define JVMCFG_COMMAND_LINE_VERSION_PARM "-version"
+#define JVMCFG_COMMAND_LINE_VERSION_PARM "--version"
 
 
 /*!
  * @brief Command line option to show program copyright message.
  *
  */
-#define JVMCFG_COMMAND_LINE_COPYRIGHT_PARM "-copyright"
+#define JVMCFG_COMMAND_LINE_COPYRIGHT_PARM "--copyright"
 
 
 /*!
  * @brief Command line option to show program options.
  *
  */
-#define JVMCFG_COMMAND_LINE_SHOW_PARM "-show"
+#define JVMCFG_COMMAND_LINE_SHOW_PARM "--show"
+
+/*!
+ * @brief Command line option switch notification for all other options.
+ *
+ * This is not needed in the JVM itself, but is for utilities
+ * such as JAR.  Its use is optional in some utilities, but mandatory
+ * for others, typically depending on legacy requirements.
+ *
+ */
+#define JVMCFG_COMMAND_LINE_SWITCH '-'
 
 /*@} */ /* End of grouped definitions */
 
@@ -273,6 +286,26 @@
 
 
 /*!
+ * @brief Enable temporary directory creation and use as disk scratchpad
+ *
+ * When disabled, @e no temporary director will be created and cannot
+ * be used.  It initial purpose was for facilitating Java archiving
+ * activities during development of the JVM, but it has been retained
+ * in this form for a time when and if it could be otherwise useful.
+ *
+ * This symbol @e must be resolvable at compile-time instead of run
+ * time, so @b 0 and @b 1 are the values recommended, representing
+ * not in use and in use, respectively.
+ *
+ * @see tmparea_init()
+ * @see tmparea_get()
+ * @see tmparea_shutdown()
+ *
+ */
+#define JVMCFG_TMPAREA_IN_USE 0
+
+
+/*!
  * @brief Default @b CLASSPATH to current directory only.
  *
  */
@@ -287,7 +320,11 @@
  * @link #JVMCFG_BOOTCLASSPATH_FULL_PARM -Xbootclasspath@endlink.
  *
  */
+#if JVMCFG_TMPAREA_IN_USE
 #define JVMCFG_BOOTCLASSPATH_DEFAULT tmparea_get()
+#else
+#define JVMCFG_BOOTCLASSPATH_DEFAULT "."  /* Current directory */
+#endif
 
 /*@} */ /* End of grouped definitions */
 
@@ -566,7 +603,7 @@
  *       loop until it is enabled!
  *
  */
-#define JVMCFG_TIMESLICE_PERIOD_ENABLE      rfalse
+#define JVMCFG_TIMESLICE_PERIOD_ENABLE      rtrue
 
 /*!
  * @brief JVM interval timer period (seconds)
@@ -839,10 +876,40 @@
 /*!
  * @brief Bad attribute slot,usually "not found"
  *
+ * @see JVMCFG_NATIVE_METHOD_ATTRIBUTE
+ * @see JVMCFG_ABSTRACT_METHOD_ATTRIBUTE
  */
 #define JVMCFG_BAD_ATTRIBUTE  65535
 
 /*!
+ * @brief Real machine marker for native method
+ *
+ */
+extern const jvm_attribute_index jvm_attribute_index_native;
+
+/*!
+ * @brief Native method slot, no code attribute
+ *
+ * @see JVMCFG_BAD_ATTRIBUTE
+ * @see JVMCFG_ABSTRACT_METHOD_ATTRIBUTE
+ */
+#define JVMCFG_NATIVE_METHOD_ATTRIBUTE 65534
+
+/*!
+ * @brief Abstract method slot,no code attribute
+ *
+ */
+extern const jvm_attribute_index jvm_attribute_index_abstract;
+
+/*!
+ * @brief Abstract method attribute slot, no code attribute
+ *
+ * @see JVMCFG_NATIVE_METHOD_ATTRIBUTE
+ * @see JVMCFG_BAD_ATTRIBUTE
+ */
+#define JVMCFG_ABSTRACT_METHOD_ATTRIBUTE  65533
+
+/*!
  * @brief Annotation table indices all use this type
  *
  */
@@ -923,12 +990,6 @@
                                        jvm_element_value_pair_index_bad;
 
 /*!
- * @brief Real machine marker for native method
- *
- */
-extern const jvm_attribute_index jvm_attribute_index_native;
-
-/*!
  * @brief Ordinal number for local native method
  *
  */
@@ -986,12 +1047,6 @@
 #define JVMCFG_JLOBJECT_NMO_UNREGISTER 2
 
 /*!
- * @brief Native method slot,no code attribute
- *
- */
-#define JVMCFG_NATIVE_METHOD_ATTRIBUTE 65534
-
-/*!
  * @brief UTF8 string table indices all use this type
  *
  */
@@ -1286,6 +1341,24 @@
  * When that happens, only those initializion phases that were
  * complete are reversed and cleaned up.
  *
+ * Each of these symbols may have another controlling role in the
+ * behavior of their corresponding subsystem.  Of particular interest
+ * is @b jvm_completely_initialized because it forces use of the
+ * system thread to run all <b><code>&lt;clinit&gt;</code></b>
+ * and <b><code>&lt;init&gt;</code></b> methods at the startup
of
+ * the machine since the thread mechanism, although in place, does
+ * not necessarily have @c @b java.lang.Thread loaded.
+ *
+ * @note There are actually other related symbols, but each of them
+ *       is scoped as <b><code>static</code></b> since it is only
+ *       used in @link jvm/src/jvm.c jvm.c@endlink or it is referenced
+ *       by a function that is called to initialize not only the JVM
+ *       but a utility.  For example, see
+ *       @link #HEAP_INIT() HEAP_INIT()@endlink.  This function is
+ *       needed to initialize all utilities as well as the JVM.
+ *       An <b><code>(rboolean *)</code></b> is passed as a parameter
+ *       to functions such as this with the flag local to that utility.
+ *
  */
 
 /*@{ */ /* Begin grouped definitions */
@@ -1295,14 +1368,11 @@
 extern rboolean jvm_thread_initialized;
 extern rboolean jvm_class_initialized;
 extern rboolean jvm_object_initialized;
-extern rboolean jvm_argv_initialized;
 extern rboolean jvm_classpath_initialized;
-extern rboolean jvm_tmparea_initialized;
-extern rboolean jvm_heap_initialized;
-extern rboolean jvm_model_initialized;
 
 /*@} */ /* End of grouped definitions */
 
+
 /*!
  * @name Temporary disk area script support
  *
@@ -1350,17 +1420,29 @@
 
 #ifdef CONFIG_WINDOWS
 
+/*!
+ * @deprecated Only put in place for initial testing.
+ */
 #define JVMCFG_JARFILE_DATA_EXTRACT_SCRIPT \
     ".\\jjdes.bat %s %s %s %c %s %s "
 
+/*!
+ * @deprecated Only put in place for initial testing.
+ */
 #define JVMCFG_JARFILE_MANIFEST_EXTRACT_SCRIPT \
     "jjmes %S %S %S"
 
 #else
 
+/*!
+ * @deprecated Only put in place for initial testing.
+ */
 #define JVMCFG_JARFILE_DATA_EXTRACT_SCRIPT \
     "chdir %s; %s/bin/jar -xf %s%c%s %s; chmod -R +w ."
 
+/*!
+ * @deprecated Only put in place for initial testing.
+ */
 #define JVMCFG_JARFILE_MANIFEST_EXTRACT_SCRIPT \
     "chdir %s; %s/bin/jar -xf %s; chmod -R +w ."
 



Mime
View raw message