Add ceod
[public/pyceo-broken.git] / src / Makefile
1 CFLAGS   := -g3 -O2 -Wall -Werror -DDEBUG
2 LDFLAGS  := -L/opt/csw/lib -Wl,-R/opt/csw/lib -L/usr/local/lib -Wl,-R/usr/local/lib
3 INCLUDES := -I../include $(shell krb5-config --cflags)
4 override LDFLAGS += -std=gnu99 $(INCLUDES)
5 override CFLAGS  += -std=gnu99 $(INCLUDES)
6
7 DESTDIR :=
8 PREFIX  := /usr/local
9
10 BIN_PROGS := addmember addclub zfsaddhomedir ceod
11 EXT_PROGS := config-test
12
13 LIBCEO_OBJECTS := common.o addhomedir.o
14 LIBCEO_LDFLAGS :=
15 LIBCEO_PROGS   := addmember addclub
16 LDAP_OBJECTS   := ldap.o
17 LDAP_LDFLAGS   := -lldap
18 LDAP_PROGS     := addmember addclub
19 KRB5_OBJECTS   := krb5.o kadm.o
20 KRB5_LDFLAGS   := $(shell krb5-config --libs krb5 kadm-client)
21 KRB5_PROGS     := addmember addclub
22 NET_OBJECTS    := net.o gss.o ops.o
23 NET_LDFLAGS    := -lsctp $(shell krb5-config --libs gssapi)
24 NET_PROGS      := ceod
25 CONFIG_OBJECTS := config.o parser.o
26 CONFIG_LDFLAGS :=
27 CONFIG_PROGS   := $(OLDCEO_PROGS) $(LDAP_PROGS) $(KRB5_PROGS) $(NET_PROGS)
28 UTIL_OBJECTS   := util.o strbuf.o
29 UTIL_PROGS     := config-test zfsaddhomedir $(CONFIG_PROGS)
30
31 all: $(BIN_PROGS) $(LIB_PROGS) $(EXT_PROGS)
32
33 clean:
34         rm -f $(ALL_PROGS) $(EXT_PROGS) *.o
35
36 ceod: dmaster.o dslave.o
37         $(CC) $(LDFLAGS) -o $@ $^
38
39 config-test: config-test.o parser.o
40
41 config.o: config.h config-vars.h
42
43 install:
44         install -d $(DESTDIR)$(PREFIX)/bin
45         install addmember addclub $(DESTDIR)$(PREFIX)/bin
46
47 $(NET_PROGS):    LDFLAGS += $(NET_LDFLAGS)
48 $(NET_PROGS):    $(NET_OBJECTS)
49 $(LIBCEO_PROGS): LDFLAGS += $(LIBCEO_LDFLAGS)
50 $(LIBCEO_PROGS): $(LIBCEO_OBJECTS)
51 $(LDAP_PROGS):   LDFLAGS += $(LDAP_LDFLAGS)
52 $(LDAP_PROGS):   $(LDAP_OBJECTS)
53 $(KRB5_PROGS):   LDFLAGS += $(KRB5_LDFLAGS)
54 $(KRB5_PROGS):   $(KRB5_OBJECTS)
55 $(CONFIG_PROGS): LDFLAGS += $(CONFIG_LDFLAGS)
56 $(CONFIG_PROGS): $(CONFIG_OBJECTS)
57 $(UTIL_PROGS):   LDFLAGS += $(UTIL_LDFLAGS)
58 $(UTIL_PROGS):   $(UTIL_OBJECTS)
59
60 .PHONY: clean all
61 .SECONDARY: zfsaddhomedir.o addmember.o addclub.o