diff --git a/src/lib/libcpp/Makefile b/src/lib/libcpp/Makefile index 2d97ece..186fcbf 100644 --- a/src/lib/libcpp/Makefile +++ b/src/lib/libcpp/Makefile @@ -15,7 +15,7 @@ # Compile Types .cpp.o: - $(CXX) ${CFLAGS} -Wall -DNOBOOL -fno-rtti -fno-exceptions -g -c $(INCLUDE) -o $@ $< + $(CXX) ${CFLAGS} -Wall -DNOBOOL -fno-exceptions -g -c $(INCLUDE) -o $@ $< .cc.o: $(CXX) ${CFLAGS} -Wall -DNOBOOL -fno-builtin -fno-rtti -fno-exceptions -fomit-frame-pointer -O $(INCLUDE) -c -o $@ $< .cc.s: diff --git a/src/lib/libcpp/include/libcpp.h b/src/lib/libcpp/include/libcpp.h index 78f02c8..100cd79 100644 --- a/src/lib/libcpp/include/libcpp.h +++ b/src/lib/libcpp/include/libcpp.h @@ -6,4 +6,14 @@ void * operator new[](unsigned size); void operator delete[](void * ptr); +template +class __default_alloc_template { + }; + +template +struct string_char_traits { + static char eos(); + }; + + #endif diff --git a/src/lib/libcpp/libcpp.cc b/src/lib/libcpp/libcpp.cc index b5084a9..3c28964 100644 --- a/src/lib/libcpp/libcpp.cc +++ b/src/lib/libcpp/libcpp.cc @@ -3,10 +3,32 @@ #include void __pure_virtual() { while(1); } void __cxa_pure_virtual() { while(1); } -} + + void * __dynamic_cast(void *a,void *b,void *c,void *d) { + return(0x0); + } + void * __rtti_user(void *a,void *b) { + return(0x0); + } + void * __rtti_class(void *a,void *b,void *c,void *d) { + return(0x0); + } + void * __rtti_si(void *a,void *b,void *c) { + return(0x0); + } + void __eprintf(void *a,void *b,void *c,void *d) { + return; + } + } #include +template class __default_alloc_template<0, 0>; +template class string_char_traits <0>; +char eos(char b) { + return(b); + } + void * operator new[](unsigned size) { return malloc(size); @@ -30,4 +52,3 @@ return; } -