home *** CD-ROM | disk | FTP | other *** search
/ Nebula 1994 June / NEBULA_SE.ISO / SourceCode / MiscKit / Source / Makefile < prev    next >
Encoding:
Makefile  |  1994-03-27  |  5.8 KB  |  163 lines

  1. # Makefile.lib.template
  2. #
  3. # by Mike Ferris
  4. # Part of MOKit
  5. # Copyright 1993, all rights reserved
  6. #
  7. # This is based at least loosely on Next's standard library make architecture
  8.  
  9. # This file has been modified by Don Yacktman for use in the MiscKit,
  10. # with permission from Mike Ferris.  Copyright (C) 1994 by Don Yacktman.
  11. # Redistribution and use is governed by the MiscKit license.
  12.  
  13. # directory where included Makefiles are located.
  14. MAKEFILES = ../Makefiles
  15. MAKE_DIR = $(MAKEFILES)/lib
  16.  
  17. include $(MAKEFILES)/MiscKit.version
  18.  
  19. # other directories to check for files (colon-separated and start the
  20. # list with a colon
  21. OTHER_VPATH = :../Headers/MiscKit
  22.  
  23. #  **1**  -LIBRARY NAME-
  24. #  The base name of the library goes here.  For example, if
  25. #  you enter "appkit" as the name, then the library created will 
  26. # be "libappkit.a".
  27. NAME = MiscKit
  28.  
  29. # precomp header name
  30. HNAME = misckit
  31.  
  32. # install destination root
  33. DSTROOT = 
  34.  
  35. #  **2**  -SOURCE FILES-
  36. #  Here list the .m, .c, .psw, .pswm, .s, .l, .lm, .y, .ym, .ps and
  37. #  .spec files.  You may delete any lines that you don't use.
  38. #  OTHER_SRCS is used for files with other suffixes that you wish
  39. #  to be treated like source (i.e., printed with the source, copied
  40. #  with the source, etc.).  For files in OTHER_SRCS, you need to
  41. #  specify the corresponding .o file in OTHER_SRCS_OFILES.
  42. MFILES = ExtendedApp.m MiscLockFile.m MiscLogFile.m MiscStopwatch.m \
  43.         MiscString.m MiscStringComparing.m MiscStringCompat.m \
  44.         MiscStringDebugging.m MiscStringFields.m MiscStringInsertion.m \
  45.         MiscStringModification.m MiscStringNEXTSTEP.m MiscStringReplacing.m \
  46.         MiscStringSearching.m MiscStringSybase.m MiscStringUNIX.m MiscTime.m \
  47.         MiscQueue.m MiscStack.m MiscTree.m MiscPriorityQueue.m \
  48.         MiscSearchText.m MiscColor.m MiscScreenColor.m MiscHalftoneColor.m \
  49.         MiscSerialPort.m MiscStringPatterns.m MiscLinkedListNode.m \
  50.         MiscLinkedList.m MiscStringArray.m MiscListExtensions.m \
  51.         MiscSubprocess.m MiscRemoteSubprocess.m MiscObjectRecycler.m \
  52.         MiscInfoController.m MiscInfo.m MiscOrderForm.m MiscRegistration.m \
  53.         MiscStringRegex.m MiscBundleLoader.m MiscClassVariable.m \
  54.         MiscNibController.m MiscList.m MiscSortedList.m MiscStorage.m \
  55.         MiscSortedStorage.m MiscMatrix.m MiscTree.Browser.m MiscXmodem.m
  56. CFILES = $(NAME)Version.c MiscTBMK.c regexpr.c Miscdaemon.c
  57. PSWFILES = 
  58. PSWMFILES = 
  59. SFILES = 
  60. LFILES = 
  61. LMFILES = 
  62. YFILES = 
  63. YMFILES = 
  64. PSFILES = 
  65. OTHER_SRCS = 
  66. OTHER_SRCS_OFILES = 
  67.  
  68. #  **3**  -COMMAND OPTIONS-
  69. #  These are passed as arguments to the Objective-C compiler, pswrap, 
  70. #  as, lex, yacc.  You may delete lines that you don't use.  
  71. #  All CFLAGS also get passed to Objective-C.
  72. #    DEBUGCFLAGS is substituted for CFLAGS when "debug" is made.
  73. #    PROFCFLAGS is substituted for CFLAGS when "profile" is made.
  74. #  Under OBJCFLAGS, for each library that you use that supplies class
  75. #  and message group files, you must use a -I$(OBJDIR)/XXX, where
  76. #  XXX is the base name of the library.
  77.  
  78. # Use one of the following ARCHITECTURES line to compile thin or fat
  79. # For default architecture:
  80. #ARCHITECTURES = 
  81. #ARCHITECTURES = -arch m68k
  82. #ARCHITECTURES = -arch i386
  83. #ARCHITECTURES = -arch hppa
  84. # For intel and moto.  Add others if you like...if you can...  :-)
  85. ARCHITECTURES = -arch m68k -arch i386
  86. # For intel and moto.  This'll probably useful to a few lucky slimes...  :-)
  87. #ARCHITECTURES = -arch m68k -arch i386 -arch hppa
  88.  
  89. COMMONCFLAGS = -Wall -I../Headers $(ARCHITECTURES)
  90. OBJCFLAGS = 
  91.  
  92. OPTCFLAGS = -O $(COMMONCFLAGS)
  93. DEBUGCFLAGS = -g -DDEBUG $(COMMONCFLAGS)
  94. PROFCFLAGS = -pg -g $(COMMONCFLAGS)
  95.  
  96. PSWFLAGS = 
  97. ASFLAGS = 
  98. LFLAGS = 
  99. YFLAGS = 
  100.  
  101. MVFLAGS = 
  102. MKDIRSFLAGS = -m 755
  103. IFLAGS = -q -c -m 444 -o root -g wheel
  104. ARFLAGS = ruv
  105. # Note: the last libtool flag MUST be a -o so the output file is set up right!
  106. LIBTOOLFLAGS = -o
  107. RANLIBFLAGS = 
  108.  
  109. #  **4**  -INCLUDE FILES-
  110. #  Private include files are used by the library's code, but not needed
  111. #  by the library's users.  Public include files are needed by others who
  112. #  will use the library, and must be installed along with the library.
  113. PUBLIC_INCFILES = ../Headers/misckit ../Headers/daymisckit \
  114.         ../Headers/ExtendedApp.h
  115. PRIVATE_INCFILES = 
  116.  
  117. #  **5**  -BY_PRODUCTS GENERATED FROM BUILDS-
  118. #  If your build procedure creates any files other than .o files and the
  119. #  .c and .m files left over from pswrap, you should list them here so
  120. #  they are removed when a make clean is done.
  121. BY_PRODUCTS = lib*.a
  122.  
  123. #  **6**  -INSTALLATION LOCATIONS-
  124. #  The following directories determines where files get installed.
  125. # places where libraries get installed
  126. LIBDIR = $(DSTROOT)/LocalDeveloper/Libraries
  127.  
  128. # places where headers get installed
  129. INCDIR = $(DSTROOT)/LocalDeveloper/Headers/$(NAME)
  130.  
  131. # place where PostScript package files get installed
  132. PSLIBDIR = $(DSTROOT)/LocalDeveloper/Libraries/$(NAME)
  133.  
  134. #this file included for standard functionality
  135. include $(MAKE_DIR)/Makefile.lib
  136.  
  137. #  **7**  -ALL AND INSTALL TARGETS-
  138. #  You must define your own all and install targets here.  "all" should
  139. #  build all products of your project.  "install" should install these
  140. #  products in the filesystem whose root is $(DSTROOT).  There are certain
  141. #  targets defined in Makefile.lib which you can use to fulfill the all
  142. #  and install targets.  These are optimized, debug, profile, shlib,
  143. #  optimized_install, debug_install, profile_install, shlib_install,
  144. #  and common_install.
  145. all:: version precomp optimized debug
  146.  
  147. install:: common_install optimized_install debug_install
  148.  
  149.  
  150. # You may comment in this line to get dependencies for the include files
  151. # you use.  To generate the dependencies, do a "make depend".
  152. #include Makefile.depends
  153.  
  154. #  any extra rules or dependencies can be added after this line
  155.  
  156. version:
  157.     ../Makefiles/buildversion $(NAME)Version.c $(NAME) $(VERSION) $(RELEASE)
  158.  
  159. # I really need to make more of an effort to do this rule right.
  160. precomp: ../Headers/$(HNAME)/$(HNAME).h
  161.     (cd ../Headers/$(HNAME); $(CC) $(OPTCFLAGS) $(CFLAGS) -ObjC -I..\
  162.             -precomp $(HNAME).h -o $(HNAME).p)
  163.