source: mainline/uspace/Makefile@ 13db2044

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since 13db2044 was ee820ff, checked in by Jenda <jenda.jzqk73@…>, 7 years ago

Merge commit 'df368491aa1c0ce3024a51c602b7d0cbe4bd84d3'

  • Property mode set to 100644
File size: 5.9 KB
RevLine 
[c2ee1c5c]1#
[df4ed85]2# Copyright (c) 2005 Martin Decky
[c2ee1c5c]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
[177e4ea]29-include ../Makefile.common
[9a0367f]30-include ../Makefile.config
[c2ee1c5c]31
[1b1164e8]32## Common binaries
33#
34
[ecfd7e5]35DIRS = \
[a047aaa]36 app/barber \
[b3d513f]37 app/bdsh \
[a54bd98]38 app/bithenge \
[32d3ebf]39 app/blkdump \
[423f64f]40 app/bnchmark \
[92c1680]41 app/corecfg \
[7beb220]42 app/devctl \
[5d1cb8a]43 app/dnscfg \
[31e9fe0]44 app/dnsres \
[d7b7f5e]45 app/download \
[b3d513f]46 app/edit \
[e96047c]47 app/fdisk \
[a9763c6]48 app/fontviewer \
[b3d513f]49 app/getterm \
[b93ea46a]50 app/gunzip \
[b3d513f]51 app/init \
[b4ec1ea]52 app/inet \
[1e9f8ab]53 app/kill \
[c4faa0c]54 app/killall \
[6fa9a99d]55 app/kio \
[32d96e1]56 app/loc \
[669f5cae]57 app/logset \
[a6bdccc]58 app/mixerctl \
[dccf721]59 app/mkfat \
[e872326]60 app/mkexfat \
[7a46bfe]61 app/mkmfs \
[7e69e0e]62 app/modplay \
[5147ff1]63 app/netecho \
[01a7aa1]64 app/nterm \
[b3d513f]65 app/redir \
[94b39ba]66 app/rcutest \
[a440a0f]67 app/rcubench \
[09ababb7]68 app/sbi \
[c0e53ff]69 app/sportdmp \
[3d482e0]70 app/stats \
[336db295]71 app/taskdump \
[b3d513f]72 app/tester \
[6b3e7f7f]73 app/testread \
[2966122]74 app/testwrit \
[b3d513f]75 app/tetris \
[81ee1009]76 app/tmon \
[b3d513f]77 app/trace \
[5c058d50]78 app/top \
[ff042c0]79 app/untar \
[07b9203e]80 app/usbinfo \
[57c7050]81 app/vuhid \
[6bcecc2]82 app/nic \
[a79d88d]83 app/ping \
[9621c7d]84 app/pkg \
[a3eeef45]85 app/sysinfo \
[3a34852]86 app/sysinst \
[4880210]87 app/mkbd \
[fd37139d]88 app/date \
[bdfdc51c]89 app/vcalc \
[6d5e378]90 app/vdemo \
[3e896e1]91 app/viewer \
[6d5e378]92 app/vlaunch \
93 app/vterm \
[66366470]94 app/df \
[a6bdccc]95 app/wavplay \
96 app/websrv \
[864762a]97 app/wifi_supplicant \
[a6bdccc]98 srv/audio/hound \
[d3a8e47]99 srv/clipboard \
[32d96e1]100 srv/locsrv \
[1f2dd20]101 srv/logger \
[0caa075e]102 srv/klog \
[e4c4247]103 srv/devman \
[b3d513f]104 srv/loader \
[695b6ff]105 srv/net/dhcp \
[31e9fe0]106 srv/net/dnsrsrv \
[69a93df7]107 srv/net/ethip \
[b4ec1ea]108 srv/net/inetsrv \
[606c369]109 srv/net/loopip \
[7af0cc5]110 srv/net/nconfsrv \
[2093fbe]111 srv/net/slip \
[69a93df7]112 srv/net/tcp \
113 srv/net/udp \
[b3d513f]114 srv/ns \
[a074b4f]115 srv/taskmon \
[b3d513f]116 srv/vfs \
[9904eb90]117 srv/bd/sata_bd \
[2a18193c]118 srv/bd/file_bd \
[e7645de]119 srv/bd/rd \
[1356f85a]120 srv/bd/vbd \
[db9aa04]121 srv/fs/exfat \
[48e3190]122 srv/fs/udf \
[c0cdcaf]123 srv/fs/fat \
[a26895d]124 srv/fs/cdfs \
[d5cdffe]125 srv/fs/tmpfs \
[7a46bfe]126 srv/fs/mfs \
[15f3c3f]127 srv/fs/locfs \
[d3a9ae74]128 srv/fs/ext4fs \
[bfcde8d]129 srv/volsrv \
[6d5e378]130 srv/hid/compositor \
[c6f08726]131 srv/hid/console \
[527298a]132 srv/hid/s3c24xx_ts \
[f66ca57f]133 srv/hid/isdv4_tablet \
[5f88293]134 srv/hid/input \
[6d5e378]135 srv/hid/output \
[21a9869]136 srv/hid/remcons \
[a9b5b5f]137 srv/hw/char/s3c24xx_uart \
[bd0e6a1]138 srv/hid/rfb \
[57914494]139 srv/test/chardev-test \
[b229062]140 drv/audio/hdaudio \
[2fc487f]141 drv/audio/sb16 \
[2a37b9f]142 drv/root/root \
143 drv/root/virt \
[9904eb90]144 drv/block/ahci \
[66cb7a2]145 drv/block/ata_bd \
[f2e78b0]146 drv/block/ddisk \
[53b9f2c]147 drv/block/usbmast \
[e27e36e]148 drv/bus/adb/cuda_adb \
[4c363fa2]149 drv/bus/isa \
150 drv/bus/pci/pciintel \
[5203e256]151 drv/bus/usb/ehci \
152 drv/bus/usb/ohci \
153 drv/bus/usb/uhci \
[b7e1458]154 drv/bus/usb/usbdiag \
[5203e256]155 drv/bus/usb/usbflbk \
156 drv/bus/usb/usbhub \
157 drv/bus/usb/usbmid \
[00d7e1b]158 drv/bus/usb/vhc \
[5119d34]159 drv/bus/usb/xhci \
[4c363fa2]160 drv/char/i8042 \
[f3365b6]161 drv/char/msim-con \
[4c363fa2]162 drv/char/ns8250 \
163 drv/char/pl050 \
[6d15572]164 drv/char/ski-con \
[7aa94304]165 drv/char/sun4v-con \
[4c363fa2]166 drv/fb/amdm37x_dispc \
167 drv/fb/kfb \
[a2afd8f]168 drv/hid/adb-kbd \
169 drv/hid/adb-mouse \
[d420b22]170 drv/hid/atkbd \
171 drv/hid/ps2mouse \
[53b9f2c]172 drv/hid/usbhid \
[d420b22]173 drv/hid/xtkbd \
[b446b02]174 drv/intctl/apic \
175 drv/intctl/i8259 \
[a416d070]176 drv/intctl/icp-ic \
[be1b1e68]177 drv/intctl/obio \
[9916841]178 drv/nic/ne2k \
[f0b74b2]179 drv/nic/e1k \
[fef725d]180 drv/nic/rtl8139 \
[312e5ff]181 drv/nic/rtl8169 \
[864762a]182 drv/nic/ar9271 \
[4c363fa2]183 drv/platform/amdm37x \
184 drv/platform/icp \
185 drv/platform/mac \
186 drv/platform/malta \
187 drv/platform/msim \
188 drv/platform/pc \
[6d15572]189 drv/platform/ski \
[7aa94304]190 drv/platform/sun4v \
[53b9f2c]191 drv/test/test1 \
192 drv/test/test2 \
193 drv/test/test3 \
[4c363fa2]194 drv/time/cmos-rtc
[3a2f8aa]195
[4c363fa2]196## sun4u driver won't compile on 32-bit targets
[3e5a814]197ifeq ($(UARCH),sparc64)
[42742c5a]198 DIRS += \
[4c363fa2]199 drv/platform/sun4u
[09a0a8f0]200endif
201
[7c4b26c]202## Dynamic linking tests
203#
204ifeq ($(CONFIG_BUILD_SHARED_LIBS),y)
205 DIRS += \
206 app/dltest \
207 app/dltests
208endif
209
[1b1164e8]210## System libraries
211#
212
[4f674d7]213BASE_LIBS = \
214 lib/c \
215 lib/softint \
216 lib/softfloat
217
[e035612]218LIBS = \
[63f8966]219 lib/fs \
220 lib/block \
[1dcc0b9]221 lib/crypto \
[36a75a2]222 lib/clui \
[9182e86f]223 lib/dltest \
[e96047c]224 lib/fdisk \
[22cf42d9]225 lib/fmtutil \
[0feaae4]226 lib/scsi \
[a047aaa]227 lib/compress \
[c47e1a8]228 lib/drv \
[6d5e378]229 lib/graph \
230 lib/gui \
[a6bdccc]231 lib/hound \
[d7b7f5e]232 lib/http \
[6d5e378]233 lib/softrend \
234 lib/draw \
[1356f85a]235 lib/label \
[8620b2f]236 lib/math \
[cecba66e]237 lib/minix \
[2989c7e]238 lib/nettl \
[00d7e1b]239 lib/nic \
[eb91db7]240 lib/ext4 \
[7e69e0e]241 lib/trackmod \
[d7b7f5e]242 lib/uri \
[8d6c1f1]243 lib/usb \
244 lib/usbhost \
245 lib/usbdev \
246 lib/usbhid \
[2af29ed]247 lib/usbvirt \
[ea6c838]248 lib/pcm \
[865b981]249 lib/pcut \
[681a985]250 lib/bithenge \
[d3a92c87]251 lib/posix \
[8a64320e]252 lib/ieee80211
[e035612]253
[4f674d7]254BASE_BUILDS := $(addsuffix .build,$(BASE_LIBS))
255BUILDS := $(addsuffix .build,$(DIRS) $(LIBS))
256BUILDS_TESTS := $(addsuffix .build-test,$(DIRS) $(LIBS) $(BASE_LIBS))
257DEPS = $(addsuffix /deps.mk,$(DIRS) $(LIBS))
258CLEANS := $(addsuffix .clean,$(DIRS) $(LIBS) $(BASE_LIBS))
[1b1164e8]259
[2660ee3]260.PHONY: all $(BASE_BUILDS) $(BUILDS) $(BUILDS_TESTS) $(CLEANS) clean export
[c2ee1c5c]261
[01579ad]262all: $(BUILDS) $(BUILDS_TESTS)
263
[4f674d7]264$(BUILDS_TESTS): $(BASE_BUILDS) $(BUILDS)
[e540bc87]265 $(MAKE) -r -C $(basename $@) all-test PRECHECK=$(PRECHECK)
[c2ee1c5c]266
[2660ee3]267export: lib/posix.build lib/math.build lib/clui.build
268 $(MAKE) -r -C lib/posix export EXPORT_DIR=$(EXPORT_DIR)
269
[25b0e6a]270clean: $(CLEANS)
[68825c3]271 find lib app drv srv -name '*.o' -follow -exec rm \{\} \;
272 find lib app drv srv -name '*.lo' -follow -exec rm \{\} \;
273 find lib app drv srv -name '*.d' -follow -exec rm \{\} \;
[c2ee1c5c]274
[25b0e6a]275$(CLEANS):
[7654f3e]276 -$(MAKE) -r -C $(basename $@) fasterclean
[c2ee1c5c]277
[4f674d7]278$(BASE_BUILDS) $(BUILDS):
[e540bc87]279 $(MAKE) -r -C $(basename $@) all PRECHECK=$(PRECHECK)
[14f1db0]280
[4f674d7]281$(DEPS): %/deps.mk: %/Makefile
282 $(MAKE) -r -C $(@D) deps.mk SELF_TARGET="$(@D).build"
[e035612]283
[4f674d7]284# Special case for base libraries.
285lib/c.build: lib/softfloat.build lib/softint.build
286
287$(BUILDS): $(BASE_BUILDS)
288
289-include $(DEPS)
Note: See TracBrowser for help on using the repository browser.