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