@@ -21,12 +21,10 @@ #define USE_INLINE_STDARG #include #include -struct ObjFWRTBase; - #include #include #if defined(OF_AMIGAOS_M68K) # include @@ -60,14 +58,16 @@ #ifdef OF_MORPHOS extern void __register_frame(void *); extern void __deregister_frame(void *); #endif -struct Library *ObjFWRTBase; void *__objc_class_name_Protocol; +#ifndef OBJC_AMIGA_LIB extern bool objc_init(unsigned int version, struct objc_libC *libC); + +struct Library *ObjFWRTBase; static void error(const char *string, ULONG arg) { struct Library *IntuitionBase = OpenLibrary("intuition.library", 0); @@ -151,14 +151,14 @@ dtor(void) { CloseLibrary(ObjFWRTBase); } -#if defined(OF_AMIGAOS_M68K) +# if defined(OF_AMIGAOS_M68K) ADD2INIT(ctor, -5) ADD2EXIT(dtor, -5) -#elif defined(OF_MORPHOS) +# elif defined(OF_MORPHOS) CONSTRUCTOR_P(ObjFWRT, 4000) { ctor(); return 0; @@ -166,10 +166,11 @@ DESTRUCTOR_P(ObjFWRT, 0) { dtor(); } +# endif #endif extern int __gnu_objc_personality(int version, int actions, uint64_t *exClass, void *ex, void *ctx);