Index: configure.ac ================================================================== --- configure.ac +++ configure.ac @@ -1,13 +1,12 @@ -AC_INIT(ObjFW, 1.1-dev, js@nil.im) +AC_INIT(ObjFW, 1.0, js@nil.im) AC_CONFIG_SRCDIR(src) AC_CONFIG_AUX_DIR(build-aux) AC_CONFIG_MACRO_DIR(build-aux/m4) AC_DEFINE(OBJFW_VERSION_MAJOR, 1, [The major version of ObjFW]) -AC_DEFINE(OBJFW_VERSION_MINOR, 1, [The minor version of ObjFW]) -dnl This may only be set to 1.1 once 1.1 is released +AC_DEFINE(OBJFW_VERSION_MINOR, 0, [The minor version of ObjFW]) AC_SUBST(BUNDLE_VERSION, 1.0.0) AC_SUBST(BUNDLE_SHORT_VERSION, 1.0) for i in configure.ac build-aux/m4/*; do AS_IF([test $i -nt configure], [ @@ -442,29 +441,25 @@ esac objc_runtime="ObjFW runtime" AC_CHECK_HEADER(objc/objc.h) AC_MSG_CHECKING(which Objective C runtime to use) -AC_ARG_ENABLE(runtime, - AS_HELP_STRING([--enable-runtime], [use the included runtime])) AC_ARG_ENABLE(seluid24, AS_HELP_STRING([--enable-seluid24], [use 24 bit instead of 16 bit for selector UIDs])) -AS_IF([test x"$enable_runtime" != x"yes"], [ - AS_IF([test x"$ac_cv_header_objc_objc_h" = x"yes"], [ - AC_EGREP_CPP(egrep_cpp_yes, [ - #import - - #ifdef OBJC_BOOL_DEFINED - egrep_cpp_yes - #endif - ], [ - objc_runtime="Apple runtime" - ], [ - dnl We don't want the GNU runtime - : - ]) +AS_IF([test x"$ac_cv_header_objc_objc_h" = x"yes"], [ + AC_EGREP_CPP(egrep_cpp_yes, [ + #import + + #ifdef OBJC_BOOL_DEFINED + egrep_cpp_yes + #endif + ], [ + objc_runtime="Apple runtime" + ], [ + dnl We don't want the GNU runtime + : ]) ]) AC_MSG_RESULT($objc_runtime) case "$objc_runtime" in Index: extra.mk.in ================================================================== --- extra.mk.in +++ extra.mk.in @@ -1,10 +1,10 @@ OBJFW_SHARED_LIB = @OBJFW_SHARED_LIB@ OBJFW_STATIC_LIB = @OBJFW_STATIC_LIB@ OBJFW_FRAMEWORK = @OBJFW_FRAMEWORK@ OBJFW_LIB_MAJOR = 9 -OBJFW_LIB_MINOR = 1 +OBJFW_LIB_MINOR = 0 OBJFW_LIB_MAJOR_MINOR = ${OBJFW_LIB_MAJOR}.${OBJFW_LIB_MINOR} OBJFWRT_SHARED_LIB = @OBJFWRT_SHARED_LIB@ OBJFWRT_STATIC_LIB = @OBJFWRT_STATIC_LIB@ OBJFWRT_FRAMEWORK = @OBJFWRT_FRAMEWORK@ DELETED src/runtime/lookup-asm/lookup-asm-x86_64-macho.S Index: src/runtime/lookup-asm/lookup-asm-x86_64-macho.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-x86_64-macho.S +++ src/runtime/lookup-asm/lookup-asm-x86_64-macho.S @@ -1,88 +0,0 @@ -/* - * Copyright (c) 2008-2021 Jonathan Schleifer - * - * All rights reserved. - * - * This file is part of ObjFW. It may be distributed under the terms of the - * Q Public License 1.0, which can be found in the file LICENSE.QPL included in - * the packaging of this file. - * - * Alternatively, it may be distributed under the terms of the GNU General - * Public License, either version 2 or 3, which can be found in the file - * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this - * file. - */ - -#include "config.h" - -.globl _objc_msg_lookup -.globl _objc_msg_lookup_stret -.globl _objc_msg_lookup_super -.globl _objc_msg_lookup_super_stret - -.section __TEXT, __text, regular, pure_instructions -.macro generate_lookup -$0: - testq %rdi, %rdi - jz ret_nil - - testb $$1, %dil - jnz Ltagged_pointer_$0 - - movq (%rdi), %r8 - movq 64(%r8), %r8 - -Lmain_$0: - movq (%rsi), %rax - movzbl %ah, %ecx - movzbl %al, %edx -#ifdef OF_SELUID24 - shrl $$16, %eax - - movq (%r8,%rax,8), %r8 -#endif - movq (%r8,%rcx,8), %r8 - movq (%r8,%rdx,8), %rax - - testq %rax, %rax - jz $1 - - ret - -Ltagged_pointer_$0: - movq _objc_tagged_pointer_secret@GOTPCREL(%rip), %rax - xorq (%rax), %rdi - andb $$0xE, %dil - movzbl %dil, %r8d - - movq _objc_tagged_pointer_classes@GOTPCREL(%rip), %rax - movq (%rax,%r8,4), %r8 - movq 64(%r8), %r8 - - jmp Lmain_$0 -.endmacro - -.macro generate_lookup_super -$0: - movq %rdi, %r8 - movq (%rdi), %rdi - testq %rdi, %rdi - jz ret_nil - - movq 8(%r8), %r8 - movq 64(%r8), %r8 - jmp Lmain_$1 -.endmacro - -generate_lookup _objc_msg_lookup, _objc_method_not_found -generate_lookup _objc_msg_lookup_stret, _objc_method_not_found_stret -generate_lookup_super _objc_msg_lookup_super, _objc_msg_lookup -generate_lookup_super _objc_msg_lookup_super_stret, _objc_msg_lookup_stret - -ret_nil: - leaq nil_method(%rip), %rax - ret - -nil_method: - xorq %rax, %rax - ret Index: src/runtime/lookup-asm/lookup-asm.S ================================================================== --- src/runtime/lookup-asm/lookup-asm.S +++ src/runtime/lookup-asm/lookup-asm.S @@ -35,16 +35,12 @@ # elif defined(OF_SPARC64) # include "lookup-asm-sparc64-elf.S" # elif defined(OF_SPARC) # include "lookup-asm-sparc-elf.S" # endif -#elif defined(OF_MACH_O) -# if defined(OF_X86_64) -# include "lookup-asm-x86_64-macho.S" -# endif #elif defined(OF_WINDOWS) # if defined(OF_X86_64) # include "lookup-asm-x86_64-win64.S" # elif defined(OF_X86) # include "lookup-asm-x86-win32.S" # endif #endif Index: src/runtime/private.h ================================================================== --- src/runtime/private.h +++ src/runtime/private.h @@ -360,14 +360,10 @@ #if defined(OF_ELF) # if defined(OF_X86_64) || defined(OF_X86) || defined(OF_POWERPC) || \ defined(OF_ARM64) || defined(OF_ARM) || \ defined(OF_MIPS64_N64) || defined(OF_MIPS) || \ defined(OF_SPARC64) || defined(OF_SPARC) -# define OF_ASM_LOOKUP -# endif -#elif defined(OF_MACH_O) -# if defined(OF_X86_64) # define OF_ASM_LOOKUP # endif #elif defined(OF_WINDOWS) # if defined(OF_X86_64) || defined(OF_X86) # define OF_ASM_LOOKUP