Added missing stub functions for qurt build

No wchar support in current aDSP image.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
This commit is contained in:
Mark Charlebois
2016-01-25 18:28:21 -08:00
committed by Julian Oes
parent 4f84a6d81e
commit e6d27f019e
2 changed files with 153 additions and 31 deletions
+2 -26
View File
@@ -30,43 +30,18 @@
* POSSIBILITY OF SUCH DAMAGE.
*
****************************************************************************/
#ifdef QURT_EXE_BUILD
#include <stdio.h>
#include <dlfcn.h>
//#define STACK_SIZE 0x8000
//static char __attribute__ ((aligned (16))) stack1[STACK_SIZE];
static void do_dlopen()
{
#if 0
void *handle;
char *error;
void (*entry_function)() = NULL;
handle = dlopen("libdspal_client.so", RTLD_LAZY);
if (!handle) {
printf("Error opening libdspal_client.so\n");
return 1;
}
entry_function = dlsym(handle, "dspal_entry");
if (((error = dlerror()) != NULL) || (entry_function == NULL)) {
printf("Error dlsym for dspal_entry");
ret = 2;
}
dlclose(handle);
#endif
}
#ifdef QURT_EXE_BUILD
int dlinit(int a, char **b)
{
return 0;
}
#endif
int main(int argc, char *argv[])
{
@@ -80,3 +55,4 @@ int main(int argc, char *argv[])
return ret;
}
#endif
+151 -5
View File
@@ -157,18 +157,17 @@ size_t strnlen(const char *s, size_t maxlen)
return i;
}
int ioctl(int a, int b, unsigned long c)
{
return -1;
}
int write(int a, char const *b, int c)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return -1;
}
int fprintf(FILE *stream, const char *format, ...)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return 0;
}
@@ -177,4 +176,151 @@ int fputc(int c, FILE *stream)
return c;
}
FILE _Stdin;
FILE _Stdout;
FILE _Stderr;
static void block_indefinite(void)
{
for (;;) {
volatile int x = 0;
++x;
}
}
int ungetc(int c, FILE *stream)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return -1;
}
int fgetc(FILE *stream)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return -1;
}
int fseek(FILE *stream, long offset, int whence)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return -1;
}
int fgetpos(FILE *stream, fpos_t *pos)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return -1;
}
int fsetpos(FILE *stream, const fpos_t *pos)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return -1;
}
int setvbuf(FILE *stream, char *buf, int mode, size_t size)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return -1;
}
#include <wchar.h>
wint_t fputwc(wchar_t wc, FILE *stream)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return -1;
}
wint_t ungetwc(wint_t wc, FILE *stream)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return -1;
}
wint_t fgetwc(FILE *stream)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return -1;
}
#include <stdlib.h>
size_t _Getmbcurmax()
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return 2;
}
#include <ctype.h>
_Ctype_t _Getptolower(void)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return nullptr;
}
_Ctype_t _Getptoupper(void)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return nullptr;
}
#include <xwchar.h>
_Statab *_Getpmbstate(void)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return nullptr;
}
_Statab *_Getpwcstate(void)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return nullptr;
}
int _Mbtowcx(wchar_t *, const char *, size_t, mbstate_t *, _Statab *)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
return -1;
}
int _Wctombx(char *, wchar_t, mbstate_t *, _Statab *, _Statab *)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
return -1;
}
void _Locksyslock(int x)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
}
void _Unlocksyslock(int x)
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
}
void _Atexit(void (*)(void))
{
PX4_ERR("Error: Calling unresolved symbol stub[%s]", __FUNCTION__);
block_indefinite();
}