1 ###############################################################################
3 # Copyright 1997, Apple Computer, Inc.
5 # Use this makefile for configuring the standard application makefiles
6 # associated with ProjectBuilder. It is included before the main makefile.
7 # In Makefile.preamble you set attributes for a project, so they are available
8 # to the project's makefiles. In contrast, you typically write additional rules or
9 # override built-in behavior in the Makefile.postamble.
11 # Each directory in a project tree (main project plus subprojects) should
12 # have its own Makefile.preamble and Makefile.postamble.
13 ###############################################################################
15 # Before the main makefile is included for this project, you may set:
17 # MAKEFILEDIR: Directory in which to find $(MAKEFILE)
18 # MAKEFILE: Top level mechanism Makefile (e.g., app.make, bundle.make)
20 # Compiler/linker flags added to the defaults: The OTHER_* variables will be
21 # inherited by all nested sub-projects, but the LOCAL_ versions of the same
22 # variables will not. Put your -I, -D, -U, and -L flags in ProjectBuilder's
23 # Build Attributes inspector if at all possible. To override the default flags
24 # that get passed to ${CC} (e.g. change -O to -O2), see Makefile.postamble. The
25 # variables below are *inputs* to the build process and distinct from the override
26 # settings done (less often) in the Makefile.postamble.
28 # OTHER_CFLAGS, LOCAL_CFLAGS: additional flags to pass to the compiler
29 # Note that $(OTHER_CFLAGS) and $(LOCAL_CFLAGS) are used for .h, ...c, .m,
30 # .cc, .cxx, .C, and .M files. There is no need to respecify the
31 # flags in OTHER_MFLAGS, etc.
32 # OTHER_MFLAGS, LOCAL_MFLAGS: additional flags for .m files
33 # OTHER_CCFLAGS, LOCAL_CCFLAGS: additional flags for .cc, .cxx, and ...C files
34 # OTHER_MMFLAGS, LOCAL_MMFLAGS: additional flags for .mm and .M files
35 # OTHER_PRECOMPFLAGS, LOCAL_PRECOMPFLAGS: additional flags used when
36 # precompiling header files
37 # OTHER_LDFLAGS, LOCAL_LDFLAGS: additional flags passed to ld and libtool
38 # OTHER_PSWFLAGS, LOCAL_PSWFLAGS: additional flags passed to pswrap
39 # OTHER_RPCFLAGS, LOCAL_RPCFLAGS: additional flags passed to rpcgen
40 # OTHER_YFLAGS, LOCAL_YFLAGS: additional flags passed to yacc
41 # OTHER_LFLAGS, LOCAL_LFLAGS: additional flags passed to lex
43 # These variables provide hooks enabling you to add behavior at almost every
46 # BEFORE_PREBUILD: targets to build before installing headers for a subproject
47 # AFTER_PREBUILD: targets to build after installing headers for a subproject
48 # BEFORE_BUILD_RECURSION: targets to make before building subprojects
49 # BEFORE_BUILD: targets to make before a build, but after subprojects
50 # AFTER_BUILD: targets to make after a build
52 # BEFORE_INSTALL: targets to build before installing the product
53 # AFTER_INSTALL: targets to build after installing the product
54 # BEFORE_POSTINSTALL: targets to build before postinstalling every subproject
55 # AFTER_POSTINSTALL: targts to build after postinstalling every subproject
57 # BEFORE_INSTALLHDRS: targets to build before installing headers for a
59 # AFTER_INSTALLHDRS: targets to build after installing headers for a subproject
60 # BEFORE_INSTALLSRC: targets to build before installing source for a subproject
61 # AFTER_INSTALLSRC: targets to build after installing source for a subproject
63 # BEFORE_DEPEND: targets to build before building dependencies for a
65 # AFTER_DEPEND: targets to build after building dependencies for a
68 # AUTOMATIC_DEPENDENCY_INFO: if YES, then the dependency file is
69 # updated every time the project is built. If NO, the dependency
70 # file is only built when the depend target is invoked.
72 # Framework-related variables:
73 # FRAMEWORK_DLL_INSTALLDIR: On Windows platforms, this variable indicates
74 # where to put the framework's DLL. This variable defaults to
75 # $(INSTALLDIR)/../Executables
77 # Library-related variables:
78 # PUBLIC_HEADER_DIR: Determines where public exported header files
79 # should be installed. Do not include $(DSTROOT) in this value --
80 # it is prefixed automatically. For library projects you should
81 # set this to something like /Developer/Headers/$(NAME). Do not set
82 # this variable for framework projects unless you do not want the
83 # header files included in the framework.
84 # PRIVATE_HEADER_DIR: Determines where private exported header files
85 # should be installed. Do not include $(DSTROOT) in this value --
86 # it is prefixed automatically.
87 # LIBRARY_STYLE: This may be either STATIC or DYNAMIC, and determines
88 # whether the libraries produced are statically linked when they
89 # are used or if they are dynamically loadable. This defaults to
91 # LIBRARY_DLL_INSTALLDIR: On Windows platforms, this variable indicates
92 # where to put the library's DLL. This variable defaults to
93 # $(INSTALLDIR)/../Executables
95 # INSTALL_AS_USER: owner of the intalled products (default root)
96 # INSTALL_AS_GROUP: group of the installed products (default wheel)
97 # INSTALL_PERMISSIONS: permissions of the installed product (default o+rX)
99 # OTHER_RECURSIVE_VARIABLES: The names of variables which you want to be
100 # passed on the command line to recursive invocations of make. Note that
101 # the values in OTHER_*FLAGS are inherited by subprojects automatically --
102 # you do not have to (and shouldn't) add OTHER_*FLAGS to
103 # OTHER_RECURSIVE_VARIABLES.
105 # Additional headers to export beyond those in the PB.project:
106 # OTHER_PUBLIC_HEADERS
107 # OTHER_PROJECT_HEADERS
108 # OTHER_PRIVATE_HEADERS
110 # Additional files for the project's product: <<path relative to proj?>>
111 # OTHER_RESOURCES: (non-localized) resources for this project
112 # OTHER_OFILES: relocatables to be linked into this project
113 # OTHER_LIBS: more libraries to link against
114 # OTHER_PRODUCT_DEPENDS: other dependencies of this project
115 # OTHER_SOURCEFILES: other source files maintained by .pre/postamble
116 # OTHER_GARBAGE: additional files to be removed by `make clean'
119 # Set this to YES if you don't want a final libtool call for a library/framework.
120 # BUILD_OFILES_LIST_ONLY
122 # To include a version string, project source must exist in a directory named
123 # $(NAME).%d[.%d][.%d] and the following line must be uncommented.
124 # OTHER_GENERATED_OFILES = $(VERS_OFILE)
126 # This definition will suppress stripping of debug symbols when an executable
127 # is installed. By default it is YES.
128 # STRIP_ON_INSTALL = NO
130 # Uncomment to suppress generation of a KeyValueCoding index when installing
131 # frameworks (This index is used by WOB and IB to determine keys available
132 # for an object). Set to YES by default.
133 # PREINDEX_FRAMEWORK = NO
135 # Change this definition to install projects somewhere other than the
136 # standard locations. NEXT_ROOT defaults to "C:/Apple" on Windows systems
137 # and "" on other systems.