1 ###############################################################################
3 # Copyright 1997, Apple Computer, Inc.
5 # Use this makefile, which is imported after all other makefiles, to
6 # override attributes for a project's Makefile environment. This allows you
7 # to take advantage of the environment set up by the other Makefiles.
8 # You can also define custom rules at the end of this file.
10 ###############################################################################
12 # These variables are exported by the standard makefiles and can be
13 # used in any customizations you make. They are *outputs* of
14 # the Makefiles and should be used, not set.
16 # PRODUCTS: products to install. All of these products will be placed in
17 # the directory $(DSTROOT)$(INSTALLDIR)
18 # GLOBAL_RESOURCE_DIR: The directory to which resources are copied.
19 # LOCAL_RESOURCE_DIR: The directory to which localized resources are copied.
20 # OFILE_DIR: Directory into which .o object files are generated.
21 # DERIVED_SRC_DIR: Directory used for all other derived files
23 # ALL_CFLAGS: flags to pass when compiling .c files
24 # ALL_MFLAGS: flags to pass when compiling .m files
25 # ALL_CCFLAGS: flags to pass when compiling .cc, .cxx, and .C files
26 # ALL_MMFLAGS: flags to pass when compiling .mm, .mxx, and .M files
27 # ALL_PRECOMPFLAGS: flags to pass when precompiling .h files
28 # ALL_LDFLAGS: flags to pass when linking object files
29 # ALL_LIBTOOL_FLAGS: flags to pass when libtooling object files
30 # ALL_PSWFLAGS: flags to pass when processing .psw and .pswm (pswrap) files
31 # ALL_RPCFLAGS: flags to pass when processing .rpc (rpcgen) files
32 # ALL_YFLAGS: flags to pass when processing .y (yacc) files
33 # ALL_LFLAGS: flags to pass when processing .l (lex) files
35 # NAME: name of application, bundle, subproject, palette, etc.
36 # LANGUAGES: langages in which the project is written (default "English")
37 # English_RESOURCES: localized resources (e.g. nib's, images) of project
38 # GLOBAL_RESOURCES: non-localized resources of project
40 # SRCROOT: base directory in which to place the new source files
41 # SRCPATH: relative path from SRCROOT to present subdirectory
43 # INSTALLDIR: Directory the product will be installed into by 'install' target
44 # PUBLIC_HDR_INSTALLDIR: where to install public headers. Don't forget
45 # to prefix this with DSTROOT when you use it.
46 # PRIVATE_HDR_INSTALLDIR: where to install private headers. Don't forget
47 # to prefix this with DSTROOT when you use it.
49 # EXECUTABLE_EXT: Executable extension for the platform (i.e. .exe on Windows)
51 ###############################################################################
53 # Some compiler flags can be overridden here for certain build situations.
55 # WARNING_CFLAGS: flag used to set warning level (defaults to -Wmost)
56 # DEBUG_SYMBOLS_CFLAGS: debug-symbol flag passed to all builds (defaults
58 # DEBUG_BUILD_CFLAGS: flags passed during debug builds (defaults to -DDEBUG)
59 # OPTIMIZE_BUILD_CFLAGS: flags passed during optimized builds (defaults
61 # PROFILE_BUILD_CFLAGS: flags passed during profile builds (defaults
63 # LOCAL_DIR_INCLUDE_DIRECTIVE: flag used to add current directory to
64 # the include path (defaults to -I.)
65 # DEBUG_BUILD_LDFLAGS, OPTIMIZE_BUILD_LDFLAGS, PROFILE_BUILD_LDFLAGS: flags
66 # passed to ld/libtool (defaults to nothing)
68 WARNING_CFLAGS = -Wall -Wno-format
69 OPTIMIZE_BUILD_CFLAGS = -Os
71 # Library and Framework projects only:
72 # INSTALL_NAME_DIRECTIVE: This directive ensures that executables linked
73 # against the framework will run against the correct version even if
74 # the current version of the framework changes. You may override this
75 # to "" as an alternative to using the DYLD_LIBRARY_PATH during your
76 # development cycle, but be sure to restore it before installing.
79 # Ownership and permissions of files installed by 'install' target
81 #INSTALL_AS_USER = root
82 # User/group ownership
83 #INSTALL_AS_GROUP = wheel
84 # (probably want to set both of these)
85 #INSTALL_PERMISSIONS =
86 # If set, 'install' chmod's executable to this
89 # Options to strip. Note: -S strips debugging symbols (executables can be stripped
90 # down further with -x or, if they load no bundles, with no options at all).
95 #########################################################################
96 # Put rules to extend the behavior of the standard Makefiles here. Include them in
97 # the dependency tree via cvariables like AFTER_INSTALL in the Makefile.preamble.
99 # You should avoid redefining things like "install" or "app", as they are
100 # owned by the top-level Makefile API and no context has been set up for where
101 # derived files should go.
105 $(RM) -f $(SYMROOT)/bootx
106 $(RM) -f $(SYMROOT)/bootx.bootinfo
107 $(RM) -f $(SYMROOT)/bootx.xcoff
108 $(RM) -f $(SYMROOT)/bootx.macho
111 $(CP) $(SYMROOT)/bootx $(SYMROOT)/bootx.macho
112 $(SYMROOT)/macho-to-xcoff $(SYMROOT)/bootx.macho $(SYMROOT)/bootx.xcoff
113 $(CP) $(SRCROOT)/bootx.tproj/bootinfo.hdr $(SYMROOT)/bootx.bootinfo
114 $(CAT) $(SYMROOT)/bootx.xcoff >> $(SYMROOT)/bootx.bootinfo
117 $(RM) -f $(DSTROOT)/bin/bootx
118 $(RM) -f $(DSTROOT)/bin/macho-to-xcoff
119 $(RM) -f $(DSTROOT)/bin/fcode-to-c
120 install -d -m 555 $(DSTROOT)/usr/standalone/ppc
121 install -c -m 444 $(SYMROOT)/bootx.bootinfo $(DSTROOT)/usr/standalone/ppc/bootx.bootinfo
122 install -c -m 444 $(SYMROOT)/bootx.xcoff $(DSTROOT)/usr/standalone/ppc/bootx.xcoff