Make SJ4 more portable

This commit is contained in:
Nishi 2026-06-22 05:10:51 +09:00
commit 201d9dba0a
7 changed files with 50 additions and 84 deletions

View file

@ -5,7 +5,15 @@
#include <stdarg.h>
#include <stdio.h>
#ifdef _WIN32
#include <io.h>
#else
#include <unistd.h>
#endif
int sj4_snprintf(char*, size_t, const char*, ...);
size_t sj4_strlcpy(char*, const char*, size_t);
int sj4_ftruncate(FILE*, size_t);
int sj4_unlink(const char*);
#endif

View file

@ -126,7 +126,6 @@ typedef struct dictfile {
#endif
FILE* fp;
VFile vf;
int fd;
u_char* buffer;
long bufsiz;
@ -144,7 +143,6 @@ typedef struct stdyfile {
int refcnt;
ino_t inode;
FILE* fp;
int fd;
u_char* header;

View file

@ -22,11 +22,6 @@
#include <errno.h>
#include <errno.h>
#include <sys/stat.h>
#ifdef _WIN32
#include <io.h>
#else
#include <unistd.h>
#endif
#include "sj_kcnv.h"
#include "sj_struct.h"
@ -235,9 +230,6 @@ extern u_char kigou[];
/* sdepend.c */
DictFile* opendict(SJ4_CONTEXT char*, char*);
int closedict(SJ4_CONTEXT DictFile*);
void lock_dict(DictFile*, int);
void unlock_dict(DictFile*, int);
int is_dict_locked(DictFile*);
StdyFile* openstdy(SJ4_CONTEXT char*, char*);
int closestdy(SJ4_CONTEXT StdyFile*);
int putstydic(SJ4_CONTEXT2);

View file

@ -6,6 +6,10 @@
/* increase this as needed... */
#define SJ4BUFSZ (4 * 1024)
#ifdef __cplusplus
extern "C" {
#endif
typedef union sj4kouhobuffer {
char sjis[SJ4BUFSZ];
char eucjp[SJ4BUFSZ];
@ -34,4 +38,8 @@ int sj4_getkan(Sj4Lib*, const void*, int len, Sj4Kouho*);
int sj4_nextkan(Sj4Lib*);
void sj4_close(Sj4Lib*);
#ifdef __cplusplus
}
#endif
#endif