summaryrefslogtreecommitdiff
path: root/boot.backup1/Makefile
blob: 49c1197abe12fed904474bb9f629058e6d9df01a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# Copyright (C) 1993,94,95,96,97,2001 Free Software Foundation, Inc.
# This file is part of the GNU Hurd.
#
# The GNU Hurd is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# The GNU Hurd is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with the GNU Hurd; see the file COPYING.  If not, write to
# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.

dir := boot
makemode := utility

SRCS = mach-crt0.c boot.c ux.c sigvec.S syscall.S \
       boot_script.c userland-boot.c list.c mach_proxy.c
COMMON-OBJS = notifyServer.o ourdeviceServer.o \
       ioServer.o io_replyUser.o device_replyUser.o \
       termServer.o bootstrapServer.o boot_script.o userland-boot.o	\
       ourmach_hostServer.o ourmachServer.o ourmach_portServer.o excServer.o
OBJS = boot.o mach_host_impl.o mach_impl.o mach_port_impl.o \
       exc_impl.o list.o mach_proxy.o $(COMMON-OBJS)
UX-OBJS = mach-crt0.o uxboot.o sigvec.o syscall.o ux.o $(COMMON-OBJS)
LCLHDRS = boot_script.h ux.h util.h
target = boot
io-MIGSFLAGS=-DREPLY_PORTS
DIST_FILES=frank1.ld frankemul.ld
HURDLIBS=store shouldbeinlibc threads ports

include ../Makeconf

#install: /usr/local/bin/uxboot
#
#/usr/local/bin/uxboot: uxboot
#	cp $< $@

all: boot # uxboot

ourmach.defs: mach.defs
	$(CPP) $(CPPFLAGS) -x c $< | sed -e '/inout default_manager : mach_port_make_send_t/s/mach_port_make_send_t/mach_port_copy_send_t/' | sed -e '/out[ 	]*special_port[ 	]*:[ 	]*mach_port_t/s/mach_port_t/mach_port_send_t/' | sed -e '/out[ 	]*child_task[ 	]*:[ 	]*task_t/s/task_t/mach_port_send_t/' | sed -e '/out[ 	]*child_thread[ 	]*:[ 	]*thread_t/s/thread_t/mach_port_send_t/' | sed -e '/subsystem/iserverprefix S_;' > $@

ourmach_host.defs: mach_host.defs
	$(CPP) $(CPPFLAGS) -x c $< | sed -e '/out[ 	]*set[ 	]*:[ 	]*processor_set_t/s/processor_set_t/mach_port_send_t/' | sed -e '/subsystem/iserverprefix S_;' > $@

ourdevice.defs: device.defs
	$(CPP) $(CPPFLAGS) -x c $< | sed -e '/out[ 	]*device[ 	]*:[ 	]*device_t/s/device_t/mach_port_send_t/' > $@

uxboot.o: boot.c
	$(COMPILE.c) -DUX $< -o $@

uxboot.0: $(UX-OBJS) ../libthreads/libthreads.a
	$(LINK.o) -o $@ -static -nostartfiles -Wl,-T -Wl,$(srcdir)/frank1.ld $^
uxboot.1: frankemul.ld uxboot.0
	$(LD) -o $@ -T $^
uxboot: uxboot.1
	-$(OBJCOPY) -S --remove-section=.comment -O a.out-mach3 $< $@