[libaxx] Define __cxa_atexit

In practice, it does nothing!

Change-Id: I5fb92299c4672d1635d0b77c2fc5de4e666c7213
This commit is contained in:
Romain Goyet
2016-12-08 14:49:35 +01:00
parent 6f5a3cf48f
commit 7fb1f78f6f
2 changed files with 15 additions and 1 deletions

View File

@@ -1,2 +1,2 @@
objs += $(addprefix libaxx/src/, new.o) objs += $(addprefix libaxx/src/, new.o)
objs += $(addprefix libaxx/src/cxxabi/, pure_virtual.o) objs += $(addprefix libaxx/src/cxxabi/, atexit.o pure_virtual.o)

View File

@@ -0,0 +1,14 @@
/* C++ expects the __dso_handle symbol to be defined to some unique value in
* each dynamic shared object. Even though we're not using dynamic loading,
* we still have to define __dso_handle. */
void * __dso_handle = nullptr;
/* The __cxa_atexit function registers a function to be called when the program
* exits or when a shared library is unloaded.
* We don't support shared libraries and our program should never exit, so we
* can simply do nothing and return zero. */
extern "C" int __cxa_atexit(void (*dtor)(void *), void * object, void * handle) {
return 0;
}