harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From telli...@apache.org
Subject svn commit: r382065 [2/10] - in /incubator/harmony/enhanced/classlib/trunk: modules/security/make/ modules/security/make/native/linux/ modules/security/make/native/windows/ native-src/ native-src/linux.IA32/ native-src/linux.IA32/archive/ native-src/li...
Date Wed, 01 Mar 2006 15:43:11 GMT
Modified: incubator/harmony/enhanced/classlib/trunk/native-src/linux.IA32/zlib/makefile
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/linux.IA32/zlib/makefile?rev=382065&r1=382064&r2=382065&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/linux.IA32/zlib/makefile (original)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/linux.IA32/zlib/makefile Wed Mar  1 07:42:53 2006
@@ -18,29 +18,13 @@
 
 include ../makefile.include
 
-DLLFILENAME=libhyzlib.so# declaration
-
-DLLNAME=../libhyzlib.so# declaration
-
-LIBNAME=hyzlib# declaration
-
-LIBPATH=../lib/# declaration
-
-CFLAGS=-fpic -O1 -march=pentium3 -DLINUX -D_REENTRANT -DIPv6_FUNCTION_SUPPORT -DHYX86  -I../include -I. $(VMDEBUG)
-
+CFLAGS += -fpic
 
 BUILDFILES = \
-	zlib_copyright.o dist/adler32.o dist/compress.o dist/crc32.o \
-	dist/deflate.o dist/infback.o dist/inffast.o dist/inflate.o \
-	dist/inftrees.o dist/trees.o dist/uncompr.o dist/zutil.o
-
-all: $(DLLNAME)
+	$(SHAREDSUB)zlib_copyright.o dist/adler32.o dist/compress.o \
+	dist/crc32.o dist/deflate.o dist/infback.o dist/inffast.o \
+	dist/inflate.o dist/inftrees.o dist/trees.o dist/uncompr.o dist/zutil.o
 
-$(DLLNAME): $(BUILDFILES)
-	$(DLL_LD) -shared -Wl,--version-script,$(LIBNAME).exp \
-	-Wl,-soname=$(DLLFILENAME) $(VMLINK) -L.  -o $(DLLNAME) \
-	$(BUILDFILES) -Xlinker --start-group -Xlinker --end-group  -lc -lm -ldl
+DLLNAME = ../libhyzlib.so
 
-clean:
-	-rm -f $(BUILDFILES)
-	-rm -f $(DLLNAME)
+include ../rules.mk

