Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / ikvm-native / os.c
index 65d49e2a2aeea33e77a21dc118c4b8359cec3c45..43531ae0ea5b5d7666759ac7dd98d5505e4f4067 100644 (file)
        #include <sys/mman.h>
        #include "jni.h"
 
+       void* JNICALL ikvm_LoadLibrary(char* psz);
+
        JNIEXPORT void* JNICALL ikvm_LoadLibrary(char* psz)
        {
                return g_module_open(psz, 0);
        }
 
+       void JNICALL ikvm_FreeLibrary(GModule* handle);
+
        JNIEXPORT void JNICALL ikvm_FreeLibrary(GModule* handle)
        {
                g_module_close(handle);
        }
 
+       void* JNICALL ikvm_GetProcAddress(GModule* handle, char* name, jint argc);
+
        JNIEXPORT void* JNICALL ikvm_GetProcAddress(GModule* handle, char* name, jint argc)
        {
                void *symbol;
                        return NULL;
        }
 
+       void* JNICALL ikvm_mmap(int fd, jboolean writeable, jboolean copy_on_write, jlong position, jint size);
+
        JNIEXPORT void* JNICALL ikvm_mmap(int fd, jboolean writeable, jboolean copy_on_write, jlong position, jint size)
        {
                return mmap(0, size, writeable ? PROT_WRITE | PROT_READ : PROT_READ, copy_on_write ? MAP_PRIVATE : MAP_SHARED, fd, position);
        }
 
+       int JNICALL ikvm_munmap(void* address, jint size);
+
        JNIEXPORT int JNICALL ikvm_munmap(void* address, jint size)
        {
                return munmap(address, size);
        }
 
+       int JNICALL ikvm_msync(void* address, jint size);
+
        JNIEXPORT int JNICALL ikvm_msync(void* address, jint size)
        {
+#if defined(__native_client__) && defined(USE_NEWLIB)
+               g_assert_not_reached ();
+               return -1;
+#else
                return msync(address, size, MS_SYNC);
+#endif
        }
 #endif