Index: .fossil-settings/clean-glob ================================================================== --- .fossil-settings/clean-glob +++ .fossil-settings/clean-glob @@ -25,10 +25,11 @@ docs extra.mk generators/gen_tables src/Info.plist src/bridge/Info.plist +src/inline.h src/objfw-defs.h src/runtime/amiga-library-functable.inc src/runtime/inline.h tests/EBOOT.PBP tests/Info.plist Index: .fossil-settings/ignore-glob ================================================================== --- .fossil-settings/ignore-glob +++ .fossil-settings/ignore-glob @@ -27,10 +27,11 @@ docs extra.mk generators/gen_tables src/Info.plist src/bridge/Info.plist +src/inline.h src/objfw-defs.h src/runtime/amiga-library-functable.inc src/runtime/inline.h tests/EBOOT.PBP tests/Info.plist Index: .gitignore ================================================================== --- .gitignore +++ .gitignore @@ -27,10 +27,11 @@ docs extra.mk generators/gen_tables src/Info.plist src/bridge/Info.plist +src/inline.h src/objfw-defs.h src/runtime/amiga-library-functable.inc src/runtime/inline.h tests/EBOOT.PBP tests/Info.plist Index: src/Makefile ================================================================== --- src/Makefile +++ src/Makefile @@ -254,10 +254,15 @@ ${INVOCATION_INVOCATION_AMIGALIB_A} \ amiga-end.amigalib.o include ../buildsys.mk +${OBJFW_AMIGA_LIB}: inline.h + +${SFDC_INLINE_H}: ${SFD_FILE} + sfdc -q --target=${SFDC_TARGET} --mode=macros -o $@ $<; \ + CPPFLAGS += -I. -I.. -Iexceptions -Iruntime \ -DOBJFW_AMIGA_LIB=\"${OBJFW_AMIGA_LIB}\" \ -DOBJFW_LIB_MAJOR=${OBJFW_LIB_MAJOR} \ -DOBJFW_LIB_MINOR=${OBJFW_LIB_MINOR} AMIGA_LIB_CFLAGS += -DOF_COMPILING_AMIGA_LIBRARY ADDED src/amigaos3.sfd Index: src/amigaos3.sfd ================================================================== --- src/amigaos3.sfd +++ src/amigaos3.sfd @@ -0,0 +1,32 @@ +==base _ObjFWBase +==basetype struct Library * +==libname objfw68k.library +==bias 30 +==public +* The following function is only for the linklib. +bool glue_of_init(unsigned int version, struct of_libc *_Nonnull libc, FILE *_Nonnull *_Nonnull sF)(d0,a0,a1) +int glue_of_application_main(int *_Nonnull argc, char *_Nullable *_Nonnull *_Nonnull argv, id delegate)(a0,a1,a2) +const char *_Nullable glue_of_http_request_method_to_string(of_http_request_method_t method)(d0) +of_http_request_method_t glue_of_http_request_method_from_string(OFString *string)(a0) +OFString *_Nonnull glue_of_http_status_code_to_string(short code)(d0) +size_t glue_of_sizeof_type_encoding(const char *type)(a0) +size_t glue_of_alignof_type_encoding(const char *type)(a0) +void glue_of_log(OFConstantString *format, ...)(a0,printfcall) +OFString *glue_of_zip_archive_entry_version_to_string(uint16_t version)(d0) +OFString *glue_of_zip_archive_entry_compression_method_to_string(uint16_t compressionMethod)(d0) +size_t glue_of_zip_archive_entry_extra_field_find(OFData *extraField, uint16_t tag, uint16_t *size)(a0,d0,a1) +void glue_of_pbkdf2(OFHMAC *HMAC, size_t iterations, const unsigned char *salt, size_t saltLength, const char *password, size_t passwordLength, unsigned char *key, size_t keyLength, bool allowsSwappableMemory)(a0,d0,a1,d1,a2,d2,a3,d3,d4) +void glue_of_scrypt(size_t blockSize, size_t costFactor, size_t parallelization, const unsigned char *salt, size_t saltLength, const char *password, size_t passwordLength, unsigned char *key, size_t keyLength, bool allowsSwappableMemory)(d0,d1,d2,a0,d3,a1,d4,a2,d5,d6) +of_socket_address_t glue_of_socket_address_parse_ip(OFString *IP, uint16_t port)(a0,d0) +of_socket_address_t glue_of_socket_address_parse_ipv4(OFString *IP, uint16_t port)(a0,d0) +of_socket_address_t glue_of_socket_address_parse_ipv6(OFString *IP, uint16_t port)(a0,d0) +of_socket_address_t glue_of_socket_address_ipx(const unsigned char *_Nonnull node, uint32_t network, uint16_t port)(a0,d0,d1) +bool glue_of_socket_address_equal(const of_socket_address_t *_Nonnull address1, const of_socket_address_t *_Nonnull address2)(a0,a1) +uint32_t glue_of_socket_address_hash(const of_socket_address_t *_Nonnull address)(a0) +OFString *_Nonnull glue_of_socket_address_ip_string(const of_socket_address_t *_Nonnull address, uint16_t *_Nullable port)(a0,a1) +void glue_of_socket_address_set_port(of_socket_address_t *_Nonnull address, uint16_t port)(a0,d0) +uint16_t glue_of_socket_address_get_port(const of_socket_address_t *_Nonnull address)(a0) +void glue_of_socket_address_set_ipx_network(of_socket_address_t *_Nonnull address, uint32_t network)(a0,d0) +uint32_t glue_of_socket_address_get_ipx_network(const of_socket_address_t *_Nonnull address)(a0) +void glue_of_socket_address_set_ipx_node(of_socket_address_t *_Nonnull address, const unsigned char *_Nonnull node)(a0,a1) +void glue_of_socket_address_get_ipx_node(const of_socket_address_t *_Nonnull address, unsigned char *_Nonnull node)(a0,a1) Index: src/runtime/amiga-library.h ================================================================== --- src/runtime/amiga-library.h +++ src/runtime/amiga-library.h @@ -61,6 +61,7 @@ void *_Nullable (*_Nonnull __deregister_frame_info)( const void *_Nonnull); #endif }; -extern bool objc_init(unsigned int, struct objc_libc *, FILE **); +extern bool objc_init(unsigned int, struct objc_libc *_Nonnull, + FILE *_Nonnull *_Nonnull); Index: src/runtime/amigaos3.sfd ================================================================== --- src/runtime/amigaos3.sfd +++ src/runtime/amigaos3.sfd @@ -2,11 +2,11 @@ ==basetype struct Library * ==libname objfwrt68k.library ==bias 30 ==public * The following function is only for the linklib. -bool glue_objc_init(unsigned int version, struct objc_libc *libc, FILE **sF)(d0,a0,a1) +bool glue_objc_init(unsigned int version, struct objc_libc *_Nonnull libc, FILE *_Nonnull *_Nonnull sF)(d0,a0,a1) void glue___objc_exec_class(struct objc_module *_Nonnull module)(a0) IMP _Nonnull glue_objc_msg_lookup(id _Nullable object, SEL _Nonnull selector)(a0,a1) IMP _Nonnull glue_objc_msg_lookup_stret(id _Nullable object, SEL _Nonnull selector)(a0,a1) IMP _Nonnull glue_objc_msg_lookup_super(struct objc_super *_Nonnull super, SEL _Nonnull selector)(a0,a1) IMP _Nonnull glue_objc_msg_lookup_super_stret(struct objc_super *_Nonnull super, SEL _Nonnull selector)(a0,a1)