From ba524a1e531cb1a590221f07b70b003cbeccb107 Mon Sep 17 00:00:00 2001 From: fedor Date: Fri, 25 May 2001 03:31:29 +0000 Subject: [PATCH] Fix +load hash list. Special script for runtime-info.h on mingw32 git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc/trunk@10022 72102866-910b-0410-8b05-ffd578937521 --- ChangeLog.GNUstep | 9 ++++++++- GNUmakefile | 5 +++++ get-runtime-info | 16 ++++++++++++++++ init.c | 2 +- 4 files changed, 30 insertions(+), 2 deletions(-) create mode 100755 get-runtime-info diff --git a/ChangeLog.GNUstep b/ChangeLog.GNUstep index f103a7d..e719890 100644 --- a/ChangeLog.GNUstep +++ b/ChangeLog.GNUstep @@ -1,5 +1,12 @@ -2001-05-04 Adam Fedor +2001-05-24 Adam Fedor + + * init.c (__objc_send_message_in_list): Use method_imp as hash key + (typo fix); + * GNUmakefile (runtime-info.h): Special rule for mingw32 using... + * get-runtime-info: New script. + +2001-05-04 Adam Fedor * Previous changes before importing into GNUstep CVS. * hash.c (hash_add): cast cachep to int. diff --git a/GNUmakefile b/GNUmakefile index cdc3e5c..9568ba4 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -165,11 +165,16 @@ endif $(GNUSTEP_OBJ_DIR)/thr-backends: $(GNUSTEP_OBJ_DIR) @if [ ! -d $@ ]; then echo mkdir $@; mkdir $@; fi +ifeq ($(GNUSTEP_TARGET_OS),mingw32) +runtime-info.h: + ./get-runtime-info $(CC1OBJ) +else runtime-info.h: echo "" > tmp-runtime echo "/* This file is automatically generated */" > $@ $(CC1OBJ) -print-objc-runtime-info tmp-runtime >> $@ rm -f tmp-runtime +endif after-clean:: diff --git a/get-runtime-info b/get-runtime-info new file mode 100755 index 0000000..7891d4a --- /dev/null +++ b/get-runtime-info @@ -0,0 +1,16 @@ +#!/bin/sh + +if test x"$1" = z; then + CC1OBJ=gcc +else + CC1OBJ=$1 +fi + +if test "$GNUSTEP_HOST_OS" = mingw32; then + CC1OBJ=`cygpath -u $CC1OBJ` +fi +rm -f tmp-runtime +echo "" > tmp-runtime +echo "/* This file is automatically generated */" > runtime-info.h +$CC1OBJ -print-objc-runtime-info tmp-runtime >> runtime-info.h +rm -f tmp-runtime diff --git a/init.c b/init.c index d7ec41e..e16589d 100644 --- a/init.c +++ b/init.c @@ -313,7 +313,7 @@ __objc_send_message_in_list (MethodList_t method_list, Class class, SEL op) Method_t mth = &method_list->method_list[i]; if (mth->method_name && sel_eq (mth->method_name, op) - && !hash_is_key_in_hash (__objc_load_methods, mth->method_name)) + && !hash_is_key_in_hash (__objc_load_methods, mth->method_imp)) { /* The method was found and wasn't previously executed. */ (*mth->method_imp) ((id)class, mth->method_name);