Commit c15648f7 by Richard Kenner

Changes to support ObjC as a front-end language.

From-SVN: r14284
parent 14bb9bd8
...@@ -34,39 +34,39 @@ SHELL=/bin/sh ...@@ -34,39 +34,39 @@ SHELL=/bin/sh
OPTIMIZE= -O OPTIMIZE= -O
VPATH = $(srcdir)/objc srcdir = .
VPATH = $(srcdir)
AR = ar AR = ar
AR_FLAGS = rc AR_FLAGS = rc
# Always search these dirs when compiling. # Define this as & to perform parallel make on a Sequent.
SUBDIR_INCLUDES = -I. -I.. -I$(srcdir) -I$(srcdir)/config # Note that this has some bugs, and it seems currently necessary
# to compile all the gen* files first by hand to avoid erroneous results.
P =
.c.o: # Definition of `all' is here so that new rules inserted by sed
$(GCC_FOR_TARGET) $(OPTIMIZE) \ # do not specify the default target.
-c $(GCC_CFLAGS) $(SUBDIR_INCLUDES) $< all: all.indirect
.m.o: # sed inserts variable overrides after the following line.
$(GCC_FOR_TARGET) $(OPTIMIZE) -fgnu-runtime \ ####target overrides
-c $(GCC_CFLAGS) $(SUBDIR_INCLUDES) $< ####host overrides
####cross overrides
####build overrides
# If we were not invoked from the parent dir,
# invoke make in the parent dir and have reinvoke this makefile.
# That's necessary to get the right values for srcdir, etc.
all:
cd ..; $(MAKE) sublibobjc.a
OBJC_O = hash.o sarray.o class.o sendmsg.o init.o archive.o encoding.o \ OBJC_H = hash.h objc-list.h sarray.h objc.h objc-api.h \
selector.o objects.o misc.o NXConstStr.o Object.o Protocol.o \ NXConstStr.h Object.h Protocol.h encoding.h typedstream.h thr.h
nil_method.o thr.o linking.o $(OBJC_THREAD_FILE).o
libobjc.a: $(OBJC_O) # Now figure out from those variables how to compile and link.
$(AR) rc libobjc.a $? all.indirect: Makefile compiler objc-runtime
# ranlib is run in the parent directory's makefile.
OBJC_H = hash.h objc-list.h sarray.h objc.h \ compiler:
objc-api.h \ cd ..; $(MAKE) cc1obj
NXConstStr.h Object.h Protocol.h encoding.h typedstream.h thr.h
objc-runtime:
cd ..; $(MAKE) libobjc.a
# copy objc headers to installation include directory # copy objc headers to installation include directory
copy-headers: copy-headers:
...@@ -78,6 +78,9 @@ copy-headers: ...@@ -78,6 +78,9 @@ copy-headers:
chmod a+r $(incinstalldir)/objc/$${file}; \ chmod a+r $(incinstalldir)/objc/$${file}; \
done done
Makefile: $(srcdir)/Makefile.in $(srcdir)/../configure
cd ..; $(SHELL) config.status
mostlyclean: mostlyclean:
-rm -f *.o libobjc.a xforward fflags -rm -f *.o libobjc.a xforward fflags
clean: mostlyclean clean: mostlyclean
...@@ -86,20 +89,3 @@ extraclean: mostlyclean ...@@ -86,20 +89,3 @@ extraclean: mostlyclean
# For Sun VPATH. # For Sun VPATH.
hash.o: hash.c
sarray.o: sarray.c
class.o: class.c
sendmsg.o: sendmsg.c
init.o: init.c
archive.o: archive.c
encoding.o: encoding.c
selector.o: selector.c
objects.o: objects.c
misc.o: misc.c
NXConstStr.o: NXConstStr.m
Object.o: Object.m
Protocol.o: Protocol.m
thr.o: thr.h thr.c
$(OBJC_THREAD_FILE).o: $(OBJC_THREAD_FILE).c
nil_method.o: nil_method.c
linking.o: linking.m
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment