home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / gcc-2.7.2.1-base.tgz / gcc-2.7.2.1-base.tar / fsf / gcc / objc / Makefile < prev    next >
Makefile  |  1995-09-12  |  3KB  |  101 lines

  1. #  GNU Objective C Runtime Makefile
  2. #  Copyright (C) 1993, 1995 Free Software Foundation, Inc.
  3. #
  4. #  This file is part of GNU CC.
  5. #
  6. #  GNU CC is free software; you can redistribute it and/or modify it under the
  7. #  terms of the GNU General Public License as published by the Free Software
  8. #  Foundation; either version 2, or (at your option) any later version.
  9. #
  10. #  GNU CC is distributed in the hope that it will be useful, but WITHOUT ANY
  11. #  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  12. #  FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
  13. #  details.
  14. #
  15. #  You should have received a copy of the GNU General Public License along with
  16. #  GNU CC; see the file COPYING.  If not, write to the Free Software
  17. #  Foundation, 59 Temple Place - Suite 330,
  18. #  Boston, MA 02111-1307, USA.
  19.  
  20. #  This makefile is run by the parent dir's makefile.
  21. #  thisdir1=`pwd`; \
  22. #  srcdir1=`cd $(srcdir); pwd`; \
  23. #  cd objc; \
  24. #  $(MAKE) $(MAKEFLAGS) -f $$srcdir1/objc/Makefile libobjc.a \
  25. #    srcdir=$$srcdir1 tooldir=$(tooldir) AR="$(AR)" AR_FLAGS="$(AR_FLAGS)" \
  26. #    GCC_FOR_TARGET="$$thisdir1/xgcc -B$$thisdir1/" \
  27. #    GCC_CFLAGS="$(GCC_CFLAGS)" incinstalldir=$$thisdir1/include
  28. #  Two targets are used by ../Makefile: `all' and `mostlyclean'.
  29.  
  30. SHELL=/bin/sh
  31.  
  32. .SUFFIXES: .m
  33.  
  34. OPTIMIZE= -O
  35.  
  36. VPATH = $(srcdir)/objc
  37.  
  38. AR = ar
  39. AR_FLAGS = rc
  40.  
  41. # Always search these dirs when compiling.
  42. SUBDIR_INCLUDES = -I. -I.. -I$(srcdir) -I$(srcdir)/config
  43.  
  44. .c.o:
  45.     $(GCC_FOR_TARGET) $(OPTIMIZE) \
  46.         -c $(GCC_CFLAGS) $(SUBDIR_INCLUDES) $<
  47.  
  48. .m.o:
  49.     $(GCC_FOR_TARGET) $(OPTIMIZE) -fgnu-runtime \
  50.         -c $(GCC_CFLAGS) $(SUBDIR_INCLUDES) $<
  51.  
  52. # If we were not invoked from the parent dir,
  53. # invoke make in the parent dir and have reinvoke this makefile.
  54. # That's necessary to get the right values for srcdir, etc.
  55. all:
  56.     cd ..; $(MAKE) sublibobjc.a
  57.  
  58. OBJC_O = hash.o sarray.o class.o sendmsg.o init.o archive.o encoding.o \
  59.          selector.o objects.o misc.o NXConstStr.o Object.o Protocol.o
  60.  
  61. libobjc.a: $(OBJC_O)
  62.     -rm -f libobjc.a
  63.     $(AR) rc libobjc.a $?
  64. # ranlib is run in the parent directory's makefile.
  65.  
  66. OBJC_H = hash.h list.h sarray.h objc.h \
  67.          objc-api.h \
  68.      NXConstStr.h Object.h Protocol.h encoding.h typedstream.h
  69.  
  70. # copy objc headers to installation include directory
  71. copy-headers: 
  72.     -rm -fr $(incinstalldir)/objc
  73.     -mkdir $(incinstalldir)/objc
  74.     for file in $(OBJC_H); do \
  75.       realfile=$(srcdir)/objc/$${file}; \
  76.       cp $${realfile} $(incinstalldir)/objc; \
  77.       chmod a+r $(incinstalldir)/objc/$${file}; \
  78.     done
  79.  
  80. mostlyclean:
  81.     -rm -f *.o libobjc.a xforward fflags
  82. clean: mostlyclean
  83. distclean: mostlyclean
  84. extraclean: mostlyclean
  85.  
  86. # For Sun VPATH.
  87.  
  88. hash.o: hash.c
  89. sarray.o: sarray.c
  90. class.o: class.c
  91. sendmsg.o: sendmsg.c
  92. init.o: init.c
  93. archive.o: archive.c
  94. encoding.o: encoding.c
  95. selector.o: selector.c
  96. objects.o: objects.c
  97. misc.o: misc.c
  98. NXConstStr.o: NXConstStr.m
  99. Object.o: Object.m
  100. Protocol.o: Protocol.m
  101.