xref: /illumos-gate/usr/src/cmd/ast/Makefile (revision a8facf2616619e45ebfa3de1fa4def4b433a0245)
1#
2# This file and its contents are supplied under the terms of the
3# Common Development and Distribution License ("CDDL"), version 1.0.
4# You may only use this file in accordance with the terms of version
5# 1.0 of the CDDL.
6#
7# A full copy of the text of the CDDL should have accompanied this
8# source.  A copy of the CDDL is also available via the Internet at
9# http://www.illumos.org/license/CDDL.
10#
11
12#
13# Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
14#
15
16# Note that these AST components deliver installed headers to /usr/include/ast/
17# but nothing else in gate depends on these to build, and serveral of them are
18# auto-generated. The install_h target is deliberately not wired into
19# 'cmdheaders' in usr/src/Makefile as that would significantly increase the
20# time taken to run the 'setup' target. Instead, sub-components automatically
21# install header files as part of the 'install' target.
22
23include $(SRC)/Makefile.master
24
25all :=		TARGET= all
26clean :=	TARGET= clean
27clobber :=	TARGET= clobber
28_msg :=		TARGET= _msg
29install :=	TARGET= install
30install_h :=	TARGET= install_h
31# The _feature target is used to initially populate and to update the
32# FEATURE files for each component. It is not run as part of a normal
33# build.
34_feature :=	TARGET= _feature install
35
36SUBDIRS= \
37	tools \
38	libast \
39	libcmd \
40	libdll \
41	libpp \
42	libshell \
43	libsum \
44	ksh \
45	msgcc \
46	shcomp
47
48.KEEP_STATE:
49.PARALLEL: $(SUBDIRS)
50
51all clean clobber install install_h _msg _feature: $(SUBDIRS)
52
53$(SUBDIRS): FRC
54	@cd $@; pwd; $(MAKE) $(TARGET)
55
56FRC:
57
58libast:		tools
59libcmd:		libsum libast
60libdll:		libast
61libpp:		libast
62libshell:	libast libcmd libdll
63libsum:		libast
64
65shcomp:		libshell
66msgcc:		libast libpp
67ksh:		libshell shcomp
68