mirror of
				https://github.com/sqlite/sqlite.git
				synced 2025-11-03 16:53:36 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			70 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/**
 | 
						|
   Dummy function stubs to get sqlite3.c compiling with
 | 
						|
   wasi-sdk. This requires, in addition:
 | 
						|
 | 
						|
   -D_WASI_EMULATED_MMAN -D_WASI_EMULATED_GETPID
 | 
						|
 | 
						|
   -lwasi-emulated-getpid
 | 
						|
*/
 | 
						|
typedef unsigned mode_t;
 | 
						|
int fchmod(int fd, mode_t mode);
 | 
						|
int fchmod(int fd, mode_t mode){
 | 
						|
  return (fd && mode) ? 0 : 0;
 | 
						|
}
 | 
						|
typedef unsigned uid_t;
 | 
						|
typedef uid_t gid_t;
 | 
						|
int fchown(int fd, uid_t owner, gid_t group);
 | 
						|
int fchown(int fd, uid_t owner, gid_t group){
 | 
						|
  return (fd && owner && group) ? 0 : 0;
 | 
						|
}
 | 
						|
uid_t geteuid(void);
 | 
						|
uid_t geteuid(void){return 0;}
 | 
						|
#if !defined(F_WRLCK)
 | 
						|
enum {
 | 
						|
F_WRLCK,
 | 
						|
F_RDLCK,
 | 
						|
F_GETLK,
 | 
						|
F_SETLK,
 | 
						|
F_UNLCK
 | 
						|
};
 | 
						|
#endif
 | 
						|
 | 
						|
#undef HAVE_PREAD
 | 
						|
 | 
						|
#include <wasi/api.h>
 | 
						|
#define WASM__KEEP __attribute__((used))
 | 
						|
 | 
						|
#if 0
 | 
						|
/**
 | 
						|
   wasi-sdk cannot build sqlite3's default VFS without at least the following
 | 
						|
   functions. They are apparently syscalls which clients have to implement or
 | 
						|
   otherwise obtain.
 | 
						|
 | 
						|
   https://github.com/WebAssembly/WASI/blob/main/phases/snapshot/docs.md
 | 
						|
*/
 | 
						|
environ_get
 | 
						|
environ_sizes_get
 | 
						|
clock_time_get
 | 
						|
fd_close
 | 
						|
fd_fdstat_get
 | 
						|
fd_fdstat_set_flags
 | 
						|
fd_filestat_get
 | 
						|
fd_filestat_set_size
 | 
						|
fd_pread
 | 
						|
fd_prestat_get
 | 
						|
fd_prestat_dir_name
 | 
						|
fd_read
 | 
						|
fd_seek
 | 
						|
fd_sync
 | 
						|
fd_write
 | 
						|
path_create_directory
 | 
						|
path_filestat_get
 | 
						|
path_filestat_set_times
 | 
						|
path_open
 | 
						|
path_readlink
 | 
						|
path_remove_directory
 | 
						|
path_unlink_file
 | 
						|
poll_oneoff
 | 
						|
proc_exit
 | 
						|
#endif
 |