source: mainline/uspace/Makefile@ 5974661

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since 5974661 was 5974661, checked in by Jiří Zárevúcky <zarevucky.jiri@…>, 14 years ago

Add a separate directory for each platform's external.{c,h}. Add mkext utility for generating those to the build.

  • Property mode set to 100644
File size: 4.3 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 = \
[b3d513f]36 app/bdsh \
[32d3ebf]37 app/blkdump \
[423f64f]38 app/bnchmark \
[a376c9e]39 app/cc \
[98a0fd3]40 app/ccom \
[5974661]41 app/ccom/mkext \
[f5c8046]42 app/cpp \
[b3d513f]43 app/edit \
[d5e2763]44 app/ext2info \
[b3d513f]45 app/getterm \
46 app/init \
[1e9f8ab]47 app/kill \
[c4faa0c]48 app/killall \
[b3d513f]49 app/klog \
[8594505]50 app/lsusb \
[dccf721]51 app/mkfat \
[b3d513f]52 app/redir \
[09ababb7]53 app/sbi \
[3d482e0]54 app/stats \
[336db295]55 app/taskdump \
[b3d513f]56 app/tester \
[6b3e7f7f]57 app/testread \
[b3d513f]58 app/tetris \
59 app/trace \
[5c058d50]60 app/top \
[07b9203e]61 app/usbinfo \
[57c7050]62 app/vuhid \
[a79d88d]63 app/netecho \
64 app/nettest1 \
65 app/nettest2 \
66 app/ping \
[f4a2d624]67 app/websrv \
[a3eeef45]68 app/sysinfo \
[4880210]69 app/mkbd \
[b3d513f]70 srv/clip \
71 srv/devmap \
[e4c4247]72 srv/devman \
[b3d513f]73 srv/loader \
74 srv/ns \
[a074b4f]75 srv/taskmon \
[b3d513f]76 srv/vfs \
[f8ef660]77 srv/bd/ata_bd \
[2a18193c]78 srv/bd/file_bd \
[44a53fd]79 srv/bd/gxe_bd \
[e7645de]80 srv/bd/rd \
[975e7e9]81 srv/bd/part/guid_part \
[b3d513f]82 srv/bd/part/mbr_part \
[c0cdcaf]83 srv/fs/fat \
[d5cdffe]84 srv/fs/tmpfs \
[a095d20]85 srv/fs/devfs \
[796c276]86 srv/fs/ext2fs \
[b73c26d]87 srv/hid/adb_mouse \
88 srv/hid/char_mouse \
[527298a]89 srv/hid/s3c24xx_ts \
[b3d513f]90 srv/hid/fb \
91 srv/hid/kbd \
[849ed54]92 srv/hw/char/i8042 \
[a9b5b5f]93 srv/hw/char/s3c24xx_uart \
[f902d36]94 srv/hw/netif/ne2000 \
[14f1db0]95 srv/net/netif/lo \
96 srv/net/il/arp \
97 srv/net/il/ip \
98 srv/net/tl/icmp \
99 srv/net/tl/udp \
100 srv/net/tl/tcp \
101 srv/net/net \
[6f9e7fea]102 drv/root \
[1b2981aa]103 drv/rootvirt \
[c245f16e]104 drv/test1 \
[d362410]105 drv/test2 \
[75608143]106 drv/test3 \
107 drv/ehci_hcd \
108 drv/ohci \
109 drv/uhci_hcd \
110 drv/uhci_rhd \
111 drv/usbflbk \
112 drv/usbhid \
113 drv/usbhub \
114 drv/usbmast \
115 drv/usbmid \
116 drv/usbmouse \
117 drv/vhc
[14f1db0]118
119## Networking
120#
121
[59e9398b]122DIRS += \
123 srv/net/nil/eth \
124 srv/net/nil/nildummy
[1b1164e8]125
126## Platform-specific hardware support
127#
[c2ee1c5c]128
[684f767]129ifneq ($(UARCH),abs32le)
130 DIRS += srv/hid/console
131endif
132
[fcd7053]133ifeq ($(UARCH),amd64)
[acc7ce4]134 DIRS += \
135 drv/rootpc \
136 drv/pciintel \
137 drv/isa \
138 drv/ns8250 \
139 srv/hw/irc/apic \
140 srv/hw/irc/i8259
[5a4c754]141endif
[41f7564]142
[fcd7053]143ifeq ($(UARCH),ia32)
[acc7ce4]144 DIRS += \
145 drv/rootpc \
146 drv/pciintel \
147 drv/isa \
148 drv/ns8250 \
149 srv/hw/irc/apic \
150 srv/hw/irc/i8259
[37458472]151endif
[5a4c754]152
[3a2f8aa]153ifeq ($(UARCH),ppc32)
154 DIRS += srv/hw/bus/cuda_adb
155endif
156
[3e5a814]157ifeq ($(UARCH),sparc64)
[42742c5a]158 DIRS += \
[acc7ce4]159 srv/hw/irc/fhc \
160 srv/hw/irc/obio
[3e5a814]161endif
162
[1b1164e8]163## System libraries
164#
165
[63f8966]166LIBC = lib/c
[e035612]167LIBS = \
[63f8966]168 lib/fs \
169 lib/block \
[36a75a2]170 lib/clui \
[e035612]171 lib/softint \
[e5773c6]172 lib/softfloat \
[c47e1a8]173 lib/drv \
[f63a591d]174 lib/packet \
[3bd76491]175 lib/net \
[8d6c1f1]176 lib/ext2 \
177 lib/usb \
178 lib/usbhost \
179 lib/usbdev \
180 lib/usbhid \
[2af29ed]181 lib/usbvirt \
[2d2b8e6]182 lib/posix
[e035612]183
184LIBC_BUILD = $(addsuffix .build,$(LIBC))
185LIBS_BUILD = $(addsuffix .build,$(LIBS))
[14f1db0]186LIBN_BUILD = $(addsuffix .build,$(LIBN))
187BUILDS := $(addsuffix .build,$(DIRS))
[e035612]188
[14f1db0]189CLEANS := $(addsuffix .clean,$(DIRS)) $(addsuffix .clean,$(LIBN)) $(addsuffix .clean,$(LIBS)) $(addsuffix .clean,$(LIBC))
[1b1164e8]190
[14f1db0]191.PHONY: all $(LIBC_BUILD) $(LIBS_BUILD) $(LIBN_BUILD) $(BUILDS) $(CLEANS) clean
[c2ee1c5c]192
[cc1f8d4]193all: $(BUILDS)
[c2ee1c5c]194
[25b0e6a]195clean: $(CLEANS)
[c2ee1c5c]196
[25b0e6a]197$(CLEANS):
[24d6efc]198 -$(MAKE) -C $(basename $@) clean
[c2ee1c5c]199
[14f1db0]200$(BUILDS): $(LIBC_BUILD) $(LIBS_BUILD) $(LIBN_BUILD)
201 $(MAKE) -C $(basename $@) all PRECHECK=$(PRECHECK)
202
203$(LIBN_BUILD): $(LIBC_BUILD) $(LIBS_BUILD)
[8786aa5]204 $(MAKE) -C $(basename $@) all PRECHECK=$(PRECHECK)
[e035612]205
206$(LIBS_BUILD): $(LIBC_BUILD)
[8786aa5]207 $(MAKE) -C $(basename $@) all PRECHECK=$(PRECHECK)
[e035612]208
209$(LIBC_BUILD):
[8786aa5]210 $(MAKE) -C $(basename $@) all PRECHECK=$(PRECHECK)
Note: See TracBrowser for help on using the repository browser.