4 # The contents of this file are subject to the terms of the
5 # Common Development and Distribution License (the "License").
6 # You may not use this file except in compliance with the License.
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
22 # Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved.
23 # Copyright 2010 Nexenta Systems, Inc. All rights reserved.
25 include ..
/Makefile.master
28 # Note that the commands 'agents', 'lp', 'perl', and 'man' are first in
29 # the list, violating alphabetical order. This is because they are very
30 # long-running and should be given the most wall-clock time for a
33 # Commands in the FIRST_SUBDIRS list are built before starting the build
34 # of other commands. Currently this includes only 'isaexec' and
35 # 'platexec'. This is necessary because $(ROOT)/usr/lib/isaexec or
36 # $(ROOT)/usr/lib/platexec must exist when some other commands are built
37 # because their 'make install' creates a hard link to one of them.
39 # Commands are listed one per line so that TeamWare can auto-merge most
468 $(CLOSED_BUILD
)COMMON_SUBDIRS
+= \
469 $(CLOSED
)/cmd
/iconv \
471 $(CLOSED
)/cmd
/localedef \
472 $(CLOSED
)/cmd
/more_xpg4 \
475 $(CLOSED
)/cmd
/patch \
477 $(CLOSED
)/cmd
/printf \
479 $(CLOSED
)/cmd
/sed_xpg4
511 # Commands that are messaged. Note that 'lp' and 'man' come first
512 # (see previous comment about 'lp' and 'man').
752 $(CLOSED_BUILD
)MSGSUBDIRS
+= \
753 $(CLOSED
)/cmd
/iconv \
755 $(CLOSED
)/cmd
/localedef \
756 $(CLOSED
)/cmd
/more_xpg4 \
758 $(CLOSED
)/cmd
/patch \
760 $(CLOSED
)/cmd
/printf \
762 $(CLOSED
)/cmd
/sed_xpg4
775 # commands that use dcgettext for localized time, LC_TIME
790 $(CLOSED_BUILD
)DCSUBDIRS
+= \
794 # commands that belong only to audit.
809 # commands not owned by the systems group
815 install := TARGET
= install
816 clean := TARGET
= clean
817 clobber := TARGET
= clobber
818 lint
:= TARGET
= lint
819 _msg
:= TARGET
= _msg
824 SUBDIRS
= $(COMMON_SUBDIRS
) $($(MACH
)_SUBDIRS
)
826 .PARALLEL
: $(BWOSDIRS
) $(SUBDIRS
) $(MSGSUBDIRS
) $(AUDITSUBDIRS
)
828 all install clean clobber lint
: $(FIRST_SUBDIRS
) .WAIT
$(SUBDIRS
) \
832 # Manifests cannot be checked in parallel, because we are using
833 # the global repository that is in $(SRC)/cmd/svc/seed/global.db.
834 # For this reason, to avoid .PARALLEL and .NO_PARALLEL conflicts,
835 # we spawn off a sub-make to perform the non-parallel 'make check'
838 $(MAKE
) -f Makefile.
check check
841 # The .WAIT directive works around an apparent bug in parallel make.
842 # Evidently make was getting the target _msg vs. _dc confused under
843 # some level of parallelization, causing some of the _dc objects
846 _msg
: $(MSGSUBDIRS
) $($(MACH
)_MSGSUBDIRS
) .WAIT _dc
858 $(FIRST_SUBDIRS
) $(BWOSDIRS
) $(SUBDIRS
) $(AUDITSUBDIRS
): FRC
859 @if
[ -f
$@
/Makefile
]; then \
860 cd
$@
; pwd
; $(MAKE
) $(TARGET
); \