source: mainline/boot/Makefile.common@ d17cf8c

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since d17cf8c was fe656783, checked in by Vojtech Horky <vojtech.horky@…>, 7 years ago

Rename perf to hbench

The main reason for the rename is that perf (and performance measuring
tool description) suggests that perf is a generic tool for measuring
performance of other applications. But it is actually a set of
benchmarks for measuring internal parts of HelenOS (libc, IPC, etc.).

Furthermore, perf is a well-known program in GNU/Linux world with
completely different purpose and there really is no reason why to
confuse the users.

The new name hopefully better suggests that the tool is a set of
benchmarks for HelenOS (hence the name (H)elenOS (bench)marks).

  • Property mode set to 100644
File size: 5.8 KB
Line 
1#
2# Copyright (c) 2006 Martin Decky
3# All rights reserved.
4#
5# Redistribution and use in source and binary forms, with or without
6# modification, are permitted provided that the following conditions
7# are met:
8#
9# - Redistributions of source code must retain the above copyright
10# notice, this list of conditions and the following disclaimer.
11# - Redistributions in binary form must reproduce the above copyright
12# notice, this list of conditions and the following disclaimer in the
13# documentation and/or other materials provided with the distribution.
14# - The name of the author may not be used to endorse or promote products
15# derived from this software without specific prior written permission.
16#
17# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27#
28
29## Configuration
30#
31
32ROOT_PATH = ..
33
34VERSION_DEF = $(ROOT_PATH)/version
35
36COMMON_MAKEFILE = $(ROOT_PATH)/Makefile.common
37COMMON_HEADER = $(ROOT_PATH)/common.h
38
39CONFIG_MAKEFILE = $(ROOT_PATH)/Makefile.config
40CONFIG_HEADER = $(ROOT_PATH)/config.h
41
42-include $(VERSION_DEF)
43-include $(COMMON_MAKEFILE)
44-include $(CONFIG_MAKEFILE)
45
46KERNEL_PATH = $(ROOT_PATH)/kernel
47USPACE_PATH = $(ROOT_PATH)/uspace
48DIST_PATH = $(USPACE_PATH)/dist
49DIST_OVERLAY_PATH = $(USPACE_PATH)/overlay
50TOOLS_PATH = $(ROOT_PATH)/tools
51DRVS_PATH = drv
52
53MKARRAY = $(TOOLS_PATH)/mkarray.py
54MKFAT = $(TOOLS_PATH)/mkfat.py
55MKEXT4 = $(TOOLS_PATH)/mkext4.py
56MKUIMAGE = $(TOOLS_PATH)/mkuimage.py
57
58ifeq ($(PRECHECK),y)
59 JOBFILE = $(TOOLS_PATH)/jobfile.py
60 # NOTE: You must not change the order of arguments.
61 CC_JOB = $(JOBFILE) $(JOB) $(CC) $< -o $@
62else
63 CC_JOB = $(CC) $< -o $@
64endif
65
66DISTROOT = distroot
67INITRD = initrd
68
69INIT_TASKS = \
70 $(USPACE_PATH)/srv/ns/ns \
71 $(USPACE_PATH)/srv/loader/loader \
72 $(USPACE_PATH)/app/init/init \
73 $(USPACE_PATH)/srv/locsrv/locsrv \
74 $(USPACE_PATH)/srv/bd/rd/rd \
75 $(USPACE_PATH)/srv/vfs/vfs \
76 $(USPACE_PATH)/srv/logger/logger
77
78ifeq ($(RDFMT),tmpfs)
79 INIT_TASKS += $(USPACE_PATH)/srv/fs/tmpfs/tmpfs
80endif
81
82ifeq ($(RDFMT),fat)
83 INIT_TASKS += $(USPACE_PATH)/srv/fs/fat/fat
84endif
85
86ifeq ($(RDFMT),ext4fs)
87 INIT_TASKS += $(USPACE_PATH)/srv/fs/ext4fs/ext4fs
88endif
89
90RD_SRVS_ESSENTIAL = \
91 hid/input \
92 hid/output \
93 hid/console \
94 devman \
95 fs/locfs \
96 hid/compositor \
97 klog
98
99RD_SRVS_NON_ESSENTIAL = \
100 bd/file_bd \
101 bd/sata_bd \
102 bd/vbd \
103 clipboard \
104 fs/tmpfs \
105 fs/fat \
106 fs/mfs \
107 fs/cdfs \
108 fs/exfat \
109 fs/udf \
110 fs/ext4fs \
111 hid/remcons \
112 hid/isdv4_tablet \
113 hid/rfb \
114 net/dhcp \
115 net/dnsrsrv \
116 net/ethip \
117 net/inetsrv \
118 net/loopip \
119 net/nconfsrv \
120 net/slip \
121 net/tcp \
122 net/udp \
123 taskmon \
124 test/chardev-test \
125 test/ipc-test \
126 volsrv
127
128RD_DRVS_ESSENTIAL = \
129 root/root \
130 root/virt \
131 fb/kfb
132
133RD_DRVS_NON_ESSENTIAL = \
134 test/test1 \
135 test/test2 \
136 test/test3 \
137 nic/ne2k \
138 nic/e1k \
139 nic/rtl8139 \
140 nic/rtl8169 \
141 nic/ar9271 \
142 nic/virtio-net \
143 block/ahci
144
145RD_DRV_CFG =
146
147RD_DRVS_FW_NON_ESSENTIAL = \
148 nic/ar9271
149
150RD_LIBS =
151
152ifeq ($(CONFIG_DEVEL_FILES), y)
153 RD_LIBS += \
154 $(USPACE_PATH)/lib/c/libc.a
155endif
156
157ifeq ($(CONFIG_BUILD_SHARED_LIBS), y)
158 RD_LIBS += \
159 $(USPACE_PATH)/lib/c/libc.so.0 \
160 $(USPACE_PATH)/lib/math/libmath.so.0 \
161 $(USPACE_PATH)/lib/dltest/libdltest.so.0
162endif
163
164RD_APPS_ESSENTIAL = bdsh getterm kio vlaunch vterm
165
166RD_APPS_NON_ESSENTIAL = \
167 barber \
168 bithenge \
169 blkdump \
170 contacts \
171 corecfg \
172 cpptest \
173 devctl \
174 dnscfg \
175 dnsres \
176 download \
177 edit \
178 fdisk \
179 gunzip \
180 hbench \
181 inet \
182 kill \
183 killall \
184 loc \
185 lprint \
186 mixerctl \
187 modplay \
188 logset \
189 mkfat \
190 mkexfat \
191 mkext4 \
192 mkmfs \
193 nic \
194 sbi \
195 sportdmp \
196 redir \
197 taskdump \
198 tester \
199 testread \
200 testrunner \
201 testwrit \
202 tetris \
203 tmon \
204 trace \
205 netecho \
206 nterm \
207 pci \
208 ping \
209 pkg \
210 stats \
211 sysinfo \
212 sysinst \
213 top \
214 untar \
215 usbinfo \
216 vol \
217 vuhid \
218 mkbd \
219 websrv \
220 date \
221 vcalc \
222 vdemo \
223 viewer \
224 df \
225 fontviewer \
226 wifi_supplicant
227
228ifeq ($(CONFIG_BUILD_SHARED_LIBS), y)
229 RD_APPS_NON_ESSENTIAL += dltest dltests
230endif
231
232RD_TESTS = \
233 $(USPACE_PATH)/lib/c/test-libc \
234 $(USPACE_PATH)/lib/label/test-liblabel \
235 $(USPACE_PATH)/lib/posix/test-libposix \
236 $(USPACE_PATH)/lib/sif/test-libsif \
237 $(USPACE_PATH)/lib/uri/test-liburi \
238 $(USPACE_PATH)/lib/math/test-libmath \
239 $(USPACE_PATH)/drv/bus/usb/xhci/test-xhci \
240 $(USPACE_PATH)/app/bdsh/test-bdsh \
241 $(USPACE_PATH)/srv/net/tcp/test-tcp \
242 $(USPACE_PATH)/srv/volsrv/test-volsrv \
243
244RD_DATA_ESSENTIAL = \
245 $(USPACE_PATH)/app/bdsh/demo.txt
246
247RD_DATA_NON_ESSENTIAL = \
248 $(USPACE_PATH)/app/modplay/demo.xm \
249 $(USPACE_PATH)/app/viewer/logo.tga
250
251
252COMPONENTS = \
253 $(KERNEL_PATH)/kernel.elf \
254 $(INIT_TASKS) \
255 $(INITRD).img
256
257
258LINK = arch/$(BARCH)/_link.ld
259COMP = component
260COMPS = $(COMP)s
261
262-include arch/$(BARCH)/Makefile.inc
263
264ifeq ($(CONFIG_BAREBONE),y)
265 RD_SRVS = $(RD_SRVS_ESSENTIAL)
266 RD_APPS = $(RD_APPS_ESSENTIAL)
267 RD_DRVS = $(RD_DRVS_ESSENTIAL)
268 RD_DRVS_FW = $(RD_DRVS_FW_ESSENTIAL)
269 RD_DATA = $(RD_DATA_ESSENTIAL)
270else
271 RD_SRVS = $(RD_SRVS_ESSENTIAL) $(RD_SRVS_NON_ESSENTIAL)
272 RD_APPS = $(RD_APPS_ESSENTIAL) $(RD_APPS_NON_ESSENTIAL)
273 RD_DRVS = $(RD_DRVS_ESSENTIAL) $(RD_DRVS_NON_ESSENTIAL)
274 RD_DRVS_FW = $(RD_DRVS_FW_ESSENTIAL) $(RD_DRVS_FW_NON_ESSENTIAL)
275 RD_DATA = $(RD_DATA_ESSENTIAL) $(RD_DATA_NON_ESSENTIAL)
276endif
277
278MODULES := $(notdir $(COMPONENTS))
279
280BOOT_OUTPUT ?= $(ROOT_PATH)/image.boot
281RAW ?= image.raw
282JOB ?= image.job
283MAP ?= image.map
284BUILD ?= Makefile.build
Note: See TracBrowser for help on using the repository browser.