From 305f8c5bafed302aebd3e9f68bfb1685478c6a86 Mon Sep 17 00:00:00 2001 From: Kresten Krab Thorup Date: Mon, 12 Apr 1993 15:00:55 +0000 Subject: [PATCH] Updated for new runtime From-SVN: r4088 --- gcc/objc/Makefile.in | 99 +++++++++++++++++++++----------------------- 1 file changed, 47 insertions(+), 52 deletions(-) diff --git a/gcc/objc/Makefile.in b/gcc/objc/Makefile.in index 4eb005f4b3a..3d6d38e9d61 100644 --- a/gcc/objc/Makefile.in +++ b/gcc/objc/Makefile.in @@ -1,8 +1,6 @@ # GNU Objective C Runtime Makefile # Copyright (C) 1993 Free Software Foundation, Inc. # -# Author: Kresten Krab Thorup -# # This file is part of GNU CC. # # GNU CC is free software; you can redistribute it and/or modify it under the @@ -16,20 +14,22 @@ # # You should have received a copy of the GNU General Public License along with # GNU CC; see the file COPYING. If not, write to the Free Software -# Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. -# -# This makefile is run by the parent dir's makefile. -# thisdir1=`pwd`; \ -# srcdir1=`cd $(srcdir); pwd`; \ -# cd objc; \ -# $(MAKE) $(MAKEFLAGS) -f $$srcdir1/objc/Makefile libobjc.a \ -# srcdir=$$srcdir1 tooldir=$(tooldir) AR="$(AR)" AR_FLAGS="$(AR_FLAGS)" \ -# GCC_FOR_TARGET="$$thisdir1/xgcc -B$$thisdir1/" \ -# GCC_CFLAGS="$(GCC_CFLAGS)" -# Two targets are used by ../Makefile: `all' and `mostlyclean'. +# Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ + +# This makefile is run by the parent dir's makefile. +# thisdir1=`pwd`; \ +# srcdir1=`cd $(srcdir); pwd`; \ +# cd objc; \ +# $(MAKE) $(MAKEFLAGS) -f $$srcdir1/objc/Makefile libobjc.a \ +# srcdir=$$srcdir1 tooldir=$(tooldir) AR="$(AR)" AR_FLAGS="$(AR_FLAGS)" \ +# GCC_FOR_TARGET="$$thisdir1/xgcc -B$$thisdir1/" \ +# GCC_CFLAGS="$(GCC_CFLAGS)" incinstalldir=$$thisdir1/include +# Two targets are used by ../Makefile: `all' and `mostlyclean'. .SUFFIXES: .m +OPTIMIZE= -O + VPATH = $(srcdir)/objc AR = ar @@ -39,10 +39,11 @@ AR_FLAGS = rc SUBDIR_INCLUDES = -I. -I.. -I$(srcdir) -I$(srcdir)/config .c.o: - $(GCC_FOR_TARGET) -c $(GCC_CFLAGS) $(SUBDIR_INCLUDES) $< + $(GCC_FOR_TARGET) $(OPTIMIZE) -c $(GCC_CFLAGS) $(SUBDIR_INCLUDES) $< .m.o: - $(GCC_FOR_TARGET) -c $(GCC_CFLAGS) $(SUBDIR_INCLUDES) $< + $(GCC_FOR_TARGET) $(OPTIMIZE) -fgnu-runtime \ + -c $(GCC_CFLAGS) $(SUBDIR_INCLUDES) $< # If we were not invoked from the parent dir, # invoke make in the parent dir and have reinvoke this makefile. @@ -50,48 +51,42 @@ SUBDIR_INCLUDES = -I. -I.. -I$(srcdir) -I$(srcdir)/config all: cd ..; $(MAKE) sublibobjc.a -OBJS = hash.o sarray.o objc-class.o objc-msg.o objc-init.o objc-archive.o \ - objc-sel.o objc-object.o objc-misc.o Object.o Protocol.o - -all: libobjc.a - -runtime.h: hash.h list.h sarray.h objc.h objc-api.h - -Object.m: Object.h - -Object.h: objc.h objc-api.h - -sarray.c: sarray.h - -hash.c: hash.h - -objc-class.c: runtime.h +OBJC_O = hash.o sarray.o objc-class.o objc-msg.o objc-init.o objc-archive.o \ + objc-sel.o objc-object.o objc-misc.o Object.o Protocol.o -objc-msg.c: runtime.h - -objc-init.c: runtime.h - -objc-sel.c: runtime.h - -objc-object.c: runtime.h - -objc-class.o: objc-class.c - -objc-msg.o: objc-msg.c - -objc-init.o: objc-init.c - -objc-sel.o: objc-sel.c - -objc-object.o: objc-object.c - -libobjc.a: $(OBJS) +libobjc.a: $(OBJC_O) -rm -f libobjc.a - $(AR) rc libobjc.a $(OBJS) + $(AR) rc libobjc.a $(OBJC_O) # ranlib is run in the parent directory's makefile. +OBJC_H = hash.h list.h sarray.h objc.h \ + objc-api.h objc-archive.h cache.h \ + Object.h Protocol.h mutex.h + +# copy objc headers to installation include directory +copy-headers: $(OBJC_H) + -rm -fr $(incinstalldir)/objc + mkdir $(incinstalldir)/objc + for file in $(OBJC_H); do \ + realfile=$(srcdir)/objc/$$file; \ + cp $$realfile $(incinstalldir)/objc; \ + chmod a+r $(incinstalldir)/objc; \ + done + +objc-msg.o: objc-msg.c fflags + $(GCC_FOR_TARGET) `cat fflags` -c $(GCC_CFLAGS) $(SUBDIR_INCLUDES) $< + +## Next to are for heuristics on forwarding mechanism... +_forward: _forward.c + $(GCC_FOR_TARGET) -c $(GCC_CFLAGS) $(SUBDIR_INCLUDES) $< + $(GCC_FOR_TARGET) ./_forward.o -o _forward + +fflags: _forward + -rm -f fflags + -./_forward > fflags + mostlyclean: - -rm -f $(OBJS) libobjc.a + -rm -f *.o libobjc.a _forward fflags clean: mostlyclean distclean: mostlyclean extraclean: mostlyclean -- 2.30.2