added build files for msdos extenders

This commit is contained in:
2013-02-02 03:49:28 +00:00
parent 7aa63462f1
commit 2402f6f92b
14 changed files with 3149 additions and 2012 deletions

View File

@ -6534,8 +6534,24 @@ static qse_awk_mod_t* query_module (
qse_awk_mod_data_t md;
qse_awk_mod_load_t load;
qse_awk_mod_spec_t spec;
qse_char_t buf[64 + 15] = QSE_T("_qse_awk_mod_");
qse_size_t buflen;
/*qse_char_t buf[64 + 15] = QSE_T("_qse_awk_mod_");*/
qse_char_t buf[64 + 15] =
{
QSE_T('_'),
QSE_T('q'),
QSE_T('s'),
QSE_T('e'),
QSE_T('_'),
QSE_T('a'),
QSE_T('w'),
QSE_T('k'),
QSE_T('m'),
QSE_T('o'),
QSE_T('d'),
QSE_T('_')
/* the terminating null isn't needed */
};
if (segs[0].len > QSE_COUNTOF(buf) - 15)
{

View File

@ -318,7 +318,13 @@ static int custom_awk_sprintf (
static void* custom_awk_modopen (qse_awk_t* awk, const qse_awk_mod_spec_t* spec)
{
#if defined(USE_LTDL)
#if defined(QSE_ENABLE_STATIC_MODULE)
/* this won't be called at all when modules are linked into
* the main library. */
qse_awk_seterrnum (awk, QSE_AWK_ENOIMPL, QSE_NULL);
return QSE_NULL;
#elif defined(USE_LTDL)
void* h;
qse_mchar_t* modpath;
const qse_char_t* tmp[4];
@ -449,7 +455,10 @@ static void* custom_awk_modopen (qse_awk_t* awk, const qse_awk_mod_spec_t* spec)
static void custom_awk_modclose (qse_awk_t* awk, void* handle)
{
#if defined(USE_LTDL)
#if defined(QSE_ENABLE_STATIC_MODULE)
/* this won't be called at all when modules are linked into
* the main library. */
#elif defined(USE_LTDL)
lt_dlclose (handle);
#elif defined(_WIN32)
FreeLibrary ((HMODULE)handle);
@ -478,7 +487,12 @@ static void* custom_awk_modsym (qse_awk_t* awk, void* handle, const qse_char_t*
}
#endif
#if defined(USE_LTDL)
#if defined(QSE_ENABLE_STATIC_MODULE)
/* this won't be called at all when modules are linked into
* the main library. */
s = QSE_NULL;
#elif defined(USE_LTDL)
s = lt_dlsym (handle, mname);
#elif defined(_WIN32)
@ -501,7 +515,6 @@ static void* custom_awk_modsym (qse_awk_t* awk, void* handle, const qse_char_t*
#endif
return s;
}
static int add_globals (qse_awk_t* awk);

View File

@ -97,12 +97,12 @@
{ \
switch (e) \
{ \
case ENOMEM: return __SYSERRNUM__ (syserrobj, ENOMEM); \
case EINVAL: return __SYSERRNUM__ (syserrobj, EINVAL); \
case EACCES: return __SYSERRNUM__ (syserrobj, EACCES); \
case ENOENT: return __SYSERRNUM__ (syserrobj, ENOENT); \
case EEXIST: return __SYSERRNUM__ (syserrobj, EEXIST); \
default: return __SYSERRNUM__ (syserrobj, ESYSERR); \
case ENOMEM: return __SYSERRNUM__ (obj2, ENOMEM); \
case EINVAL: return __SYSERRNUM__ (obj2, EINVAL); \
case EACCES: return __SYSERRNUM__ (obj2, EACCES); \
case ENOENT: return __SYSERRNUM__ (obj2, ENOENT); \
case EEXIST: return __SYSERRNUM__ (obj2, EEXIST); \
default: return __SYSERRNUM__ (obj2, ESYSERR); \
} \
}