home *** CD-ROM | disk | FTP | other *** search
/ Nebula 2 / Nebula Two.iso / SourceCode / MiscKit1.7.1 / MiscKit / Makefiles / lib / Makefile.defaults < prev    next >
Encoding:
Makefile  |  1994-09-22  |  2.4 KB  |  81 lines

  1. # Makefile.defaults
  2. #
  3. # by Mike Ferris
  4. # Part of MOKit
  5. # Copyright 1993, all rights reserved
  6. #
  7. # Used in the MiscKit by permission.
  8. #
  9. # This is based on Next's standard library make architecture
  10.  
  11. ############################ Product names ############################
  12.  
  13. # names of the various end results of making
  14. OPT_LIB = lib$(NAME).a
  15. DEBUG_LIB = lib$(NAME)_g.a
  16. PROFILE_LIB = lib$(NAME)_p.a
  17.  
  18. # the default one to use
  19. PRODUCT = $(OPT_LIB)
  20.  
  21. ######################## Object file locations ########################
  22.  
  23. # architectures to compile
  24. # note: we really should use NeXT's obj directory naming scheme
  25. #  so that dependencies are handled properly!  We assume here that
  26. #  users won't be switching between archs...
  27. ARCHITECTURES = `$(ARCHIFY) $(TARGET_ARCHS)`
  28.  
  29. # names of various object file directories
  30. OBJROOT = .
  31. SYMROOT = .
  32.  
  33. OPT_OBJ = obj
  34. DEBUG_OBJ = debug_obj
  35. PROFILE_OBJ = profile_obj
  36.  
  37. OFILE_DIR = $(OBJROOT)/$(OPT_OBJ)
  38. SYM_DIR = $(SYMROOT)/sym
  39.  
  40. VPATH = $(OFILE_DIR):$(SYM_DIR):$(OBJROOT):$(SYMROOT)$(OTHER_VPATH)
  41.  
  42. ############################ File groups ############################
  43.  
  44. # all the source code
  45. SRCS = $(PSWFILES) $(PSWMFILES) $(MFILES) $(CFILES) $(SFILES) \
  46.             $(LFILES) $(LMFILES) $(YFILES) $(YMFILES) $(HFILES) \
  47.             $(PSFILES) $(OTHER_SRCS)
  48.  
  49. # all nonderived files needed to build the project
  50. INSTALL_FILES = $(SRCS) Makefile Makefile.depends
  51.  
  52. # headers
  53. HFILES = $(PRIVATE_INCFILES) $(PUBLIC_INCFILES)
  54.  
  55. # all the object files
  56. OFILES = $(PSWFILES:.psw=.o) $(PSWMFILES:.pswm=.o) $(MFILES:.m=.o) \
  57.             $(CFILES:.c=.o) $(SFILES:.s=.o) \
  58.             $(LFILES:.l=.o) $(LMFILES:.lm=.o) $(YFILES:.y=.o) \
  59.             $(YMFILES:.ym=.o) $(OTHER_SRCS_OFILES)
  60.  
  61. # source files derived during the build
  62. DERIVED_SRC = $(PSWFILES:.psw=.c) $(PSWFILES:.psw=.h) $(PSWMFILES:.pswm=.m) \
  63.             $(PSWMFILES:.pswm=.h) $(LFILES:.l=.c) $(LMFILES:.lm=.m) \
  64.             $(YFILES:.y=.c) $(YMFILES:.ym=.m)
  65.  
  66. # files to be removed on make clean
  67. COMMON_GARBAGE = $(BY_PRODUCTS) TAGS tags $(DERIVED_SRC) Makefile.depends \
  68.             .depend_done core .make.out* *~
  69.  
  70. # more specific garbage
  71. SPECIFIC_GARBAGE = lib$(NAME)*.a
  72.  
  73. # directories to remove on make clean
  74. DIRECTORY_GARBAGE = $(OPT_OBJ) $(DEBUG_OBJ) $(PROFILE_OBJ) $(SYM_DIR)
  75.  
  76. # dependency files generated in build process
  77. DFILES = $(MFILES:.m=.d) $(CFILES:.c=.d) $(PSWFILES:.psw=.d) \
  78.             $(PSWMFILES:.pswm=.d) $(SFILES:.s=.d) \
  79.             $(LFILES:.l=.d) $(LMFILES:.lm=.d) $(YFILES:.y=.d) \
  80.             $(YMFILES:.ym=.d)
  81.