Makefile.postamble   [plain text]


###############################################################################
#  NeXT Makefile.postamble Template
#  Copyright 1993, NeXT Computer, Inc.
#
#  This Makefile is used for configuring the standard app makefiles associated
#  with ProjectBuilder.  
#  
#  Use this template to set attributes for a project, sub-project, bundle, or
#  palette.  Each node in the project's tree of sub-projects and bundles 
#  should have it's own Makefile.preamble and Makefile.postamble.  Additional
#  rules (e.g., after_install) that are defined by the developer should be
#  defined in this file.
#
###############################################################################
# 
# Here are the variables exported by the common "app" makefiles that can be 
# used in any customizations you make to the template below:
# 
#	PRODUCT_ROOT - Name of top-level app-wrapper (e.g., Webster.app)
#	OFILE_DIR - Directory into which .o object files are generated.
#		    (Note that this name is calculated based on the target 
#		     architectures specified in Project Builder).
#	DERIVED_SRC_DIR - Directory used for all other derived files
#	ALL_CFLAGS - All the flags passed to the cc(1) driver for compilations
#
#	NAME - name of application, bundle, subproject, palette, etc.
#	LANGUAGE - langage in which the project is written (default "English")
#	ENGLISH - boolean flag set iff $(LANGUAGE) = "English"
#	JAPANESE - boolean flag set iff $(LANGUAGE) = "Japanese"
#	LOCAL_RESOURCES - localized resources (e.g. nib's, images) of project
#	GLOBAL_RESOURCES - non-localized resources of project
#	PROJECTVERSION - version of ProjectBuilder that output Makefile
#	APPICON - application icon file
#	DOCICONS - dock icon files
#	ICONSECTIONS - Specifies icon sections when linking executable 
#
#	CLASSES - Class implementation files in project.
#	HFILES - Header files in project.
#	MFILES - Other Objective-C source files in project. 
#	CFILES - Other C source files in project. 
#	PSWFILES - .psw files in the project
#	PSWMFILES - .pswm files in the project
#	SUBPROJECTS - Subprojects of this project
#	BUNDLES - Bundle subprojects of this project
#	OTHERSRCS - Other miscellaneous sources of this project
#	OTHERLINKED - Source files not matching a standard source extention
#
#	LIBS - Libraries to link with when making app target
#	DEBUG_LIBS - Libraries to link with when making debug target
#	PROF_LIBS - Libraries to link with when making profile target
#	OTHERLINKEDOFILES - Other relocatable files to (always) link in.
#
#	APP_MAKEFILE_DIR - Directory in which to find generic set of Makefiles
#	MAKEFILEDIR - Directory in which to find $(MAKEFILE)
#	MAKEFILE - Top level mechanism Makefile (e.g., app.make, bundle.make)
#	INSTALLDIR - Directory app will be installed into by 'install' target


# Change defaults assumed by the standard app makefiles here.  Edit the 
# following default values as appropriate. (Note that if no Makefile.postamble 
# exists, these values will have defaults set in common.make).

# Add Makefile.preamble, Makefile.postamble, and Makefile.dependencies here if
# you would like changes to them to invalidate previous builds.  The project
# depends on $(MAKEFILES) so that changes to Makefiles will trigger a re-build.
#MAKEFILES = Makefile 

# Optimization flag passed to compiler:
#OPTIMIZATION_CFLAG = -O

# Flags always passed to compiler:
#COMMON_CFLAGS = $(PROJECT_SPECIFIC_CFLAGS) -g -Wall  

# Flags passed to compiler in normal 'app' compiles:
#NORMAL_CFLAGS = $(COMMON_CFLAGS) $(OPTIMIZATION_CFLAG)

# Flags passed to compiler in 'debug' compiles:
#DEBUG_CFLAGS = $(COMMON_CFLAGS) -DDEBUG

# Flags passed to compiler in 'profile' compiles
#PROFILE_CFLAGS = $(COMMON_CFLAGS) -pg $(OPTIMIZATION_CFLAG) -DPROFILE

# Flags passed to yacc
#YFLAGS = -d

# Ownership and permissions of files installed by 'install' target
#INSTALL_AS_USER = root        # User to chown app to
#INSTALL_AS_GROUP = wheel      # Group to chgrp app to 
#INSTALL_PERMISSIONS =         # If set, 'install' chmod's executable to this

# Options to strip for bundles, apps with bundles, and apps without bundles, 
# respectively.
#RELOCATABLE_STRIP_OPTS = -x -u
#DYLD_APP_STRIP_OPTS = -A -n
#APP_STRIP_OPTS = 
#TOOL_STRIP_OPTS = 
#LIBRARY_STRIP_OPTS = -x -S   # Note: -S strips debugging symbols
# (Note: APP_STRIP_OPTS and TOOL_STRIP_OPTS default to empty, but
#  developers doing their own dynamic loading should set this to 
#  $(DYLD_APP_STRIP_OPTS)).
STRIPFLAGS =


#########################################################################
# Put rules to extend the behavior of the standard Makefiles here.  Typical 
# user-defined rules are before_install and after_install (please don't 
# redefine things like install or app, as they are owned by the top-level 
# Makefile API), which are rules that get invoked before and after the install 
# target runs.  Such rules should be specified with the '::' syntax rather than 
# a single colon.

# Needed since a .x file in Other Sources will require a corresponding .o
#%_xdr.c: %.x
#	$(RPCGEN) $(ALL_RPCFLAGS) -c -o $(SYM_DIR)/$*_xdr.c $*.x

#%_svc.c: %.x
#	$(RPCGEN) $(ALL_RPCFLAGS) -m -o $(SYM_DIR)/$*_svc.c $*.x

mount.h: mount.x
	$(RPCGEN) $(ALL_RPCFLAGS) -DWANT_NFS3 -h -o $(SYM_DIR)/mount.h mount.x

mount_xdr.c: mount.x
	$(RPCGEN) $(ALL_RPCFLAGS) -DWANT_NFS3 -c -o $(SYM_DIR)/mount_xdr.c mount.x

nfs_prot_xdr.c: nfs_prot.x
	$(RPCGEN) $(ALL_RPCFLAGS) -c -o $(SYM_DIR)/nfs_prot_xdr.c nfs_prot.x

nfs_prot_svc.c: nfs_prot.x
	$(RPCGEN) $(ALL_RPCFLAGS) -m -o $(SYM_DIR)/nfs_prot_svc.c nfs_prot.x

# Why is this necessary?!
mount.o:	mount.c
nfs_prot.o:	nfs_prot.c

# Include temporary header directory when installsrc'ing
copy::
	$(TAR) -cf - nfs | (cd $(SRCROOT); $(TAR) -xf -)

after_install:
	install -d $(DSTROOT)/usr/share/man/man8
	install -c -m 444 automount.8 $(DSTROOT)/usr/share/man/man8