source: trunk/Makefile.kmk@ 3485

Last change on this file since 3485 was 3480, checked in by bird, 18 years ago

Need to build gzip first so we can install man pages.

  • Property svn:keywords set to Id
File size: 2.1 KB
Line 
1# $Id: Makefile.kmk 3480 2007-06-17 20:27:53Z bird $
2## @file
3#
4# Top-Level Makefile.
5# This is not a standard kBuild makefile, the footer is not included.
6#
7# Copyright (c) 2005-2007 knut st. osmundsen <bird-src-spam@anduin.net>
8#
9#
10# This file is part of kNIX.
11#
12# kNIX is free software; you can redistribute it and/or modify
13# it under the terms of the GNU General Public License as published by
14# the Free Software Foundation; either version 2 of the License, or
15# (at your option) any later version.
16#
17# kNIX is distributed in the hope that it will be useful,
18# but WITHOUT ANY WARRANTY; without even the implied warranty of
19# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20# GNU General Public License for more details.
21#
22# You should have received a copy of the GNU General Public License
23# along with kNIX; if not, write to the Free Software
24# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25#
26#
27
28
29
30DEPTH = .
31include $(PATH_KBUILD)/header.kmk
32
33## SUBDIRS
34# The subdirectories to traverse depth first.
35# (This is bootstrap order.)
36SUBDIRS = \
37 baselayout \
38 essentials/app-arch/gzip \
39 essentials/sys-apps/gawk \
40 essentials/sys-apps/diffutils \
41 yacc \
42 bsdmisc \
43 essentials/sys-apps/coreutils \
44 essentials/sys-apps/sed \
45 essentials/sys-devel/flex \
46 ash \
47 essentials
48
49## Skip these for now:
50# libc \
51# emx \
52
53## @todo
54# binutils \
55# gcc \
56
57## def_do_subdir
58# Generate rules to do one subdirectory.
59# @remark This is evaluated twice.
60define def_do_subdir
61
62# build and install
63subdir_$(subdir)_all:
64 +$$(MAKE) -C $(subdir)
65
66# install
67subdir_$(subdir)_install:
68 +$$(MAKE) -C $(subdir) install
69
70# packing
71subdir_$(subdir)_packing:
72 +$$(MAKE) -C $(subdir) packing
73
74.NOTPARALLEL: subdir_$(subdir)_all subdir_$(subdir)_install subdir_$(subdir)_packing
75endef
76
77$(foreach subdir,$(SUBDIRS),$(eval $(def_do_subdir)))
78
79#
80# A pass
81#
82all_subdirs: | $(foreach subdir,$(SUBDIRS), subdir_$(subdir)_all)
83
84.NOTPARALLEL: all_subdirs
85
86
87#
88# The default rule.
89#
90all_recursive: | all_subdirs
91
92.NOTPARALLEL: all_recursive
93
Note: See TracBrowser for help on using the repository browser.