home *** CD-ROM | disk | FTP | other *** search
/ OpenStep 4.2J (Developer) / os42jdev.iso / NextDeveloper / Source / GNU / cctools / libstuff / Makefile < prev    next >
Makefile  |  1995-10-12  |  5KB  |  172 lines

  1. OFLAG = -O
  2. CFLAGS = $(OFLAG) -g -Wall -Wno-precomp -I$(SRCROOT)/../include
  3.  
  4. SRCROOT = .
  5. SYMROOT = .
  6. OBJROOT = .
  7. OFILE_DIRS = $(OBJROOT)/static_obj $(OBJROOT)/dynamic_obj\
  8.          $(OBJROOT)/profile_obj $(OBJROOT)/shlib_obj
  9. OFILE_DIR = $(OBJROOT)
  10. VPATH = $(OFILE_DIR)
  11.  
  12. CFILES1 = allocate.c errors.c arch.c execute.c bytesex.c round.c hppa.c
  13. CFILES2 = arch_usage.c set_arch_flag_name.c swap_headers.c hash_string.c \
  14.       breakout.c writeout.c checkout.c fatal_arch.c get_toc_byte_sex.c \
  15.       ofile.c ofile_get_word.c best_arch.c reloc.c vm_flush_cache.c \
  16.       print.c fatals.c version_number.c
  17. OBJS1 = $(CFILES1:.c=.o)
  18. OBJS2 = $(CFILES2:.c=.o)
  19. INSTALL_FILES = $(CFILES1) $(CFILES2) Makefile notes
  20.  
  21. all: $(OFILE_DIRS) $(SYMROOT) static dynamic profile shlib
  22.  
  23. fromGNUsrc:    $(OFILE_DIRS) $(SYMROOT) static dynamic
  24.  
  25. static: $(OBJROOT)/static_obj
  26.     @if [ $(SRCROOT) = . ];                        \
  27.     then                                \
  28.         cd static_obj;                        \
  29.         $(MAKE) -f ../Makefile libstuff.a            \
  30.         PRODUCT=libstuff.a                    \
  31.         VPATH=..                         \
  32.         OFILE_DIR=.                        \
  33.         SRCROOT=..                        \
  34.         SYMROOT=..                        \
  35.         COPTS="-static"                        \
  36.         OFLAG="$(OFLAG)"                    \
  37.         CFILES2="$(CFILES2)"                    \
  38.         RC_CFLAGS="$(RC_CFLAGS)"                \
  39.         RC_ARCHS="$(RC_ARCHS)";                    \
  40.     else                                \
  41.         cd $(OBJROOT)/static_obj;                    \
  42.         $(MAKE) -f $(SRCROOT)/Makefile libstuff.a        \
  43.         PRODUCT=libstuff.a                    \
  44.         VPATH=$(SRCROOT)                    \
  45.         OFILE_DIR=$(OBJROOT)/static_obj                \
  46.         SRCROOT=$(SRCROOT)                    \
  47.         SYMROOT=$(SYMROOT)                    \
  48.         COPTS="-static"                        \
  49.         OFLAG="$(OFLAG)"                    \
  50.         CFILES2="$(CFILES2)"                    \
  51.         RC_CFLAGS="$(RC_CFLAGS)"                \
  52.         RC_ARCHS="$(RC_ARCHS)";                    \
  53.     fi
  54.  
  55. dynamic: $(OBJROOT)/dynamic_obj
  56.     @if [ $(SRCROOT) = . ];                        \
  57.     then                                \
  58.         cd dynamic_obj;                        \
  59.         $(MAKE) -f ../Makefile libstuff.dylib            \
  60.         PRODUCT=libstuff.dylib                    \
  61.         VPATH=..                         \
  62.         OFILE_DIR=.                        \
  63.         SRCROOT=..                        \
  64.         SYMROOT=..                        \
  65.         COPTS="-dynamic"                    \
  66.         OFLAG="$(OFLAG)"                    \
  67.         CFILES2="$(CFILES2)"                    \
  68.         RC_CFLAGS="$(RC_CFLAGS)"                \
  69.         RC_ARCHS="$(RC_ARCHS)";                    \
  70.     else                                \
  71.         cd $(OBJROOT)/dynamic_obj;                    \
  72.         $(MAKE) -f $(SRCROOT)/Makefile libstuff.dylib        \
  73.         PRODUCT=libstuff.dylib                    \
  74.         VPATH=$(SRCROOT)                    \
  75.         OFILE_DIR=$(OBJROOT)/dynamic_obj            \
  76.         SRCROOT=$(SRCROOT)                    \
  77.         SYMROOT=$(SYMROOT)                    \
  78.         COPTS="-dynamic"                    \
  79.         OFLAG="$(OFLAG)"                    \
  80.         CFILES2="$(CFILES2)"                    \
  81.         RC_CFLAGS="$(RC_CFLAGS)"                \
  82.         RC_ARCHS="$(RC_ARCHS)";                    \
  83.     fi
  84.  
  85. profile: $(OBJROOT)/profile_obj
  86.     @if [ $(SRCROOT) = . ];                        \
  87.     then                                \
  88.         cd profile_obj;                        \
  89.         $(MAKE) -f ../Makefile libstuff_p.a            \
  90.         PRODUCT=libstuff_p.a                    \
  91.         VPATH=..                         \
  92.         OFILE_DIR=.                        \
  93.         SRCROOT=..                        \
  94.         SYMROOT=..                        \
  95.         COPTS="-dynamic -pg"                    \
  96.         OFLAG="$(OFLAG)"                    \
  97.         RC_CFLAGS="$(RC_CFLAGS)"                \
  98.         RC_ARCHS="$(RC_ARCHS)";                    \
  99.     else                                \
  100.         cd $(OBJROOT)/profile_obj;                    \
  101.         $(MAKE) -f $(SRCROOT)/Makefile libstuff_p.a        \
  102.         PRODUCT=libstuff_p.a                    \
  103.         VPATH=$(SRCROOT)                    \
  104.         OFILE_DIR=$(OBJROOT)/profile_obj            \
  105.         SRCROOT=$(SRCROOT)                    \
  106.         SYMROOT=$(SYMROOT)                    \
  107.         COPTS="-dynamic -pg"                    \
  108.         OFLAG="$(OFLAG)"                    \
  109.         RC_CFLAGS="$(RC_CFLAGS)"                \
  110.         RC_ARCHS="$(RC_ARCHS)";                    \
  111.     fi
  112.  
  113. shlib: $(OBJROOT)/shlib_obj
  114.     @if [ $(SRCROOT) = . ];                        \
  115.     then                                \
  116.         cd shlib_obj;                        \
  117.         $(MAKE) -f ../Makefile libstuff_s.a            \
  118.         PRODUCT=libstuff_s.a                    \
  119.         VPATH=..                         \
  120.         OFILE_DIR=.                        \
  121.         SRCROOT=..                        \
  122.         SYMROOT=..                        \
  123.         COPTS="-static -DSHLIB -I/LocalDeveloper/Headers/libsys $(REL3COMPAT)" \
  124.         OFLAG="$(OFLAG)"                    \
  125.         RC_CFLAGS="$(RC_CFLAGS)"                \
  126.         RC_ARCHS="$(RC_ARCHS)";                    \
  127.     else                                \
  128.         cd $(OBJROOT)/shlib_obj;                    \
  129.         $(MAKE) -f $(SRCROOT)/Makefile libstuff_s.a        \
  130.         PRODUCT=libstuff_s.a                    \
  131.         VPATH=$(SRCROOT)                    \
  132.         OFILE_DIR=$(OBJROOT)/shlib_obj                \
  133.         SRCROOT=$(SRCROOT)                    \
  134.         SYMROOT=$(SYMROOT)                    \
  135.         COPTS="-static -DSHLIB -I/LocalDeveloper/Headers/libsys $(REL3COMPAT)" \
  136.         OFLAG="$(OFLAG)"                    \
  137.         RC_CFLAGS="$(RC_CFLAGS)"                \
  138.         RC_ARCHS="$(RC_ARCHS)";                    \
  139.     fi
  140.  
  141. $(PRODUCT):    $(OFILE_DIR) $(SYMROOT) $(OBJS1) $(OBJS2)
  142.     libtool -static -o $(SYMROOT)/$(PRODUCT) $(OBJS1) $(OBJS2)
  143.  
  144. .c.o:
  145.     $(CC) $(CFLAGS) $(RC_CFLAGS) $(COPTS) -c \
  146.         -MD -dependency-file $(OFILE_DIR)/$*.d \
  147.         -o $(OFILE_DIR)/$*.o $*.c
  148.     md -d -u $(OFILE_DIR)/Makedep $(OFILE_DIR)/$*.d
  149.  
  150. clean shlib_clean:
  151.     -rm -r -f $(OFILE_DIRS)
  152.     -rm -f libstuff.a libstuff.dylib libstuff_p.a libstuff_s.a
  153.  
  154. install: all
  155.  
  156. installGNUsrc:
  157.     mkdirs $(SRCROOT)
  158.     chmod 755 $(SRCROOT)
  159.     tar cf - $(CFILES1) Makefile | (cd $(SRCROOT); tar xf -)
  160.     chmod 444 $(SRCROOT)/*
  161.  
  162. installsrc:
  163.     mkdirs $(SRCROOT)
  164.     chmod 755 $(SRCROOT)
  165.     tar cf - $(INSTALL_FILES) | (cd $(SRCROOT); tar xf -)
  166.     chmod 444 $(SRCROOT)/*
  167.  
  168. $(OFILE_DIRS) $(SYMROOT):
  169.     mkdirs $@
  170.  
  171. -include $(OFILE_DIR)/Makedep
  172.