source: trunk/Config.kmk@ 3809

Last change on this file since 3809 was 3665, checked in by bird, 15 years ago

emx: converted ldstub to nasm.

  • Property svn:keywords set to Id
File size: 4.8 KB
Line 
1# $Id: Config.kmk 3665 2010-09-17 00:56:18Z bird $
2## @file
3#
4# Top-level kBuild configuration.
5#
6# Copyright (c) 2006 knut st. osmundsen <bird@anduin.net>
7#
8#
9# This file is part of kNIX.
10#
11# kNIX is free software; you can redistribute it and/or modify
12# it under the terms of the GNU General Public License as published by
13# the Free Software Foundation; either version 2 of the License, or
14# (at your option) any later version.
15#
16# kNIX is distributed in the hope that it will be useful,
17# but WITHOUT ANY WARRANTY; without even the implied warranty of
18# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19# GNU General Public License for more details.
20#
21# You should have received a copy of the GNU General Public License
22# along with kNIX; if not, write to the Free Software
23# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24#
25#
26
27#
28# Add the packing pass.
29#
30PASSES += PACKING
31#DEFAULT_PASSES += PACKING
32
33#
34# This is where we install during the build.
35#
36PATH_INS := $(PATH_OUT)/dist
37
38#
39# The /bin templates.
40#
41TEMPLATE_bin = /bin/ programs.
42TEMPLATE_bin_TOOL = GCC3
43TEMPLATE_bin_TOOL.os2 = GCC3OMF
44TEMPLATE_bin_INST = bin/
45
46#
47# The /usr/bin templates.
48#
49TEMPLATE_usr.bin = /usr/bin/ programs.
50TEMPLATE_usr.bin_TOOL = GCC3
51TEMPLATE_usr.bin_TOOL.os2 = GCC3OMF
52TEMPLATE_usr.bin_INST = usr/bin/
53
54TEMPLATE_usr.bin.script = /usr/bin/ scripts
55TEMPLATE_usr.bin.script_INST = usr/bin/
56
57TEMPLATE_usr.bin.doc = /usr/bin/ program documentation.
58# 1: source 2: target 3: _INST 4: default ins path
59TEMPLATE_usr.bin.doc_INSTFUN = $(4)/usr/doc/$(subst .doc,,$(2))/$(notdir $(1))
60
61TEMPLATE_usr.bin.man = /usr/bin/ program manual page
62# 1: source 2: target 3: _INST 4: default ins path
63TEMPLATE_usr.bin.man_INSTFUN = $(4)/usr/man/man$(notdir $(subst .,/,$(1)))/$(notdir $(1)).gz
64# 1: source 2: destination, 3: target
65TEMPLATE_usr.bin.man_INSTALLER = gzip -9 -c $(1) > $(2)
66
67TEMPLATE_usr.bin.alp = /usr/bin/ libraries using alp as assembler.
68TEMPLATE_usr.bin.alp_TOOL = GCC3
69TEMPLATE_usr.bin.alp_TOOL.os2 = GCC3OMF
70TEMPLATE_usr.bin.alp_ASTOOL = ALP
71TEMPLATE_usr.bin.alp_ASFLAGS = -Sv:ALP
72TEMPLATE_usr.bin.alp_INST = usr/bin/
73
74TEMPLATE_usr.bin.nasm = /usr/lib/ libraries using nasm as assembler.
75TEMPLATE_usr.bin.nasm_TOOL = GCC3
76TEMPLATE_usr.bin.nasm_TOOL.os2 = GCC3OMF
77TEMPLATE_usr.bin.nasm_ASTOOL = NASM
78TEMPLATE_usr.bin.nasm_ASFLAGS = -f obj
79TEMPLATE_usr.bin.nasm_INST = usr/bin/
80
81#
82# The /usr/sbin templates.
83#
84TEMPLATE_usr.sbin = /usr/sbin/ programs.
85TEMPLATE_usr.sbin_TOOL = GCC3
86TEMPLATE_usr.sbin_TOOL.os2 = GCC3OMF
87TEMPLATE_usr.sbin_INST = usr/sbin/
88
89TEMPLATE_usr.sbin.script = /usr/sbin/ scripts
90TEMPLATE_usr.sbin.script_INST = usr/sbin/
91
92TEMPLATE_usr.sbin.doc = /usr/bin/ program documentation.
93# 1: source 2: target 3: _INST 4: default ins path
94TEMPLATE_usr.sbin.doc_INSTFUN = $(4)/usr/doc/$(subst .doc,,$(2))/$(notdir $(1))
95
96TEMPLATE_usr.sbin.man = /usr/bin/ program manual page
97# 1: source 2: target 3: _INST 4: default ins path
98TEMPLATE_usr.sbin.man_INSTFUN = $(4)/usr/man/man$(notdir $(subst .,/,$(1)))/$(notdir $(1)).gz
99# 1: source 2: destination, 3: target
100TEMPLATE_usr.sbin.man_INSTALLER = gzip -9 -c $(1) > $(2)
101
102
103#
104# The /usr/include templates.
105#
106TEMPLATE_usr.include = /usr/include/ headers
107TEMPLATE_usr.include_INST = usr/include/
108TEMPLATE_usr.include_MODE = 644
109
110TEMPLATE_usr.include.sys = /usr/include/sys/ headers
111TEMPLATE_usr.include.sys_INST = usr/include/sys/
112TEMPLATE_usr.include.sys_MODE = 644
113
114
115#
116# The /usr/lib templates.
117#
118TEMPLATE_usr.lib = /usr/lib/ libraries.
119TEMPLATE_usr.lib_TOOL = GCC3
120TEMPLATE_usr.lib_TOOL.os2 = GCC3OMF
121TEMPLATE_usr.lib_INST = usr/lib/
122TEMPLATE_usr.lib_MODE = 644
123
124TEMPLATE_usr.lib.nasm = /usr/lib/ libraries using nasm as assembler.
125TEMPLATE_usr.lib.nasm_TOOL = GCC3
126TEMPLATE_usr.lib.nasm_TOOL.os2 = GCC3OMF
127TEMPLATE_usr.lib.nasm_ASTOOL = NASM
128TEMPLATE_usr.lib.nasm_ASFLAGS = -f obj
129TEMPLATE_usr.lib.nasm_INST = usr/lib/
130TEMPLATE_usr.lib.nasm_MODE = 644
131
132
133#
134# The generic data install template.
135#
136TEMPLATE_gendata = generic data installation template.
137TEMPLATE_gendata_INST = /tmp
138TEMPLATE_gendata_MODE = 644
139
140#
141# The generic script install template.
142#
143TEMPLATE_genscript = generic script installation template.
144TEMPLATE_genscript_INST = /tmp
145TEMPLATE_genscript_MODE = 755
146
147
148#
149# The default way of packing.
150# We install to packages/<subdir>, then we zip up what's there.
151#
152PACKAGE_ZIP ?= $(PATH_OUT)/packages/$(CURSUBDIR).zip
153PATH_PACKAGE ?= $(PATH_OUT)/packages/$(CURSUBDIR)
154PACKING ?= defaultpacking
155defaultpacking:
156 $(RM) -f "$(PACKAGE_ZIP)"
157 $(RM) -Rf "$(PATH_PACKAGE)"
158 +$(MAKE) "PATH_INS=$(PATH_PACKAGE)" install
159 cd "$(PATH_PACKAGE)/" && zip -9r $(PATH_OUT)/packages/$(CURSUBDIR).zip *
160.NOTPARALLEL: defaultpacking
161# todo zip up the source and create a diff.
162
Note: See TracBrowser for help on using the repository browser.