1 |
# Makefile for libstore |
# Makefile for libstore |
2 |
# |
# |
3 |
# Copyright (C) 1995,96,97,2001 Free Software Foundation, Inc. |
# Copyright (C) 1995,96,97,2001,02 Free Software Foundation, Inc. |
4 |
# Written by Miles Bader <miles@gnu.org> |
# Written by Miles Bader <miles@gnu.org> |
5 |
# |
# |
6 |
# This file is part of the GNU Hurd. |
# This file is part of the GNU Hurd. |
23 |
makemode := library |
makemode := library |
24 |
|
|
25 |
libname = libstore |
libname = libstore |
26 |
SRCS = create.c derive.c make.c rdwr.c set.c device.c file.c stripe.c \ |
SRCS = create.c derive.c make.c rdwr.c set.c \ |
27 |
enc.c encode.c decode.c clone.c argp.c std.c kids.c zero.c flags.c \ |
enc.c encode.c decode.c clone.c argp.c kids.c flags.c \ |
28 |
open.c remap.c xinl.c task.c typed.c copy.c gunzip.c map.c mvol.c \ |
open.c xinl.c typed.c map.c url.c unknown.c \ |
29 |
bunzip2.c part.c nbd.c memobj.c url.c unknown.c |
stripe.c $(filter-out ileave.c concat.c,$(store-types:=.c)) |
30 |
|
|
31 |
|
store-types = \ |
32 |
|
bunzip2 \ |
33 |
|
concat \ |
34 |
|
copy \ |
35 |
|
device \ |
36 |
|
file \ |
37 |
|
gunzip \ |
38 |
|
ileave \ |
39 |
|
memobj \ |
40 |
|
module \ |
41 |
|
mvol \ |
42 |
|
nbd \ |
43 |
|
remap \ |
44 |
|
task \ |
45 |
|
zero |
46 |
|
|
47 |
|
libstore.so-LDLIBS += -ldl |
48 |
LCLHDRS=store.h |
LCLHDRS=store.h |
49 |
installhdrs=store.h |
installhdrs=store.h |
50 |
|
|
51 |
HURDLIBS = shouldbeinlibc |
HURDLIBS = shouldbeinlibc |
52 |
UNZIP_OBJS = unzip.o inflate.o util.o do-bunzip2.o |
GUNZIP_OBJS = unzip.o inflate.o util.o |
53 |
OBJS = $(patsubst part.o,parted.o,$(SRCS:.c=.o)) $(UNZIP_OBJS) |
BUNZIP2_OBJS = do-bunzip2.o |
54 |
|
OBJS = $(patsubst part.o,parted.o,$(SRCS:.c=.o)) $(GUNZIP_OBJS) $(BUNZIP2_OBJS) |
55 |
|
DIST_FILES = unzipstore.c |
56 |
|
|
57 |
# Look for zip stuff |
# Look for zip stuff |
58 |
VPATH += $(srcdir)/../exec |
vpath %.c $(srcdir)/../exec |
59 |
CPPFLAGS += -I$(srcdir)/../exec |
CPPFLAGS += -I$(srcdir)/../exec |
60 |
|
|
61 |
include ../Makeconf |
include ../Makeconf |
62 |
|
|
63 |
|
module-CPPFLAGS = -D'STORE_SONAME_SUFFIX=".so.$(hurd-version)"' |
64 |
|
|
65 |
|
libstore_gunzip.so.$(hurd-version): $(GUNZIP_OBJS:.o=_pic.o) |
66 |
|
libstore_bunzip2.so.$(hurd-version): $(BUNZIP2_OBJS:.o=_pic.o) |
67 |
|
|
68 |
ifeq (,$(strip $(PARTED_LIBS))) |
ifeq (,$(strip $(PARTED_LIBS))) |
69 |
# Configure didn't find the Parted libraries, so we have no "part" store type. |
# Configure didn't find the Parted libraries, so we have no "part" store type. |
70 |
|
|
89 |
ln -f $< $@ |
ln -f $< $@ |
90 |
|
|
91 |
endif |
endif |
92 |
|
|
93 |
|
|
94 |
|
libstore_%.so.$(hurd-version): %_pic.o libstore.so |
95 |
|
$(CC) -shared -Wl,-soname=$@ -o $@ \ |
96 |
|
$(rpath) $(CFLAGS) $(LDFLAGS) $(libstore_$*.so-LDFLAGS) $^ |
97 |
|
|
98 |
|
# Each libstore_TYPE.a is in fact an object file script so that `-lstore_TYPE' |
99 |
|
# just has the same effect as `-u store_TYPE_class'. |
100 |
|
$(store-types:%=libstore_%.a): libstore_%.a: $(srcdir)/Makefile |
101 |
|
$(CC) -r -nostdlib -nostartfiles -x c /dev/null \ |
102 |
|
-o $@ -u store_$*_class |
103 |
|
|
104 |
|
# XXX need to install these |
105 |
|
all: $(store-types:%=libstore_%.a) |