154 lines
3.5 KiB
Makefile
Executable File
154 lines
3.5 KiB
Makefile
Executable File
#
|
|
#ident "@(#)Makefile 1.54 95/07/17 SMI"
|
|
#
|
|
# Copyright (c) 1989-1995, by Sun Microsystems, Inc.
|
|
# All rights reserved.
|
|
#
|
|
# Makefile for system source
|
|
#
|
|
# include global definitions
|
|
include Makefile.master
|
|
#
|
|
# the Targetdirs file is the AT&T target.dirs file in a makefile format.
|
|
# it defines TARGETDIRS and ROOTDIRS.
|
|
include Targetdirs
|
|
|
|
COMMON_SUBDIRS= uts lib stand psm uts/adb cmd devices ucblib ucbcmd
|
|
|
|
SUBDIRS= $(COMMON_SUBDIRS) $($(MACH)_SUBDIRS)
|
|
|
|
HDRSUBDIRS= uts head lib cmd ucbhead
|
|
|
|
# UCB headers are bug-for-bug compatable and not checkable against the header
|
|
# standards.
|
|
#
|
|
CHKHDRSUBDIRS= head uts lib cmd
|
|
|
|
MSGSUBDIRS= cmd ucbcmd lib
|
|
DOMAINS= \
|
|
SUNW_OST_ADMIN \
|
|
SUNW_OST_NETRPC \
|
|
SUNW_OST_OSCMD \
|
|
SUNW_OST_OSLIB \
|
|
SUNW_OST_UCBCMD
|
|
|
|
MSGDDIRS= $(DOMAINS:%=$(MSGROOT)/%)
|
|
MSGDIRS= $(MSGROOT) $(MSGDDIRS) $(MSGROOT)/LC_TIME
|
|
|
|
all all_xmod := TARGET= all
|
|
install install_xmod := TARGET= install
|
|
install_h := TARGET= install_h
|
|
clean := TARGET= clean
|
|
clobber := TARGET= clobber
|
|
check := TARGET= check
|
|
_msg := TARGET= _msg
|
|
|
|
|
|
.KEEP_STATE:
|
|
|
|
#
|
|
# Note: install only builds the all target for the pkgdefs
|
|
# directory. We are not yet ready to have an install
|
|
# build create 'packages' also. To build packages
|
|
# cd pkgdefs and do a 'make install'
|
|
#
|
|
all: sgs $(SUBDIRS) pkg_all
|
|
install: sgs $(SUBDIRS) pkg_all
|
|
|
|
clean clobber: $(SUBDIRS) head pkgdefs
|
|
_msg: _msgdirs rootdirs _msgheaders $(MSGSUBDIRS)
|
|
|
|
# for a complete build from scratch
|
|
crankturn: sgs uts pkg_all
|
|
@cd lib; pwd; $(MAKE) install
|
|
@cd stand; $(MAKE) all
|
|
@cd psm; $(MAKE) all
|
|
@cd uts/adb; pwd; $(MAKE) all
|
|
@cd cmd; pwd; $(MAKE) all
|
|
@cd ucblib; pwd; $(MAKE) install
|
|
@cd ucbcmd; pwd; $(MAKE) all
|
|
|
|
pkg_all:
|
|
@cd pkgdefs; pwd; $(MAKE) all
|
|
|
|
#
|
|
# target for building a proto area for reference via the ROOT macro
|
|
#
|
|
protolibs: rootlibs ucblibs
|
|
|
|
# build all ucb libraries
|
|
#
|
|
ucblibs:
|
|
@cd ucblib; pwd; $(MAKE) install
|
|
|
|
# Base subset of rootproto, excluding ucb libraries
|
|
#
|
|
rootlibs: sgs
|
|
@cd lib; pwd; $(MAKE) install
|
|
|
|
# create target-variant symlinks
|
|
links:
|
|
@cd uts; pwd; $(MAKE) links
|
|
@cd lib/libc; pwd; $(MAKE) links
|
|
|
|
$(SUBDIRS) head ucbhead pkgdefs: FRC
|
|
@cd $@; pwd; $(MAKE) $(TARGET)
|
|
|
|
.PARALLEL: sysheaders userheaders libheaders cmdheaders ucbheaders
|
|
|
|
# librpcsvc has a dependency on headers installed by
|
|
# userheaders, hence the .WAIT before libheaders.
|
|
sgs: rootdirs .WAIT sysheaders userheaders .WAIT \
|
|
libheaders cmdheaders ucbheaders
|
|
|
|
# /var/mail/:saved is a special case because of the colon in the name.
|
|
#
|
|
rootdirs: $(ROOTDIRS)
|
|
$(INS) -d -m 775 $(ROOT)/var/mail/:saved
|
|
$(CH)$(CHOWN) root $(ROOT)/var/mail/:saved
|
|
$(CH)$(CHGRP) mail $(ROOT)/var/mail/:saved
|
|
|
|
_msgdirs: $(MSGDIRS)
|
|
|
|
$(ROOTDIRS) $(MSGDIRS):
|
|
$(INS.dir)
|
|
|
|
_msgheaders: userheaders sysheaders
|
|
@cd lib/libintl; pwd; $(MAKE) install_h
|
|
@cd lib/libtnf; pwd; $(MAKE) install_h
|
|
@cd lib/libtnfprobe; pwd; $(MAKE) install_h
|
|
|
|
userheaders: FRC
|
|
@cd head; pwd; $(MAKE) install_h
|
|
|
|
cmdheaders: FRC
|
|
@cd cmd; pwd; $(MAKE) install_h
|
|
|
|
libheaders: FRC
|
|
@cd lib; pwd; $(MAKE) install_h
|
|
|
|
sysheaders: FRC
|
|
@cd uts; pwd; $(MAKE) install_h
|
|
|
|
ucbheaders: FRC
|
|
@cd ucbhead; pwd; $(MAKE) install_h
|
|
|
|
# each xmod target depends on a corresponding MACH-specific pseudotarget
|
|
# before doing common xmod work
|
|
#
|
|
all_xmod install_xmod: $$@_$(MACH)
|
|
@cd uts/common/sys; pwd; $(MAKE) svvs_h
|
|
|
|
all_xmod_sparc install_xmod_sparc: FRC
|
|
@cd uts/sparc; pwd; \
|
|
$(MAKE) TARGET=$(TARGET) svvs pm wsdrv
|
|
@cd uts/sun4m; pwd; $(MAKE) TARGET=$(TARGET) cpr pmc
|
|
|
|
all_xmod_i386 install_xmod_i386: FRC
|
|
@cd uts/i86; pwd; $(MAKE) TARGET=$(TARGET) svvs
|
|
|
|
check: $(CHKHDRSUBDIRS)
|
|
|
|
FRC:
|
|
|