summaryrefslogtreecommitdiff
path: root/ufs/Makefile
blob: 44ae79b691601e05ba1f862cab42db717fe64ae2 (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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81

#   Copyright (C) 1994 Free Software Foundation
#
#   This program 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.
#
#   This program 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 this program; if not, write to the Free Software
#   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

dir := ufs

include ../Makeconf

VPATH=.:../machine

SRCS=alloc.c consts.c devio.c dir.c hyper.c inode.c main.c pager.c \
	sizes.c subr.c tables.c 

DIST_FILES=$(SRCS) ufs.h Makefile fs.h dinode.h dir.h ChangeLog

OBJS=$(subst .c,.o,$(SRCS)) exec_server_image.o

#LIBS = $(hurdinst)/lib/libdiskfscombined.a $(libthreads)
LIBS = $(libdiskfs) $(libports) $(libdiskfs) $(libpager) $(libioserver) \
	 $(libfshelp) $(libdiskfs) $(libthreads) $(libports)

LIBPARTS = $(libdiskfs) $(libports) $(libpager) $(libioserver) $(libfshelp)

all: ufs

LDFLAGS=--no-keep-memory -y_hurd_rlimits -y__hurd_rlimits

ufs: $(OBJS) $(LIBS)
	$(link)

exec_server_image.o: ../exec/exec ../mkbootfs/mkbootfs
	rsh $(mighost) -n cd `pwd` \; \
	../mkbootfs/mkbootfs ../exec/exec exec_server_image.o

install: 

clean:
	rm -f *.o ufs
relink:
	rm -f ufs

$(OBJS): ufs.h 
$(OBJS): $(addprefix $(includedir)/hurd/,diskfs.h pager.h ioserver.h \
				         fshelp.h ports.h)
alloc.o: fs.h dinode.h
consts.o: dinode.h
dir.o: dir.h
hyper.o: fs.h
inode.o: dinode.h fs.h
main.o: fs.h
pager.o: fs.h dinode.h
sizes.o: fs.h dinode.h
subr.o: fs.h
tables.o: fs.h

$(hurdinst)/lib/libdiskfscombined.a: $(LIBPARTS)
	-mkdir foo
	cd foo; $(AR) x $(libdiskfs)
	cd foo; $(AR) x $(libports)
	cd foo; $(AR) x $(libpager)
	cd foo; $(AR) x $(libioserver)
	cd foo; $(AR) x $(libfshelp)
	cd foo; $(AR) cr $(hurdinst)/lib/libdiskfscombined.a *
	rm -rf foo
	$(RANLIB) $(hurdinst)/lib/libdiskfscombined.a

$(foreach dir,mkbootfs exec,../$(dir)/%): FORCE
	$(MAKE) -C $(@D) $(@F)