Propchange: incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Mar  1 07:42:53 2006
@@ -0,0 +1 @@
+*.obj

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/adler32.c
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/adler32.c?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/adler32.c (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/adler32.c Wed Mar  1 07:42:53 2006
@@ -0,0 +1,45 @@
+/* Copyright 1998, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "jcl.h"
+#include "zconf.h"
+uLong adler32 PROTOTYPE ((uLong crc, const Bytef * buf, uInt size));
+
+jlong JNICALL
+Java_java_util_zip_Adler32_updateImpl (JNIEnv * env, jobject recv,
+                                       jbyteArray buf, int off, int len,
+                                       jlong crc)
+{
+  PORT_ACCESS_FROM_ENV (env);
+
+  jbyte *b;
+  jboolean isCopy;
+  jlong result;
+
+  b = (*env)->GetPrimitiveArrayCritical (env, buf, &isCopy);
+  result = (jlong) adler32 ((uLong) crc, (Bytef *) (b + off), (uInt) len);
+  (*env)->ReleasePrimitiveArrayCritical (env, buf, b, JNI_ABORT);
+
+  return result;
+}
+
+jlong JNICALL
+Java_java_util_zip_Adler32_updateByteImpl (JNIEnv * env, jobject recv,
+                                           jint val, jlong crc)
+{
+  PORT_ACCESS_FROM_ENV (env);
+
+  return adler32 ((uLong) crc, (Bytef *) (&val), 1);
+}

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/archive_copyright.c
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/archive_copyright.c?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/archive_copyright.c (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/archive_copyright.c Wed Mar  1 07:42:53 2006
@@ -0,0 +1,20 @@
+/* Copyright 1991, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* A copyright string included in each DLL and executable */
+
+const char hyCopyright[] =
+  "(c) Copyright 1991, 2005 The Apache Software Foundation or its licensors, as applicable.";
+

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/archiveglob.c
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/archiveglob.c?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/archiveglob.c (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/archiveglob.c Wed Mar  1 07:42:53 2006
@@ -0,0 +1,142 @@
+/* Copyright 2004, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* HarmonyDoxygen */
+/**
+ * @file
+ * @ingroup HarmonyNatives
+ * @brief Harmony Archive natives initialization API.
+ */
+
+#include "jcl.h"
+#include "jclglob.h"
+#include "zip.h"
+
+static UDATA keyInitCount = 0;
+
+void *JCL_ID_CACHE = NULL;
+
+static void freeReferences (JNIEnv * env);
+
+/**
+ * This DLL is being loaded, do any initialization required.
+ * This may be called more than once.
+ */
+jint JNICALL
+JNI_OnLoad (JavaVM * vm, void *reserved)
+{
+  JniIDCache *idCache;
+  JNIEnv *env;
+  void *keyInitCountPtr = GLOBAL_DATA (keyInitCount);
+  void **jclIdCache = GLOBAL_DATA (JCL_ID_CACHE);
+
+  if ((*vm)->GetEnv (vm, (void **) &env, JNI_VERSION_1_2) == JNI_OK)
+    {
+      PORT_ACCESS_FROM_ENV (env);
+
+      if (HY_VMLS_FNTBL (env)->
+          HYVMLSAllocKeys (env, keyInitCountPtr, jclIdCache, NULL))
+        {
+          goto fail;
+        }
+
+      /* This allocate must actually be done by hymem_allocate_memory. */
+      idCache = (JniIDCache *) hymem_allocate_memory (sizeof (JniIDCache));
+      if (!idCache)
+        goto fail2;
+
+      memset (idCache, 0, sizeof (JniIDCache));
+      HY_VMLS_SET (env, *jclIdCache, idCache);
+
+      /* Attach to the common library */
+      if (JNI_OK != ClearLibAttach (env))
+        {
+          goto fail2;
+        }
+
+      return JNI_VERSION_1_2;
+    }
+
+fail2:
+  HY_VMLS_FNTBL (env)->HYVMLSFreeKeys (env, keyInitCountPtr, jclIdCache, NULL);
+fail:
+  return 0;
+}
+
+/**
+ * This DLL is being unloaded, do any clean up required.
+ * This may be called more than once!!
+ */
+void JNICALL
+JNI_OnUnload (JavaVM * vm, void *reserved)
+{
+  JNIEnv *env;
+  void *keyInitCountPtr = GLOBAL_DATA (keyInitCount);
+  void **jclIdCache = GLOBAL_DATA (JCL_ID_CACHE);
+
+  if ((*vm)->GetEnv (vm, (void **) &env, JNI_VERSION_1_2) == JNI_OK)
+    {
+      JniIDCache *idCache = (JniIDCache *) HY_VMLS_GET (env, *jclIdCache);
+
+      if (idCache)
+        {
+          JCLZipFileLink *zipfileHandles;
+          JCLZipFile *jclZipFile;
+
+          PORT_ACCESS_FROM_ENV (env);
+
+          /* Detach from the common library */
+          ClearLibDetach (env);
+
+          /* Close and free the HyZipFile handles */
+          zipfileHandles = JCL_CACHE_GET (env, zipfile_handles);
+          if (zipfileHandles != NULL)
+            {
+              jclZipFile = zipfileHandles->next;
+              while (jclZipFile != NULL)
+                {
+                  JCLZipFile *next = jclZipFile->next;
+                  zip_closeZipFile (PORTLIB, &jclZipFile->hyZipFile);
+                  jclmem_free_memory (env, jclZipFile);
+                  jclZipFile = next;
+                }
+              jclmem_free_memory (env, zipfileHandles);
+            }
+
+          /* Free any global references */
+          freeReferences (env);
+
+          /* Free VMLS keys */
+          idCache = (JniIDCache *) HY_VMLS_GET (env, *jclIdCache);
+          HY_VMLS_FNTBL (env)->HYVMLSFreeKeys (env, keyInitCountPtr,
+                                              jclIdCache, NULL);
+          hymem_free_memory (idCache);
+        }
+    }
+}
+
+/**
+ * @internal
+ */
+static void
+freeReferences (JNIEnv * env)
+{
+  jclass classRef;
+
+  /* clean up class references */
+  classRef = JCL_CACHE_GET (env, CLS_java_util_zip_ZipEntry);
+  if (classRef)
+    (*env)->DeleteWeakGlobalRef (env, (jweak) classRef);
+}

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/inflater.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/inflater.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/inflater.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/inflater.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,63 @@
+/* Copyright 1998, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if !defined(inflater_h)
+#define inflater_h
+
+#include "zlib.h"
+typedef struct JCLZipStream
+{
+  U_8 *inaddr;
+  U_8 *dict;
+  z_stream *stream;
+} JCLZipStream;
+
+void zfree PROTOTYPE ((void *opaque, void *address));
+void *zalloc PROTOTYPE ((void *opaque, U_32 items, U_32 size));
+void JNICALL Java_java_util_zip_Inflater_endImpl (JNIEnv * env, jobject recv,
+                                                  jlong handle);
+void JNICALL Java_java_util_zip_Inflater_setInputImpl (JNIEnv * env,
+                                                       jobject recv,
+                                                       jbyteArray buf,
+                                                       jint off, jint len,
+                                                       jlong handle);
+jint JNICALL Java_java_util_zip_Inflater_inflateImpl (JNIEnv * env,
+                                                      jobject recv,
+                                                      jbyteArray buf, int off,
+                                                      int len, jlong handle);
+void JNICALL Java_java_util_zip_Inflater_setDictionaryImpl (JNIEnv * env,
+                                                            jobject recv,
+                                                            jbyteArray dict,
+                                                            int off, int len,
+                                                            jlong handle);
+void JNICALL Java_java_util_zip_Inflater_oneTimeInitialization (JNIEnv * env,
+                                                                jclass clazz);
+void JNICALL Java_java_util_zip_Inflater_resetImpl (JNIEnv * env,
+                                                    jobject recv,
+                                                    jlong handle);
+int JNICALL Java_java_util_zip_Inflater_getTotalOutImpl (JNIEnv * env,
+                                                         jobject recv,
+                                                         jlong handle);
+jlong JNICALL Java_java_util_zip_Inflater_createStream (JNIEnv * env,
+                                                        jobject recv,
+                                                        jboolean noHeader);
+int JNICALL Java_java_util_zip_Inflater_getTotalInImpl (JNIEnv * env,
+                                                        jobject recv,
+                                                        jlong handle);
+jint JNICALL Java_java_util_zip_Inflater_getAdlerImpl (JNIEnv * env,
+                                                       jobject recv,
+                                                       jlong handle);
+
+#endif /* inflater_h */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/jclcrc32.c
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/jclcrc32.c?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/jclcrc32.c (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/jclcrc32.c Wed Mar  1 07:42:53 2006
@@ -0,0 +1,42 @@
+/* Copyright 1998, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "jcl.h"
+#include "zconf.h"
+
+uLong crc32 PROTOTYPE ((uLong crc, const Bytef * buf, uInt size));
+
+jlong JNICALL
+Java_java_util_zip_CRC32_updateImpl (JNIEnv * env, jobject recv,
+                                     jbyteArray buf, int off, int len,
+                                     jlong crc)
+{
+  jbyte *b;
+  jlong result;
+
+  b = ((*env)->GetPrimitiveArrayCritical (env, buf, 0));
+  if (b == NULL)
+    return -1;
+  result = crc32 ((uLong) crc, (Bytef *) (b + off), (uInt) len);
+  ((*env)->ReleasePrimitiveArrayCritical (env, buf, b, JNI_ABORT));
+  return result;
+}
+
+jlong JNICALL
+Java_java_util_zip_CRC32_updateByteImpl (JNIEnv * env, jobject recv,
+                                         jbyte val, jlong crc)
+{
+  return crc32 ((uLong) crc, (Bytef *) (&val), 1);
+}

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/jclglob.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/jclglob.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/jclglob.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/jclglob.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,46 @@
+/* Copyright 2004, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if !defined(jclglob_h)
+#define jclglob_h
+
+#include "jcl.h"
+#include "zip.h"
+
+extern void *Archive_JCL_ID_CACHE;
+
+#define JCL_ID_CACHE Archive_JCL_ID_CACHE
+
+typedef struct ArchiveJniIDCache
+{
+  jfieldID FID_java_util_zip_ZipFile_descriptor;
+  jfieldID FID_java_util_zip_ZipFile_nextEntryPointer;
+  jfieldID FID_java_util_zip_Deflater_inRead;
+  jfieldID FID_java_util_zip_Deflater_finished;
+  jfieldID FID_java_util_zip_Inflater_inRead;
+  jfieldID FID_java_util_zip_Inflater_finished;
+  jfieldID FID_java_util_zip_Inflater_needsDictionary;
+  jmethodID MID_java_util_zip_ZipEntry_init;
+
+  jclass CLS_java_util_zip_ZipEntry;
+  JCLZipFileLink *zipfile_handles;
+} ArchiveJniIDCache;
+
+#define JniIDCache ArchiveJniIDCache
+
+/* Now that the module-specific defines are in place, include the shared file */
+#include "libglob.h"
+
+#endif /* jclglob_h */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/zip.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/zip.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/zip.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/archive/zip.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,35 @@
+/* Copyright 1998, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if !defined(zip_h)
+#define zip_h
+
+#include "zipsup.h"
+
+typedef struct JCLZipFile
+{
+  struct JCLZipFile *last;
+  struct JCLZipFile *next;
+  HyZipFile hyZipFile;
+} JCLZipFile;
+
+/* Fake JCLZipFile entry. last, next must be in the same position as JCLZipFile */
+typedef struct JCLZipFileLink
+{
+  JCLZipFile *last;
+  JCLZipFile *next;
+} JCLZipFileLink;
+
+#endif /* zip_h */

Propchange: incubator/harmony/enhanced/classlib/trunk/native-src/shared/auth/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Mar  1 07:42:53 2006
@@ -0,0 +1 @@
+*.obj

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/auth/auth_copyright.c
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/auth/auth_copyright.c?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/auth/auth_copyright.c (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/auth/auth_copyright.c Wed Mar  1 07:42:53 2006
@@ -0,0 +1,19 @@
+/* Copyright 2006 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* A copyright string included in each DLL and executable */
+
+const char hyCopyright[] =
+  "(c) Copyright 2005, 2006 The Apache Software Foundation or its licensors, as applicable.";

Propchange: incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Mar  1 07:42:53 2006
@@ -0,0 +1 @@
+*.obj

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/iohelp.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/iohelp.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/iohelp.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/iohelp.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,40 @@
+/* Copyright 1998, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if !defined(iohelp_h)
+#define iohelp_h
+#include <string.h>
+#include "jcl.h"
+/* DIR_SEPARATOR is defined in hycomp.h */
+#define jclSeparator DIR_SEPARATOR
+void *getJavaIoFileDescriptorContentsAsPointer (JNIEnv * env, jobject fd);
+void throwNewOutOfMemoryError (JNIEnv * env, char *message);
+jint ioh_readcharImpl (JNIEnv * env, jobject recv, IDATA descriptor);
+void throwJavaIoIOException (JNIEnv * env, char *message);
+void throwJavaIoIOExceptionClosed (JNIEnv * env);
+void ioh_convertToPlatform (char *path);
+jint new_ioh_available (JNIEnv * env, jobject recv, jfieldID fdFID);
+void throwNPException (JNIEnv * env, char *message);
+void setJavaIoFileDescriptorContentsAsPointer (JNIEnv * env, jobject fd,
+                                               void *value);
+void ioh_writebytesImpl (JNIEnv * env, jobject recv, jbyteArray buffer,
+                         jint offset, jint count, IDATA descriptor);
+char *ioLookupErrorString (JNIEnv * env, I_32 anErrorNum);
+void ioh_writecharImpl (JNIEnv * env, jobject recv, jint c, IDATA descriptor);
+jint ioh_readbytesImpl (JNIEnv * env, jobject recv, jbyteArray buffer,
+                        jint offset, jint count, IDATA descriptor);
+void new_ioh_close (JNIEnv * env, jobject recv, jfieldID fdFID);
+void throwIndexOutOfBoundsException (JNIEnv * env);
+#endif /* iohelp_h */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/jcl.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/jcl.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/jcl.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/jcl.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,20 @@
+/* Copyright 2004, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if !defined(jcl_h)
+#define jcl_h
+#define USING_VMI
+#include "vmi.h"
+#endif /* jcl_h */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/jclglob.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/jclglob.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/jclglob.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/jclglob.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,30 @@
+/* Copyright 2004, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if !defined(jclglob_h)
+#define jclglob_h
+#include "jcl.h"
+extern void *Lib_JCL_ID_CACHE;
+#define JCL_ID_CACHE Lib_JCL_ID_CACHE
+typedef struct LibJniIDCache
+{
+
+  jfieldID FID_java_io_FileDescriptor_descriptor;
+  int attachCount;
+} LibJniIDCache;
+#define JniIDCache LibJniIDCache
+/* Now that the module-specific defines are in place, include the shared file */
+#include "libglob.h"
+#endif /* jclglob_h */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/libglob.c
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/libglob.c?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/libglob.c (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/libglob.c Wed Mar  1 07:42:53 2006
@@ -0,0 +1,114 @@
+/* Copyright 2004, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* HarmonyDoxygen */
+/**
+ * @file
+ * @ingroup HarmonyNatives
+ * @brief Harmony Common helpers initialization API.
+ */
+
+#include "jcl.h"
+#include "jclglob.h"
+
+static UDATA keyInitCount = 0;
+
+void *JCL_ID_CACHE = NULL;
+
+static void freeReferences (JNIEnv * env);
+
+/**
+ * A DLL is attaching to the common code, do any initialization required.
+ * This may be called more than once.
+ */
+jint JNICALL
+ClearLibAttach (JNIEnv * env)
+{
+  void *keyInitCountPtr = GLOBAL_DATA (keyInitCount);
+  void **jclIdCache = GLOBAL_DATA (JCL_ID_CACHE);
+  JniIDCache *idCache;
+
+  PORT_ACCESS_FROM_ENV (env);
+
+  if (HY_VMLS_FNTBL (env)->
+      HYVMLSAllocKeys (env, keyInitCountPtr, jclIdCache, NULL))
+    {
+      goto fail;
+    }
+
+  idCache = (JniIDCache *) HY_VMLS_GET (env, *jclIdCache);
+  if (idCache == NULL)
+    {
+
+      /* This allocate must actually be done by hymem_allocate_memory. */
+      idCache = (JniIDCache *) hymem_allocate_memory (sizeof (JniIDCache));
+      if (!idCache)
+        goto fail2;
+
+      memset (idCache, 0, sizeof (JniIDCache));
+      HY_VMLS_SET (env, *jclIdCache, idCache);
+    }
+
+  /* Increment the reference count. */
+  idCache->attachCount++;
+
+  return JNI_OK;
+
+fail2:
+  HY_VMLS_FNTBL (env)->HYVMLSFreeKeys (env, keyInitCountPtr, jclIdCache, NULL);
+fail:
+  return JNI_ERR;
+}
+
+/**
+ * A DLL is detaching from the common code, do any clean up required.
+ * This may be called more than once!!
+ */
+void JNICALL
+ClearLibDetach (JNIEnv * env)
+{
+  void *keyInitCountPtr = GLOBAL_DATA (keyInitCount);
+  void **jclIdCache = GLOBAL_DATA (JCL_ID_CACHE);
+  JniIDCache *idCache;
+
+  PORT_ACCESS_FROM_ENV (env);
+
+  idCache = (JniIDCache *) HY_VMLS_GET (env, *jclIdCache);
+  if (idCache)
+    {
+
+      /* Decrement the reference count and free if necessary. */
+      if (--idCache->attachCount < 1)
+        {
+
+          /* Had to move some of the code out of this function to get the IBM C compiler to generate a valid DLL */
+          freeReferences (env);
+
+          /* Free VMLS keys */
+          idCache = (JniIDCache *) HY_VMLS_GET (env, *jclIdCache);
+          HY_VMLS_FNTBL (env)->HYVMLSFreeKeys (env, keyInitCountPtr,
+                                              jclIdCache, NULL);
+          hymem_free_memory (idCache);
+        }
+    }
+}
+
+/**
+ * @internal
+ */
+static void
+freeReferences (JNIEnv * env)
+{
+}

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/libglob.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/libglob.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/libglob.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/common/libglob.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,30 @@
+/* Copyright 2004, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if !defined(libglob_h)
+#define libglob_h
+#include "jcl.h"
+#include "hyvmls.h"
+#define JCL_CACHE_GET(env,x) \
+	(((JniIDCache*) HY_VMLS_GET((env), JCL_ID_CACHE))->x)
+#define JCL_CACHE_SET(env,x,v) \
+	(((JniIDCache*) HY_VMLS_GET((env), JCL_ID_CACHE))->x = (v))
+#define jclmem_allocate_memory(env, byteAmount) \
+	hymem_allocate_memory(byteAmount)
+#define jclmem_free_memory(env, buf) \
+	hymem_free_memory(buf)
+jint JNICALL ClearLibAttach (JNIEnv * env);
+void JNICALL ClearLibDetach (JNIEnv * env);
+#endif /* libglob_h */

Propchange: incubator/harmony/enhanced/classlib/trunk/native-src/shared/fdlibm/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Mar  1 07:42:53 2006
@@ -0,0 +1 @@
+*.obj

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/fdlibm/fdlibm.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/fdlibm/fdlibm.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/fdlibm/fdlibm.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/fdlibm/fdlibm.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,228 @@
+
+/* @(#)fdlibm.h 1.5 95/01/18 */
+/*
+ * ====================================================
+ * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
+ *
+ * Developed at SunSoft, a Sun Microsystems, Inc. business.
+ * Permission to use, copy, modify, and distribute this
+ * software is freely granted, provided that this notice 
+ * is preserved.
+ * ====================================================
+ */
+
+#include "hymagic.h"
+
+#ifdef __NEWVALID	/* special setup for Sun test regime */
+#if defined(i386) || defined(i486) || \
+	defined(intel) || defined(x86) || defined(i86pc)
+#define HY_FDLIBM_LITTLE_ENDIAN
+#endif
+#endif
+
+#ifdef HY_FDLIBM_LITTLE_ENDIAN
+#define __HI(x) *(1+(int*)&x)
+#define __LO(x) *(int*)&x
+#define __HIp(x) *(1+(int*)x)
+#define __LOp(x) *(int*)x
+#else
+#define __HI(x) *(int*)&x
+#define __LO(x) *(1+(int*)&x)
+#define __HIp(x) *(int*)x
+#define __LOp(x) *(1+(int*)x)
+#endif
+
+#if defined(__STDC__) || defined(OS2)
+#define	__P(p)	p
+#else
+#define	__P(p)	()
+#endif
+
+/*
+ * ANSI/POSIX
+ */
+
+extern int signgam;
+
+#define	MAXFLOAT	((float)3.40282346638528860e+38)
+
+enum fdversion {fdlibm_ieee = -1, fdlibm_svid, fdlibm_xopen, fdlibm_posix};
+
+/* Local Change -- insist that only the IEEE version is built. See also s_lib_version.c */
+#ifndef HY_FIXED_VERSION
+
+#define _LIB_VERSION_TYPE enum fdversion
+#define _LIB_VERSION _fdlib_version  
+
+/* if global variable _LIB_VERSION is not desirable, one may 
+ * change the following to be a constant by: 
+ *	#define _LIB_VERSION_TYPE const enum version
+ * In that case, after one initializes the value _LIB_VERSION (see
+ * s_lib_version.c) during compile time, it cannot be modified
+ * in the middle of a program
+ */ 
+extern  _LIB_VERSION_TYPE  _LIB_VERSION;
+
+#else
+#define _LIB_VERSION HY_FIXED_VERSION
+#endif /* HY_FIXED_VERSION */
+
+#define _IEEE_  fdlibm_ieee
+#define _SVID_  fdlibm_svid
+#define _XOPEN_ fdlibm_xopen
+#define _POSIX_ fdlibm_posix
+
+struct exception {
+	int type;
+	char *name;
+	double arg1;
+	double arg2;
+	double retval;
+};
+
+#define	HUGE		MAXFLOAT
+
+/* 
+ * set X_TLOSS = pi*2**52, which is possibly defined in <values.h>
+ * (one may replace the following line by "#include <values.h>")
+ */
+
+#define X_TLOSS		1.41484755040568800000e+16 
+
+#define	DOMAIN		1
+#define	SING		2
+#define	OVERFLOW	3
+#define	UNDERFLOW	4
+#define	TLOSS		5
+#define	PLOSS		6
+
+/*
+ * ANSI/POSIX
+ */
+extern double acos __P((double));
+extern double asin __P((double));
+extern double atan __P((double));
+extern double atan2 __P((double, double));
+extern double cos __P((double));
+extern double sin __P((double));
+extern double tan __P((double));
+
+extern double cosh __P((double));
+extern double sinh __P((double));
+extern double tanh __P((double));
+
+extern double exp __P((double));
+extern double frexp __P((double, int *));
+extern double ldexp __P((double, int));
+extern double log __P((double));
+extern double log10 __P((double));
+extern double modf __P((double, double *));
+
+extern double pow __P((double, double));
+extern double sqrt __P((double));
+
+extern double ceil __P((double));
+extern double fabs __P((double));
+extern double floor __P((double));
+extern double fmod __P((double, double));
+
+extern double erf __P((double));
+extern double erfc __P((double));
+extern double gamma __P((double));
+extern double hypot __P((double, double));
+extern int isnan __P((double));
+extern int finite __P((double));
+extern double j0 __P((double));
+extern double j1 __P((double));
+extern double jn __P((int, double));
+extern double lgamma __P((double));
+extern double y0 __P((double));
+extern double y1 __P((double));
+extern double yn __P((int, double));
+
+extern double acosh __P((double));
+extern double asinh __P((double));
+extern double atanh __P((double));
+extern double cbrt __P((double));
+extern double logb __P((double));
+extern double nextafter __P((double, double));
+extern double remainder __P((double, double));
+#ifdef _SCALB_INT
+extern double scalb __P((double, int));
+#else
+extern double scalb __P((double, double));
+#endif
+
+extern int matherr __P((struct exception *));
+
+/*
+ * IEEE Test Vector
+ */
+extern double significand __P((double));
+
+/*
+ * Functions callable from C, intended to support IEEE arithmetic.
+ */
+extern double copysign __P((double, double));
+extern int ilogb __P((double));
+extern double rint __P((double));
+extern double scalbn __P((double, int));
+
+/*
+ * BSD math library entry points
+ */
+extern double expm1 __P((double));
+extern double log1p __P((double));
+
+/*
+ * Reentrant version of gamma & lgamma; passes signgam back by reference
+ * as the second argument; user must allocate space for signgam.
+ */
+#ifdef _REENTRANT
+extern double gamma_r __P((double, int *));
+extern double lgamma_r __P((double, int *));
+#endif	/* _REENTRANT */
+
+/* ieee style elementary functions */
+extern double __ieee754_sqrt __P((double));			
+extern double __ieee754_acos __P((double));			
+extern double __ieee754_acosh __P((double));			
+extern double __ieee754_log __P((double));			
+extern double __ieee754_atanh __P((double));			
+extern double __ieee754_asin __P((double));			
+extern double __ieee754_atan2 __P((double,double));			
+extern double __ieee754_exp __P((double));
+extern double __ieee754_cosh __P((double));
+extern double __ieee754_fmod __P((double,double));
+extern double __ieee754_pow __P((double,double));
+extern double __ieee754_lgamma_r __P((double,int *));
+extern double __ieee754_gamma_r __P((double,int *));
+extern double __ieee754_lgamma __P((double));
+extern double __ieee754_gamma __P((double));
+extern double __ieee754_log10 __P((double));
+extern double __ieee754_sinh __P((double));
+extern double __ieee754_hypot __P((double,double));
+extern double __ieee754_j0 __P((double));
+extern double __ieee754_j1 __P((double));
+extern double __ieee754_y0 __P((double));
+extern double __ieee754_y1 __P((double));
+extern double __ieee754_jn __P((int,double));
+extern double __ieee754_yn __P((int,double));
+extern double __ieee754_remainder __P((double,double));
+extern int    __ieee754_rem_pio2 __P((double,double*));
+#ifdef _SCALB_INT
+extern double __ieee754_scalb __P((double,int));
+#else
+extern double __ieee754_scalb __P((double,double));
+#endif
+
+/* fdlibm kernel function */
+extern double __kernel_standard __P((double,double,int));	
+extern double __kernel_sin __P((double,double,int));
+extern double __kernel_cos __P((double,double));
+extern double __kernel_tan __P((double,double,int));
+#ifdef OS2
+extern int    __kernel_rem_pio2 __P((double*,double*,int,int,int,int*));
+#else
+extern int    __kernel_rem_pio2 __P((double*,double*,int,int,int,const int*));
+#endif

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/fdlibm/hymagic.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/fdlibm/hymagic.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/fdlibm/hymagic.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/fdlibm/hymagic.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,100 @@
+/* Copyright 1998, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/*
+	Define platform endianness
+ */
+ 
+#define HYVM_ENV_LITTLE_ENDIAN
+
+/* Insist that only the IEEE version is built. See also fdlibm.h */
+#define HY_FIXED_VERSION fdlibm_ieee
+
+/*	FDLIBM only uses endian for word order, not byte order.
+	If this platform does not use the standard word order for doubles
+	then pretend we are the other endian.
+*/
+#ifdef HYVM_ENV_LITTLE_ENDIAN
+#ifdef HY_PLATFORM_DOUBLE_ORDER
+#define HY_FDLIBM_LITTLE_ENDIAN
+#endif
+#else
+#ifndef HY_PLATFORM_DOUBLE_ORDER
+#define HY_FDLIBM_LITTLE_ENDIAN
+#endif
+#endif
+
+
+#define acos fdlibm_acos
+#define asin fdlibm_asin
+#define atan fdlibm_atan
+#define atan2 fdlibm_atan2
+#define cos fdlibm_cos
+#define sin fdlibm_sin
+#define tan fdlibm_tan
+
+#define cosh fdlibm_cosh
+#define sinh fdlibm_sinh
+#define tanh fdlibm_tanh
+
+#define exp fdlibm_exp
+#define frexp fdlibm_frexp
+#define ldexp fdlibm_ldexp
+#define log fdlibm_log
+#define log10 fdlibm_log10
+#define modf fdlibm_modf
+
+#define pow fdlibm_pow
+#define sqrt fdlibm_sqrt
+
+#define ceil fdlibm_ceil
+#define fabs fdlibm_fabs
+#define floor fdlibm_floor
+#define fmod fdlibm_fmod
+
+#define erf fdlibm_erf
+#define erfc fdlibm_erfc
+#define gamma fdlibm_gamma
+#define hypot fdlibm_hypot
+#define isnan fdlibm_isnan
+#define finite fdlibm_finite
+#define j0 fdlibm_j0
+#define j1 fdlibm_j1
+#define jn fdlibm_jn
+#define lgamma fdlibm_lgamma
+#define y0 fdlibm_y0
+#define y1 fdlibm_y1
+#define yn fdlibm_yn
+
+#define acosh fdlibm_acosh
+#define asinh fdlibm_asinh
+#define atanh fdlibm_atanh
+#define cbrt fdlibm_cbrt
+#define logb fdlibm_logb
+#define nextafter fdlibm_nextafter
+#define remainder fdlibm_remainder
+#define scalb fdlibm_scalb
+
+#define matherr fdlibm_matherr
+#define significand fdlibm_significand
+#define copysign fdlibm_copysign
+#define ilogb fdlibm_ilogb
+#define rint fdlibm_rint
+#define scalbn fdlibm_scalbn
+#define expm1 fdlibm_expm1
+#define log1p fdlibm_log1p
+#define gamma_r fdlibm_gamma_r
+#define lgamma_r fdlibm_lgamma_r
+

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/fdlibm/s_lib_version.c
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/fdlibm/s_lib_version.c?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/fdlibm/s_lib_version.c (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/fdlibm/s_lib_version.c Wed Mar  1 07:42:53 2006
@@ -0,0 +1,41 @@
+
+/* @(#)s_lib_version.c 1.3 95/01/18 */
+/*
+ * ====================================================
+ * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
+ *
+ * Developed at SunSoft, a Sun Microsystems, Inc. business.
+ * Permission to use, copy, modify, and distribute this
+ * software is freely granted, provided that this notice 
+ * is preserved.
+ * ====================================================
+ */
+
+/*
+ * MACRO for standards
+ */
+
+#include "fdlibm.h"
+
+/*
+ * define and initialize _LIB_VERSION
+ */
+
+/* Local Change -- insist that only the IEEE version is built. See also fdlibm.h */
+#ifndef HY_FIXED_VERSION
+
+#ifdef _POSIX_MODE
+_LIB_VERSION_TYPE _LIB_VERSION = _POSIX_;
+#else
+#ifdef _XOPEN_MODE
+_LIB_VERSION_TYPE _LIB_VERSION = _XOPEN_;
+#else
+#ifdef _SVID3_MODE
+_LIB_VERSION_TYPE _LIB_VERSION = _SVID_;
+#else					/* default _IEEE_MODE */
+_LIB_VERSION_TYPE _LIB_VERSION = _IEEE_;
+#endif
+#endif
+#endif
+
+#endif /* !HY_FIXED_VERSION */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/fltconst.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/fltconst.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/fltconst.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/fltconst.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,133 @@
+/* Copyright 1991, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if !defined(fltconst_h)
+#define fltconst_h
+
+#include "hycomp.h" 
+/* IEEE floats consist of: sign bit, exponent field, significand field
+	single:  31 = sign bit, 30..23 = exponent (8 bits), 22..0 = significand (23 bits)
+	double:  63 = sign bit, 62..52 = exponent (11 bits), 51..0 = significand (52 bits)
+	inf				==	(all exponent bits set) and (all mantissa bits clear)
+	nan				==	(all exponent bits set) and (at least one mantissa bit set)
+	finite			==	(at least one exponent bit clear)
+	zero      		==	(all exponent bits clear) and (all mantissa bits clear)
+	denormal		==	(all exponent bits clear) and (at least one mantissa bit set)
+	positive		==	sign bit clear
+	negative		==	sign bit set
+*/
+#define	MAX_U32_DOUBLE	(ESDOUBLE) (4294967296.0)	/* 2^32 */
+#define	MAX_U32_SINGLE		(ESSINGLE) (4294967296.0)	/* 2^32 */
+#define HY_POS_PI      (ESDOUBLE)(3.141592653589793)
+#define DOUBLE_LO_OFFSET		0
+#define DOUBLE_HI_OFFSET			1
+
+#define LONG_LO_OFFSET			0
+#define LONG_HI_OFFSET			1
+#define RETURN_FINITE				0
+#define RETURN_NAN					1
+#define RETURN_POS_INF			2
+#define RETURN_NEG_INF			3
+#define DOUBLE_SIGN_MASK_HI				0x80000000
+#define DOUBLE_EXPONENT_MASK_HI		0x7FF00000
+#define DOUBLE_MANTISSA_MASK_LO		0xFFFFFFFF
+#define DOUBLE_MANTISSA_MASK_HI		0x000FFFFF
+#define SINGLE_SIGN_MASK				0x80000000
+#define SINGLE_EXPONENT_MASK	0x7F800000
+#define SINGLE_MANTISSA_MASK	0x007FFFFF
+#define SINGLE_NAN_BITS				(SINGLE_EXPONENT_MASK | 0x00400000)
+typedef union u64u32dbl_tag {
+	U_64    u64val;
+	U_32    u32val[2];
+    I_32    i32val[2];
+	double  dval;
+} U64U32DBL;
+/* Replace P_FLOAT_HI and P_FLOAT_LOW */
+/* These macros are used to access the high and low 32-bit parts of a double (64-bit) value. */
+#define LOW_U32_FROM_DBL_PTR(dblptr) (((U64U32DBL *)(dblptr))->u32val[DOUBLE_LO_OFFSET])
+#define HIGH_U32_FROM_DBL_PTR(dblptr) (((U64U32DBL *)(dblptr))->u32val[DOUBLE_HI_OFFSET])
+#define LOW_I32_FROM_DBL_PTR(dblptr) (((U64U32DBL *)(dblptr))->i32val[DOUBLE_LO_OFFSET])
+#define HIGH_I32_FROM_DBL_PTR(dblptr) (((U64U32DBL *)(dblptr))->i32val[DOUBLE_HI_OFFSET])
+#define LOW_U32_FROM_DBL(dbl) LOW_U32_FROM_DBL_PTR(&(dbl))
+#define HIGH_U32_FROM_DBL(dbl) HIGH_U32_FROM_DBL_PTR(&(dbl))
+#define LOW_I32_FROM_DBL(dbl) LOW_I32_FROM_DBL_PTR(&(dbl))
+#define HIGH_I32_FROM_DBL(dbl) HIGH_I32_FROM_DBL_PTR(&(dbl))
+#define LOW_U32_FROM_LONG64_PTR(long64ptr) (((U64U32DBL *)(long64ptr))->u32val[LONG_LO_OFFSET])
+#define HIGH_U32_FROM_LONG64_PTR(long64ptr) (((U64U32DBL *)(long64ptr))->u32val[LONG_HI_OFFSET])
+#define LOW_I32_FROM_LONG64_PTR(long64ptr) (((U64U32DBL *)(long64ptr))->i32val[LONG_LO_OFFSET])
+#define HIGH_I32_FROM_LONG64_PTR(long64ptr) (((U64U32DBL *)(long64ptr))->i32val[LONG_HI_OFFSET])
+#define LOW_U32_FROM_LONG64(long64) LOW_U32_FROM_LONG64_PTR(&(long64))
+#define HIGH_U32_FROM_LONG64(long64) HIGH_U32_FROM_LONG64_PTR(&(long64))
+#define LOW_I32_FROM_LONG64(long64) LOW_I32_FROM_LONG64_PTR(&(long64))
+#define HIGH_I32_FROM_LONG64(long64) HIGH_I32_FROM_LONG64_PTR(&(long64))
+#define IS_ZERO_DBL_PTR(dblptr) ((LOW_U32_FROM_DBL_PTR(dblptr) == 0) && ((HIGH_U32_FROM_DBL_PTR(dblptr) == 0) || (HIGH_U32_FROM_DBL_PTR(dblptr) == DOUBLE_SIGN_MASK_HI)))
+#define IS_ONE_DBL_PTR(dblptr) ((HIGH_U32_FROM_DBL_PTR(dblptr) == 0x3ff00000 || HIGH_U32_FROM_DBL_PTR(dblptr) == 0xbff00000) && (LOW_U32_FROM_DBL_PTR(dblptr) == 0))
+#define IS_NAN_DBL_PTR(dblptr) (((HIGH_U32_FROM_DBL_PTR(dblptr) & DOUBLE_EXPONENT_MASK_HI) == DOUBLE_EXPONENT_MASK_HI) && (LOW_U32_FROM_DBL_PTR(dblptr) | (HIGH_U32_FROM_DBL_PTR(dblptr) & DOUBLE_MANTISSA_MASK_HI)))
+#define IS_INF_DBL_PTR(dblptr) (((HIGH_U32_FROM_DBL_PTR(dblptr) & (DOUBLE_EXPONENT_MASK_HI|DOUBLE_MANTISSA_MASK_HI)) == DOUBLE_EXPONENT_MASK_HI) && (LOW_U32_FROM_DBL_PTR(dblptr) == 0))
+#define IS_DENORMAL_DBL_PTR(dblptr) (((HIGH_U32_FROM_DBL_PTR(dblptr) & DOUBLE_EXPONENT_MASK_HI) == 0) && ((HIGH_U32_FROM_DBL_PTR(dblptr) & DOUBLE_MANTISSA_MASK_HI) != 0 || (LOW_U32_FROM_DBL_PTR(dblptr) != 0)))
+#define IS_FINITE_DBL_PTR(dblptr) ((HIGH_U32_FROM_DBL_PTR(dblptr) & DOUBLE_EXPONENT_MASK_HI) < DOUBLE_EXPONENT_MASK_HI)
+#define IS_POSITIVE_DBL_PTR(dblptr) ((HIGH_U32_FROM_DBL_PTR(dblptr) & DOUBLE_SIGN_MASK_HI) == 0)
+#define IS_NEGATIVE_DBL_PTR(dblptr) ((HIGH_U32_FROM_DBL_PTR(dblptr) & DOUBLE_SIGN_MASK_HI) != 0)
+#define IS_NEGATIVE_MAX_DBL_PTR(dblptr) ((HIGH_U32_FROM_DBL_PTR(dblptr) == 0xFFEFFFFF) && (LOW_U32_FROM_DBL_PTR(dblptr) == 0xFFFFFFFF))
+#define IS_ZERO_DBL(dbl) IS_ZERO_DBL_PTR(&(dbl))
+#define IS_ONE_DBL(dbl) IS_ONE_DBL_PTR(&(dbl))
+#define IS_NAN_DBL(dbl) IS_NAN_DBL_PTR(&(dbl))
+#define IS_INF_DBL(dbl) IS_INF_DBL_PTR(&(dbl))
+#define IS_DENORMAL_DBL(dbl) IS_DENORMAL_DBL_PTR(&(dbl))
+#define IS_FINITE_DBL(dbl) IS_FINITE_DBL_PTR(&(dbl))
+#define IS_POSITIVE_DBL(dbl) IS_POSITIVE_DBL_PTR(&(dbl))
+#define IS_NEGATIVE_DBL(dbl) IS_NEGATIVE_DBL_PTR(&(dbl))
+#define IS_NEGATIVE_MAX_DBL(dbl) IS_NEGATIVE_MAX_DBL_PTR(&(dbl))
+#define IS_ZERO_SNGL_PTR(fltptr)  ((*U32P((fltptr)) & (U_32)~SINGLE_SIGN_MASK) == (U_32)0)
+#define IS_ONE_SNGL_PTR(fltptr) ((*U32P((fltptr)) == 0x3f800000) || (*U32P((fltptr)) == 0xbf800000))
+#define IS_NAN_SNGL_PTR(fltptr)  ((*U32P((fltptr)) & (U_32)~SINGLE_SIGN_MASK) > (U_32)SINGLE_EXPONENT_MASK)
+#define IS_INF_SNGL_PTR(fltptr)  ((*U32P((fltptr)) & (U_32)~SINGLE_SIGN_MASK) == (U_32)SINGLE_EXPONENT_MASK)
+#define IS_DENORMAL_SNGL_PTR(fltptr)  (((*U32P((fltptr)) & (U_32)~SINGLE_SIGN_MASK)-(U_32)1) < (U_32)SINGLE_MANTISSA_MASK)
+#define IS_FINITE_SNGL_PTR(fltptr)  ((*U32P((fltptr)) & (U_32)~SINGLE_SIGN_MASK) < (U_32)SINGLE_EXPONENT_MASK)
+#define IS_POSITIVE_SNGL_PTR(fltptr)  ((*U32P((fltptr)) & (U_32)SINGLE_SIGN_MASK) == (U_32)0)
+#define IS_NEGATIVE_SNGL_PTR(fltptr)  ((*U32P((fltptr)) & (U_32)SINGLE_SIGN_MASK) != (U_32)0)
+#define IS_ZERO_SNGL(flt) IS_ZERO_SNGL_PTR(&(flt))
+#define IS_ONE_SNGL(flt) IS_ONE_SNGL_PTR(&(flt))
+#define IS_NAN_SNGL(flt) IS_NAN_SNGL_PTR(&(flt))
+#define IS_INF_SNGL(flt) IS_INF_SNGL_PTR(&(flt))
+#define IS_DENORMAL_SNGL(flt) IS_DENORMAL_SNGL_PTR(&(flt))
+#define IS_FINITE_SNGL(flt) IS_FINITE_SNGL_PTR(&(flt))
+#define IS_POSITIVE_SNGL(flt) IS_POSITIVE_SNGL_PTR(&(flt))
+#define IS_NEGATIVE_SNGL(flt) IS_NEGATIVE_SNGL_PTR(&(flt))
+#define SET_NAN_DBL_PTR(dblptr) HIGH_U32_FROM_DBL_PTR(dblptr) = (DOUBLE_EXPONENT_MASK_HI | 0x00080000); LOW_U32_FROM_DBL_PTR(dblptr) = 0
+#define SET_PZERO_DBL_PTR(dblptr) HIGH_U32_FROM_DBL_PTR(dblptr) = 0; LOW_U32_FROM_DBL_PTR(dblptr) = 0
+#define SET_NZERO_DBL_PTR(dblptr) HIGH_U32_FROM_DBL_PTR(dblptr) = DOUBLE_SIGN_MASK_HI; LOW_U32_FROM_DBL_PTR(dblptr) = 0
+#define SET_PINF_DBL_PTR(dblptr) HIGH_U32_FROM_DBL_PTR(dblptr) = DOUBLE_EXPONENT_MASK_HI; LOW_U32_FROM_DBL_PTR(dblptr) = 0
+#define SET_NINF_DBL_PTR(dblptr) HIGH_U32_FROM_DBL_PTR(dblptr) = (DOUBLE_EXPONENT_MASK_HI | DOUBLE_SIGN_MASK_HI); LOW_U32_FROM_DBL_PTR(dblptr) = 0
+#define SET_NAN_SNGL_PTR(fltptr)  *U32P((fltptr)) = ((U_32)SINGLE_NAN_BITS)
+#define SET_PZERO_SNGL_PTR(fltptr) *U32P((fltptr)) = 0
+#define SET_NZERO_SNGL_PTR(fltptr) *U32P((fltptr)) = SINGLE_SIGN_MASK
+#define SET_PINF_SNGL_PTR(fltptr) *U32P((fltptr)) = SINGLE_EXPONENT_MASK
+#define SET_NINF_SNGL_PTR(fltptr) *U32P((fltptr)) = (SINGLE_EXPONENT_MASK | SINGLE_SIGN_MASK)
+
+/* on some platforms (HP720) we cannot reference an unaligned float.  Build them by hand, one U_32 at a time. */
+#if defined(ATOMIC_FLOAT_ACCESS)
+#define PTR_DOUBLE_STORE(dstPtr, aDoublePtr) HIGH_U32_FROM_DBL_PTR(dstPtr) = HIGH_U32_FROM_DBL_PTR(aDoublePtr); LOW_U32_FROM_DBL_PTR(dstPtr) = LOW_U32_FROM_DBL_PTR(aDoublePtr)
+#define PTR_DOUBLE_VALUE(dstPtr, aDoublePtr) HIGH_U32_FROM_DBL_PTR(aDoublePtr) = HIGH_U32_FROM_DBL_PTR(dstPtr); LOW_U32_FROM_DBL_PTR(aDoublePtr) = LOW_U32_FROM_DBL_PTR(dstPtr)
+#else
+#define PTR_DOUBLE_STORE(dstPtr, aDoublePtr) (*(dstPtr) = *(aDoublePtr))
+#define PTR_DOUBLE_VALUE(dstPtr, aDoublePtr) (*(aDoublePtr) = *(dstPtr))
+#endif
+
+#define STORE_LONG(dstPtr, hi, lo) HIGH_U32_FROM_LONG64_PTR(dstPtr) = (hi); LOW_U32_FROM_LONG64_PTR(dstPtr) = (lo)
+#define PTR_SINGLE_VALUE(dstPtr, aSinglePtr) (*U32P(aSinglePtr) = *U32P(dstPtr))
+#define PTR_SINGLE_STORE(dstPtr, aSinglePtr) *((U_32 *)(dstPtr)) = (*U32P(aSinglePtr))
+
+#endif     /* fltconst_h */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/harmony.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/harmony.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/harmony.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/harmony.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,22 @@
+/* Copyright 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if !defined(harmony_h)
+#define harmony_h
+
+#define USING_VMI
+#include "vmi.h"
+
+#endif     /* harmony_h */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hylib.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hylib.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hylib.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hylib.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,29 @@
+/* Copyright 1991, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if !defined(HYLIB_H)
+#define HYLIB_H
+
+#if defined(__cplusplus)
+extern "C" {
+#endif
+
+#define HY_ZIP_DLL_NAME "hyzlib"
+
+#if defined(__cplusplus)
+}
+#endif
+
+#endif /* HYLIB_H */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hyporterror.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hyporterror.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hyporterror.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hyporterror.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,217 @@
+/* Copyright 1998, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @file
+ * @ingroup Port
+ * @brief Port Library Error Codes
+ *
+ * When an error is reported by the operating system the port library must translate this OS specific error code to a 
+ * portable error code.  All portable error codes are negative numbers.  Not every module of the port library will have
+ * error codes dedicated to it's own use, some will use the generic portable error code values.
+ *
+ * Errors reported by the OS may be recorded by calling the port library functions @ref hyerror.c::hyerror_set_last_error "hyerror_set_last_error()"
+ * or @ref hyerror.c::hyerror_set_last_error_with_message "hyerror_set_last_error_with_message()".  The mapping of the OS specific error
+ * code to a portable error code is the responsibility of the calling module.
+ */
+#if !defined(hyporterror_h)
+#define hyporterror_h
+
+/**
+ * @name Generic Errors
+ * Generic error codes for modules that do not have their own specific errors.  Where possible it is recommended that all
+ * modules that return error codes have their own set
+ *
+ * @internal HYPORT_ERROR* range from -1 to -99 avoid overlap
+ * @{
+ */
+#define HYPORT_ERROR_BASE -1
+#define HYPORT_ERROR_OPFAILED HYPORT_ERROR_BASE
+#define HYPORT_ERROR_EOF HYPORT_ERROR_BASE-1
+#define HYPORT_ERROR_NOPERMISSION HYPORT_ERROR_BASE-2
+#define HYPORT_ERROR_NOTFOUND HYPORT_ERROR_BASE-3
+#define HYPORT_ERROR_NAMETOOLONG HYPORT_ERROR_BASE-4
+#define HYPORT_ERROR_DISKFULL HYPORT_ERROR_BASE-5
+#define HYPORT_ERROR_EXIST HYPORT_ERROR_BASE-6
+#define HYPORT_ERROR_NOTEXIST HYPORT_ERROR_BASE-7
+#define HYPORT_ERROR_SYSTEMFULL HYPORT_ERROR_BASE-8
+#define HYPORT_ERROR_NOENT HYPORT_ERROR_BASE-9
+#define HYPORT_ERROR_DIRECTORY HYPORT_ERROR_BASE-10
+#define HYPORT_ERROR_NOTDIRECTORY HYPORT_ERROR_BASE-11
+#define HYPORT_ERROR_LOOP HYPORT_ERROR_BASE-12
+#define HYPORT_ERROR_BADF HYPORT_ERROR_BASE-13
+#define HYPORT_ERROR_WOULDBLOCK HYPORT_ERROR_BASE-14
+#define HYPORT_ERROR_INVALID HYPORT_ERROR_BASE-15
+/** @} */
+/** 
+ * @name Port Library startup failure code
+ * Failures related to the initialization and startup of the port library.
+ *
+ * @internal HYPORT_ERROR_STARTUP* range from -100 to -149 to avoid overlap
+ * @{
+ */
+#define HYPORT_ERROR_STARTUP_BASE -100
+#define HYPORT_ERROR_STARTUP_THREAD (HYPORT_ERROR_STARTUP_BASE)
+#define HYPORT_ERROR_STARTUP_MEM (HYPORT_ERROR_STARTUP_BASE -1)
+#define HYPORT_ERROR_STARTUP_TLS (HYPORT_ERROR_STARTUP_BASE -2)
+#define HYPORT_ERROR_STARTUP_TLS_ALLOC (HYPORT_ERROR_STARTUP_BASE -3)
+#define HYPORT_ERROR_STARTUP_TLS_MUTEX (HYPORT_ERROR_STARTUP_BASE -4)
+#define HYPORT_ERROR_STARTUP_CPU (HYPORT_ERROR_STARTUP_BASE -5)
+#define HYPORT_ERROR_STARTUP_VMEM (HYPORT_ERROR_STARTUP_BASE -6)
+#define HYPORT_ERROR_STARTUP_FILE (HYPORT_ERROR_STARTUP_BASE -7)
+#define HYPORT_ERROR_STARTUP_TTY (HYPORT_ERROR_STARTUP_BASE -8)
+#define HYPORT_ERROR_STARTUP_TTY_HANDLE (HYPORT_ERROR_STARTUP_BASE -9)
+#define HYPORT_ERROR_STARTUP_TTY_CONSOLE (HYPORT_ERROR_STARTUP_BASE -10)
+#define HYPORT_ERROR_STARTUP_MMAP (HYPORT_ERROR_STARTUP_BASE -11)
+#define HYPORT_ERROR_STARTUP_IPCMUTEX (HYPORT_ERROR_STARTUP_BASE -12)
+#define HYPORT_ERROR_STARTUP_NLS (HYPORT_ERROR_STARTUP_BASE -13)
+#define HYPORT_ERROR_STARTUP_SOCK (HYPORT_ERROR_STARTUP_BASE -14)
+#define HYPORT_ERROR_STARTUP_TIME (HYPORT_ERROR_STARTUP_BASE -15)
+#define HYPORT_ERROR_STARTUP_GP (HYPORT_ERROR_STARTUP_BASE -16)
+#define HYPORT_ERROR_STARTUP_EXIT (HYPORT_ERROR_STARTUP_BASE -17)
+#define HYPORT_ERROR_STARTUP_SYSINFO (HYPORT_ERROR_STARTUP_BASE -18)
+#define HYPORT_ERROR_STARTUP_SL (HYPORT_ERROR_STARTUP_BASE -19)
+#define HYPORT_ERROR_STARTUP_STR (HYPORT_ERROR_STARTUP_BASE -20)
+#define HYPORT_ERROR_STARTUP_SHSEM (HYPORT_ERROR_STARTUP_BASE -21)
+#define HYPORT_ERROR_STARTUP_SHMEM (HYPORT_ERROR_STARTUP_BASE -22)
+#define HYPORT_ERROR_STARTUP_ERROR (HYPORT_ERROR_STARTUP_BASE -23)
+#define HYPORT_ERROR_STARTUP_SIGNAL (HYPORT_ERROR_STARTUP_BASE -24)
+/** @} */
+/**
+ * @name Shared Semaphore Errors
+ * Error codes for shared semaphore operations.
+ *
+ * @internal HYPORT_ERROR_SHSEM* range from at -150 to 159 to avoid overlap 
+ * @{
+ */
+#define HYPORT_ERROR_SHSEM_BASE -150
+#define HYPORT_ERROR_SHSEM_OPFAILED (HYPORT_ERROR_SHSEM_BASE)
+#define HYPORT_ERROR_SHSEM_HANDLE_INVALID (HYPORT_ERROR_SHSEM_BASE-1)
+#define HYPORT_ERROR_SHSEM_SEMSET_INVALID (HYPORT_ERROR_SHSEM_BASE-2)
+#define HYPORT_ERROR_SHSEM_NOT_EXIST (HYPORT_ERROR_SHSEM_BASE-3)
+#define HYPORT_ERROR_SHSEM_NOPERMISSION (HYPORT_ERROR_SHSEM_BASE-4)
+#define HYPORT_ERROR_SHSEM_INVALID_INPUT	(HYPORT_ERROR_SHSEM_BASE-5)
+#define HYPORT_ERROR_SHSEM_NOSPACE (HYPORT_ERROR_SHSEM_BASE-6)
+#define HYPORT_ERROR_SHSEM_ALREADY_EXIST (HYPORT_ERROR_SHSEM_BASE-7)
+#define HYPORT_ERROR_SHSEM_DATA_DIRECTORY_FAILED (HYPORT_ERROR_SHSEM_BASE-8)
+/** @} */
+/**
+ * @name Shared Memory Errors
+ * Error codes for shared memory semaphore operations.
+ *
+ * @internal HYPORT_ERROR_SHMEM* range from at -160 to -169 to avoid overlap 
+ * @{
+ */
+#define HYPORT_ERROR_SHMEM_BASE -160
+#define HYPORT_ERROR_SHMEM_OPFAILED (HYPORT_ERROR_SHMEM_BASE)
+#define HYPORT_ERROR_SHMEM_HANDLE_INVALID (HYPORT_ERROR_SHMEM_BASE-1)
+#define HYPORT_ERROR_SHMEM_NOT_EXIST (HYPORT_ERROR_SHMEM_BASE-2)
+#define HYPORT_ERROR_SHMEM_NOPERMISSION (HYPORT_ERROR_SHMEM_BASE-3)
+#define HYPORT_ERROR_SHMEM_INVALID_INPUT	(HYPORT_ERROR_SHMEM_BASE-4)
+#define HYPORT_ERROR_SHMEM_NOSPACE (HYPORT_ERROR_SHMEM_BASE-5)
+#define HYPORT_ERROR_SHMEM_ALREADY_EXIST (HYPORT_ERROR_SHMEM_BASE-6)
+#define HYPORT_ERROR_SHMEM_TOOBIG (HYPORT_ERROR_SHMEM_BASE-7)
+#define HYPORT_ERROR_SHMEM_ATTACH_FAILED (HYPORT_ERROR_SHMEM_BASE-8)
+#define HYPORT_ERROR_SHMEM_DATA_DIRECTORY_FAILED (HYPORT_ERROR_SHMEM_BASE-9)
+/** @} */
+/* -170 to -199 available for use */
+/**
+ * @name Socket Errors
+ * Error codes for socket operations
+ *
+ * @internal HYPORT_ERROR_SOCKET* range from -200 to -299 avoid overlap
+ * @{
+ */
+#define HYPORT_ERROR_SOCKET_BASE -200
+#define HYPORT_ERROR_SOCKET_BADSOCKET HYPORT_ERROR_SOCKET_BASE						/* generic error */
+#define HYPORT_ERROR_SOCKET_NOTINITIALIZED HYPORT_ERROR_SOCKET_BASE-1					/* socket library uninitialized */
+#define HYPORT_ERROR_SOCKET_BADAF HYPORT_ERROR_SOCKET_BASE-2								/* bad address family */
+#define HYPORT_ERROR_SOCKET_BADPROTO HYPORT_ERROR_SOCKET_BASE-3						/* bad protocol */
+#define HYPORT_ERROR_SOCKET_BADTYPE HYPORT_ERROR_SOCKET_BASE-4							/* bad type */
+#define HYPORT_ERROR_SOCKET_SYSTEMBUSY HYPORT_ERROR_SOCKET_BASE-5					/* system busy handling requests */
+#define HYPORT_ERROR_SOCKET_SYSTEMFULL HYPORT_ERROR_SOCKET_BASE-6					/* too many sockets */
+#define HYPORT_ERROR_SOCKET_NOTCONNECTED HYPORT_ERROR_SOCKET_BASE-7				/* socket is not connected */
+#define HYPORT_ERROR_SOCKET_INTERRUPTED	HYPORT_ERROR_SOCKET_BASE-8					/* the call was cancelled */
+#define HYPORT_ERROR_SOCKET_TIMEOUT	HYPORT_ERROR_SOCKET_BASE-9							/* the operation timed out */
+#define HYPORT_ERROR_SOCKET_CONNRESET HYPORT_ERROR_SOCKET_BASE-10					/* the connection was reset */
+#define HYPORT_ERROR_SOCKET_WOULDBLOCK	 HYPORT_ERROR_SOCKET_BASE-11			/* the socket is marked as nonblocking operation would block */
+#define HYPORT_ERROR_SOCKET_ADDRNOTAVAIL HYPORT_ERROR_SOCKET_BASE-12				/* address not available */
+#define HYPORT_ERROR_SOCKET_ADDRINUSE HYPORT_ERROR_SOCKET_BASE-13					/* address already in use */
+#define HYPORT_ERROR_SOCKET_NOTBOUND HYPORT_ERROR_SOCKET_BASE-14						/* the socket is not bound */
+#define HYPORT_ERROR_SOCKET_UNKNOWNSOCKET HYPORT_ERROR_SOCKET_BASE-15		/* resolution of fileDescriptor to socket failed */
+#define HYPORT_ERROR_SOCKET_INVALIDTIMEOUT HYPORT_ERROR_SOCKET_BASE-16			/* the specified timeout is invalid */
+#define HYPORT_ERROR_SOCKET_FDSETFULL HYPORT_ERROR_SOCKET_BASE-17					/* Unable to create an FDSET */
+#define HYPORT_ERROR_SOCKET_TIMEVALFULL HYPORT_ERROR_SOCKET_BASE-18					/* Unable to create a TIMEVAL */
+#define HYPORT_ERROR_SOCKET_REMSOCKSHUTDOWN HYPORT_ERROR_SOCKET_BASE-19	/* The remote socket has shutdown gracefully */
+#define HYPORT_ERROR_SOCKET_NOTLISTENING HYPORT_ERROR_SOCKET_BASE-20				/* listen() was not invoked prior to accept() */
+#define HYPORT_ERROR_SOCKET_NOTSTREAMSOCK HYPORT_ERROR_SOCKET_BASE-21			/* The socket does not support connection-oriented service */
+#define HYPORT_ERROR_SOCKET_ALREADYBOUND HYPORT_ERROR_SOCKET_BASE-22			/* The socket is already bound to an address */
+#define HYPORT_ERROR_SOCKET_NBWITHLINGER HYPORT_ERROR_SOCKET_BASE-23				/* The socket is marked non-blocking & SO_LINGER is non-zero */
+#define HYPORT_ERROR_SOCKET_ISCONNECTED HYPORT_ERROR_SOCKET_BASE-24				/* The socket is already connected */
+#define HYPORT_ERROR_SOCKET_NOBUFFERS HYPORT_ERROR_SOCKET_BASE-25					/* No buffer space is available */
+#define HYPORT_ERROR_SOCKET_HOSTNOTFOUND HYPORT_ERROR_SOCKET_BASE-26			/* Authoritative Answer Host not found */
+#define HYPORT_ERROR_SOCKET_NODATA HYPORT_ERROR_SOCKET_BASE-27							/* Valid name, no data record of requested type */
+#define HYPORT_ERROR_SOCKET_BOUNDORCONN HYPORT_ERROR_SOCKET_BASE-28				/* The socket has not been bound or is already connected */
+#define HYPORT_ERROR_SOCKET_OPNOTSUPP HYPORT_ERROR_SOCKET_BASE-29					/* The socket does not support the operation */
+#define HYPORT_ERROR_SOCKET_OPTUNSUPP HYPORT_ERROR_SOCKET_BASE-30					/* The socket option is not supported */
+#define HYPORT_ERROR_SOCKET_OPTARGSINVALID HYPORT_ERROR_SOCKET_BASE-31			/* The socket option arguments are invalid */
+#define HYPORT_ERROR_SOCKET_SOCKLEVELINVALID HYPORT_ERROR_SOCKET_BASE-32		/* The socket level is invalid */
+#define HYPORT_ERROR_SOCKET_TIMEOUTFAILURE HYPORT_ERROR_SOCKET_BASE-33			
+#define HYPORT_ERROR_SOCKET_SOCKADDRALLOCFAIL HYPORT_ERROR_SOCKET_BASE-34	/* Unable to allocate the sockaddr structure */
+#define HYPORT_ERROR_SOCKET_FDSET_SIZEBAD HYPORT_ERROR_SOCKET_BASE-35				/* The calculated maximum size of the file descriptor set is bad */
+#define HYPORT_ERROR_SOCKET_UNKNOWNFLAG HYPORT_ERROR_SOCKET_BASE-36				/* The flag is unknown */
+#define HYPORT_ERROR_SOCKET_MSGSIZE HYPORT_ERROR_SOCKET_BASE-37						/* The datagram was too big to fit the specified buffer & was truncated. */
+#define HYPORT_ERROR_SOCKET_NORECOVERY HYPORT_ERROR_SOCKET_BASE-38				/* The operation failed with no recovery possible */
+#define HYPORT_ERROR_SOCKET_ARGSINVALID HYPORT_ERROR_SOCKET_BASE-39					/* The arguments are invalid */
+#define HYPORT_ERROR_SOCKET_BADDESC HYPORT_ERROR_SOCKET_BASE-40						/* The socket argument is not a valid file descriptor */
+#define HYPORT_ERROR_SOCKET_NOTSOCK HYPORT_ERROR_SOCKET_BASE-41						/* The socket argument is not a socket */
+#define HYPORT_ERROR_SOCKET_HOSTENTALLOCFAIL HYPORT_ERROR_SOCKET_BASE-42		/* Unable to allocate the hostent structure */
+#define HYPORT_ERROR_SOCKET_TIMEVALALLOCFAIL HYPORT_ERROR_SOCKET_BASE-43		/* Unable to allocate the timeval structure */
+#define HYPORT_ERROR_SOCKET_LINGERALLOCFAIL HYPORT_ERROR_SOCKET_BASE-44			/* Unable to allocate the linger structure */
+#define HYPORT_ERROR_SOCKET_IPMREQALLOCFAIL HYPORT_ERROR_SOCKET_BASE-45		 	/* Unable to allocate the ipmreq structure */
+#define HYPORT_ERROR_SOCKET_FDSETALLOCFAIL HYPORT_ERROR_SOCKET_BASE-46 			/* Unable to allocate the fdset structure */
+#define HYPORT_ERROR_SOCKET_OPFAILED HYPORT_ERROR_SOCKET_BASE-47
+#define HYPORT_ERROR_SOCKET_VALUE_NULL HYPORT_ERROR_SOCKET_BASE-48 					/* The value indexed was NULL */
+#define HYPORT_ERROR_SOCKET_CONNECTION_REFUSED	 HYPORT_ERROR_SOCKET_BASE-49	/* connection was refused */
+#define HYPORT_ERROR_SOCKET_ENETUNREACH HYPORT_ERROR_SOCKET_BASE-50					/* network is not reachable */
+#define HYPORT_ERROR_SOCKET_EACCES HYPORT_ERROR_SOCKET_BASE-51							/* permissions do not allow action on socket */
+
+#define HYPORT_ERROR_SOCKET_FIRST_ERROR_NUMBER HYPORT_ERROR_SOCKET_BASE
+#define HYPORT_ERROR_SOCKET_LAST_ERROR_NUMBER HYPORT_ERROR_SOCKET_VALUE_NULL /* Equals last used error code */
+/**
+ * @name File Errors 
+ * Error codes for file operations.
+ *
+ * @internal HYPORT_ERROR_FILE* range from -300 to -349 avoid overlap
+ * @{
+ */
+#define HYPORT_ERROR_FILE_BASE -300
+#define HYPORT_ERROR_FILE_OPFAILED (HYPORT_ERROR_FILE_BASE)
+#define HYPORT_ERROR_FILE_EOF (HYPORT_ERROR_FILE_BASE-1)
+#define HYPORT_ERROR_FILE_NOPERMISSION (HYPORT_ERROR_FILE_BASE-2)
+#define HYPORT_ERROR_FILE_NOTFOUND (HYPORT_ERROR_FILE_BASE-3)
+#define HYPORT_ERROR_FILE_NAMETOOLONG (HYPORT_ERROR_FILE_BASE-4)
+#define HYPORT_ERROR_FILE_DISKFULL (HYPORT_ERROR_FILE_BASE-5)
+#define HYPORT_ERROR_FILE_EXIST (HYPORT_ERROR_FILE_BASE-6)
+#define HYPORT_ERROR_FILE_SYSTEMFULL (HYPORT_ERROR_FILE_BASE-7)
+#define HYPORT_ERROR_FILE_NOENT (HYPORT_ERROR_FILE_BASE-8)
+#define HYPORT_ERROR_FILE_NOTDIR (HYPORT_ERROR_FILE_BASE-9)
+#define HYPORT_ERROR_FILE_LOOP (HYPORT_ERROR_FILE_BASE-10)
+#define HYPORT_ERROR_FILE_BADF (HYPORT_ERROR_FILE_BASE-11)
+#define HYPORT_ERROR_FILE_WOULDBLOCK (HYPORT_ERROR_FILE_BASE-12)
+#define HYPORT_ERROR_FILE_INVAL (HYPORT_ERROR_FILE_BASE-13)
+/** @} */
+
+#endif     /* hyporterror_h */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hysocket.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hysocket.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hysocket.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hysocket.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,101 @@
+/* Copyright 1998, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/******************************************************\
+		Portable socket library header.
+\******************************************************/
+
+#if !defined(hysocket_h)
+#define hysocket_h
+
+#include <stddef.h>
+#include "hyporterror.h"
+
+/* Socket types, stream & datagram */
+#define HYSOCK_STREAM 0
+#define HYSOCK_DGRAM 1
+#define HYSOCK_AFINET 2
+#define HYSOCK_ANY 3
+#define HYSOCK_DEFPROTOCOL 0
+#define HYSOCK_INADDR_ANY (U_32)0	
+#define HYSOCK_NOFLAGS (U_32)0       /* The default flag argument value, as in a recv */
+#define HYSOCK_INADDR_LEN 4          /* The length in bytes of a binary IPv4 internet address */
+#define HYSOCK_INADDR6_LEN 16        /* The length in bytes of a binary IPv6 internet address */
+
+/* For getaddrinfo (IPv6) -- socket types */
+#define HYSOCKET_ANY 0        /* for getaddrinfo hints */
+#define HYSOCKET_STREAM 1     /* stream socket */
+#define HYSOCKET_DGRAM 2      /* datagram socket */
+#define HYSOCKET_RAW 3        /* raw-protocol interface */
+#define HYSOCKET_RDM 4        /* reliably-delivered message */
+#define HYSOCKET_SEQPACKET 5  /* sequenced packet stream */
+
+/** address family */
+#define HYADDR_FAMILY_UNSPEC 0     /* IPv6 */
+#define HYADDR_FAMILY_AFINET4 2    /* IPv6 */
+#define HYADDR_FAMILY_AFINET6 23   /* IPv6 */
+
+/** protocol family */
+#define HYPROTOCOL_FAMILY_UNSPEC  HYADDR_FAMILY_UNSPEC     /* IPv6 */
+#define HYPROTOCOL_FAMILY_INET4   HYADDR_FAMILY_AFINET4    /* IPv6 */
+#define HYPROTOCOL_FAMILY_INET6   HYADDR_FAMILY_AFINET6    /* IPv6 */
+
+/* Portable defines for socket levels */
+#define HY_SOL_SOCKET 1
+#define HY_IPPROTO_TCP 2
+#define HY_IPPROTO_IP 3
+#define HY_IPPROTO_IPV6 4
+
+/* Portable defines for socket options */
+#define HY_SO_LINGER 1
+#define HY_SO_KEEPALIVE 2
+#define HY_TCP_NODELAY 3
+#define HY_MCAST_TTL 4
+#define HY_MCAST_ADD_MEMBERSHIP 5
+#define HY_MCAST_DROP_MEMBERSHIP 6
+#define HY_MCAST_INTERFACE 7
+#define HY_SO_REUSEADDR 8
+#define HY_SO_REUSEPORT 9
+#define HY_SO_SNDBUF 11
+#define HY_SO_RCVBUF 12
+#define HY_SO_BROADCAST 13
+#define HY_SO_OOBINLINE 14
+#define HY_IP_MULTICAST_LOOP 15
+#define HY_IP_TOS 16
+#define HY_MCAST_INTERFACE_2 17
+#define HY_IPV6_ADD_MEMBERSHIP 18
+#define HY_IPV6_DROP_MEMBERSHIP	19
+
+/* Portable defines for socket read/write options */
+#define HYSOCK_MSG_PEEK 1
+#define HYSOCK_MSG_OOB 2
+
+/* Platform Constants */
+typedef struct hysocket_struct *hysocket_t;
+typedef struct hysockaddr_struct *hysockaddr_t;
+typedef struct hyhostent_struct *hyhostent_t;
+typedef struct hyfdset_struct *hyfdset_t;
+typedef struct hytimeval_struct *hytimeval_t;
+typedef struct hylinger_struct *hylinger_t;
+typedef struct hyipmreq_struct *hyipmreq_t;
+typedef struct hyaddrinfo_struct *hyaddrinfo_t;    /* IPv6 */
+typedef struct hyipv6_mreq_struct *hyipv6_mreq_t;  /* IPv6 */
+
+/* constants for calling multi-call functions */
+#define HY_PORT_SOCKET_STEP_START 		10
+#define HY_PORT_SOCKET_STEP_CHECK	20
+#define HY_PORT_SOCKET_STEP_DONE		30
+
+#endif     /* hysocket_h */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hystdarg.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hystdarg.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hystdarg.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/hystdarg.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,29 @@
+/* Copyright 1991, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if !defined(hystdarg_h)
+#define hystdarg_h
+
+#include <stdarg.h>
+#include <string.h>	
+#include "hycomp.h"
+
+#if defined(va_copy)
+#define COPY_VA_LIST(new,old) va_copy(new,  old)
+#else
+#define COPY_VA_LIST(new,old) memcpy(VA_PTR(new), VA_PTR(old), sizeof(va_list))
+#endif
+
+#endif     /* hystdarg_h */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/jniport.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/jniport.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/jniport.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/jniport.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,44 @@
+/* Copyright 1991, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if !defined(jniport_h)
+#define jniport_h
+
+#if defined(WIN32)||(defined(_WIN32))
+#define JNIEXPORT __declspec(dllexport)
+#define JNICALL __stdcall
+
+typedef signed char jbyte;
+typedef int jint;
+typedef __int64 jlong;
+
+#else
+
+#define JNIEXPORT
+typedef signed char jbyte;
+typedef long long jlong;
+typedef int jint;
+
+#endif /* WIN32 */
+
+#if !defined(JNICALL)
+#define JNICALL
+#endif
+
+#if !defined(JNIEXPORT)
+#define JNIEXPORT
+#endif
+
+#endif /* jniport_h */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/portsock.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/portsock.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/portsock.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/portsock.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,25 @@
+/* Copyright 1998, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/******************************************************\
+		Redirects to port socket header
+\******************************************************/
+
+#if !defined(portsock_h)
+#define portsock_h
+
+#include "../port/hysock.h"
+
+#endif     /* portsock_h */

Added: incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/ute_pd.h
URL: http://svn.apache.org/viewcvs/incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/ute_pd.h?rev=382065&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/ute_pd.h (added)
+++ incubator/harmony/enhanced/classlib/trunk/native-src/shared/include/ute_pd.h Wed Mar  1 07:42:53 2006
@@ -0,0 +1,89 @@
+/* Copyright 1991, 2005 The Apache Software Foundation or its licensors, as applicable
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if !defined(_UTE_PD_H)
+#define _UTE_PD_H
+
+#include "hycomp.h"
+#include "jni.h"
+#if defined(__cplusplus)
+extern "C" {
+#endif
+/*
+ * =============================================================================
+ *  Platform dependent primitives
+ * =============================================================================
+ */
+typedef I_64                UT_I64;            /* Signed 64bit integer        */
+typedef I_32                UT_I32;            /* Signed 32bit integer        */
+typedef I_16                UT_I16;            /* Signed 16bit integer        */
+typedef I_8                 UT_I8;             /* Signed 8bit integer         */
+typedef IDATA               UT_IPTR;           /* Signed ptr-sized integer    */
+typedef U_64                UT_U64;            /* Unsigned 64bit integer      */
+typedef U_32                UT_U32;            /* Unsigned 32bit integer      */
+typedef U_16                UT_U16;            /* Unsigned 16bit integer      */
+typedef U_8                 UT_U8;             /* Unsigned 8bit integer       */
+typedef UDATA               UT_UPTR;           /* Unsigned ptr-sized integer  */
+typedef I_32                UT_BOOL;           /* Boolean                     */
+typedef I_32                UT_FD;             /* File descriptor             */
+/*
+ * =============================================================================
+ *  Platform dependent return codes - Use JNI return codes for this application
+ *  Note that all error codes must be negative
+ * =============================================================================
+ */
+#define UTE_OK          JNI_OK
+#define UTE_ERROR       JNI_ERR
+#define UTE_BADVERSION  JNI_EVERSION
+#define UTE_OUTOFMEMORY JNI_ENOMEM
+#define UTE_INVALID     JNI_EINVAL
+/*
+ * =============================================================================
+ *  Platform dependent calling conventions
+ * =============================================================================
+ */
+#define UTECALL     JNICALL
+#define UTEEXPORT   JNIEXPORT
+/*
+ * =============================================================================
+ *  RAS event semaphore - platform dependent portion
+ * =============================================================================
+ */
+#if !defined(UT_EVENT_SEM)
+#define UT_EVENT_SEM void *
+#endif
+typedef struct  utEventSem_pd {
+    UT_EVENT_SEM  sem;
+    volatile int flags;
+} UtEventSem_pd;
+#define UT_SEM_WAITING 1
+#define UT_SEM_POSTED  2
+/*
+ * =============================================================================
+ * Constants for CPU type etc
+ * =============================================================================
+ */
+#define UT_HASTSC       0x0010
+#define UT_FAMILY       0x0F00
+#define UT_IS586        0x0500
+#define UT_FAMILY_MODEL 0x0FF0
+#define UT_PIII_MODEL7  0x0670
+#define UT_P4_MODEL     0x0F00
+#define UT_EXT_FAMILY   0x0F00000
+#if defined(__cplusplus)
+}
+#endif
+
+#endif /* !_UTE_PD_H */

Propchange: incubator/harmony/enhanced/classlib/trunk/native-src/shared/launcher/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Mar  1 07:42:53 2006
@@ -0,0 +1 @@
+*.obj



Mime
View raw message