source: trunk/Makefile.kmk@ 2512

Last change on this file since 2512 was 2477, checked in by bird, 20 years ago

early draft.

File size: 1.0 KB
Line 
1# $Id: $
2## @file
3#
4# kBuild Top-Level Makefile.
5#
6# This is not a standard kBuild makefile, the footer is not included.
7#
8# Copyright (c) 2005 knut st. osmundsen <bird@anduin.net>
9#
10#
11
12
13DEPTH = .
14include $(PATH_KBUILD)/header.kmk
15
16## SUBDIRS
17# The subdirectories to traverse.
18SUBDIRS = \
19 yacc \
20 ash
21
22## def_do_subdir
23# Generate rules to do one subdirectory.
24# @remark This is evaluated twice.
25define def_do_subdir
26
27# build and install
28subdir_$(subdir)_all:
29 $$(MAKE) -C $(subdir)
30
31# install
32subdir_$(subdir)_install:
33 $$(MAKE) -C $(subdir) install
34
35# packing
36subdir_$(subdir)_packing:
37 $$(MAKE) -C $(subdir) packing
38
39.NOTPARALLEL: subdir_$(subdir)_all subdir_$(subdir)_install subdir_$(subdir)_packing
40endef
41
42$(foreach subdir,$(SUBDIRS),$(eval $(def_do_subdir)))
43
44#
45# A pass
46#
47all_subdirs: | $(foreach subdir,$(SUBDIRS), subdir_$(subdir)_all)
48
49.NOTPARALLEL: all_subdirs
50
51
52#
53# The default rule.
54#
55all_recursive: | all_subdirs
56
57.NOTPARALLEL: all_recursive
58
Note: See TracBrowser for help on using the repository browser.