source: mainline/boot/Makefile.common@ f52ce72

Last change on this file since f52ce72 was 7acd787, checked in by Jiri Svoboda <jiri@…>, 7 years ago

Utility for listing PCI devices

Currently all information presented can also be gathered from devctl -v,
although 'pci' prints it in a nice compact format. Ability to print
more information, including information not available from devctl,
can be added later.

  • Property mode set to 100644
File size: 5.9 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 bnchmark \
171 contacts \
172 corecfg \
173 cpptest \
174 devctl \
175 dnscfg \
176 dnsres \
177 download \
178 edit \
179 fdisk \
180 gunzip \
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 perf \
195 sbi \
196 sportdmp \
197 redir \
198 taskdump \
199 tester \
200 testread \
201 testrunner \
202 testwrit \
203 tetris \
204 tmon \
205 trace \
206 netecho \
207 nterm \
208 pci \
209 ping \
210 pkg \
211 stats \
212 sysinfo \
213 sysinst \
214 top \
215 untar \
216 usbinfo \
217 vol \
218 vuhid \
219 mkbd \
220 websrv \
221 date \
222 vcalc \
223 vdemo \
224 viewer \
225 df \
226 fontviewer \
227 wifi_supplicant
228
229ifeq ($(CONFIG_BUILD_SHARED_LIBS), y)
230 RD_APPS_NON_ESSENTIAL += dltest dltests
231endif
232
233RD_TESTS = \
234 $(USPACE_PATH)/lib/c/test-libc \
235 $(USPACE_PATH)/lib/label/test-liblabel \
236 $(USPACE_PATH)/lib/posix/test-libposix \
237 $(USPACE_PATH)/lib/sif/test-libsif \
238 $(USPACE_PATH)/lib/uri/test-liburi \
239 $(USPACE_PATH)/lib/math/test-libmath \
240 $(USPACE_PATH)/drv/bus/usb/xhci/test-xhci \
241 $(USPACE_PATH)/app/bdsh/test-bdsh \
242 $(USPACE_PATH)/srv/net/tcp/test-tcp \
243 $(USPACE_PATH)/srv/volsrv/test-volsrv \
244
245RD_DATA_ESSENTIAL = \
246 $(USPACE_PATH)/app/bdsh/demo.txt
247
248RD_DATA_NON_ESSENTIAL = \
249 $(USPACE_PATH)/app/modplay/demo.xm \
250 $(USPACE_PATH)/app/viewer/logo.tga
251
252
253COMPONENTS = \
254 $(KERNEL_PATH)/kernel.elf \
255 $(INIT_TASKS) \
256 $(INITRD).img
257
258
259LINK = arch/$(BARCH)/_link.ld
260COMP = component
261COMPS = $(COMP)s
262
263-include arch/$(BARCH)/Makefile.inc
264
265ifeq ($(CONFIG_BAREBONE),y)
266 RD_SRVS = $(RD_SRVS_ESSENTIAL)
267 RD_APPS = $(RD_APPS_ESSENTIAL)
268 RD_DRVS = $(RD_DRVS_ESSENTIAL)
269 RD_DRVS_FW = $(RD_DRVS_FW_ESSENTIAL)
270 RD_DATA = $(RD_DATA_ESSENTIAL)
271else
272 RD_SRVS = $(RD_SRVS_ESSENTIAL) $(RD_SRVS_NON_ESSENTIAL)
273 RD_APPS = $(RD_APPS_ESSENTIAL) $(RD_APPS_NON_ESSENTIAL)
274 RD_DRVS = $(RD_DRVS_ESSENTIAL) $(RD_DRVS_NON_ESSENTIAL)
275 RD_DRVS_FW = $(RD_DRVS_FW_ESSENTIAL) $(RD_DRVS_FW_NON_ESSENTIAL)
276 RD_DATA = $(RD_DATA_ESSENTIAL) $(RD_DATA_NON_ESSENTIAL)
277endif
278
279MODULES := $(notdir $(COMPONENTS))
280
281BOOT_OUTPUT ?= $(ROOT_PATH)/image.boot
282RAW ?= image.raw
283JOB ?= image.job
284MAP ?= image.map
285BUILD ?= Makefile.build
Note: See TracBrowser for help on using the repository browser.