1# Makefile.in for Load Balancer
2# $OpenLDAP$
3## This work is part of OpenLDAP Software <http://www.openldap.org/>.
4##
5## Copyright 1998-2021 The OpenLDAP Foundation.
6## All rights reserved.
7##
8## Redistribution and use in source and binary forms, with or without
9## modification, are permitted only as authorized by the OpenLDAP
10## Public License.
11##
12## A copy of this license is available in the file LICENSE in the
13## top-level directory of the distribution or, alternatively, at
14## <http://www.OpenLDAP.org/license.html>.
15
16PROGRAMS = lloadd
17XPROGRAMS = slloadd
18
19XSRCS	= version.c
20
21NT_SRCS = ../slapd/nt_svc.c
22NT_OBJS = ../slapd/nt_svc.o ../../libraries/liblutil/slapdmsg.res
23
24SRCS	+= main.c value.c \
25		  ../slapd/ch_malloc.c ../slapd/logging.c ../slapd/proxyp.c \
26		  ../slapd/sl_malloc.c ../slapd/user.c ../slapd/verbs.c
27
28OBJS	= $(patsubst %.c,%.o,$(SRCS)) $(@PLAT@_OBJS)
29
30BUILD_OPT = "--enable-balancer"
31BUILD_SRV = @BUILD_BALANCER@
32
33all-local-srv: 	$(PROGRAMS) all-cffiles
34
35# $(LTHREAD_LIBS) must be last!
36XLIBS = $(LLOADD_L)
37XXLIBS = $(LLOADD_LIBS) $(SECURITY_LIBS) $(LUTIL_LIBS) $(SYSTEMD_LIBS)
38XXXLIBS = $(LTHREAD_LIBS)
39
40NT_DEPENDS = slapd.exp
41NT_OBJECTS = slapd.exp symdummy.o $(LLOADD_OBJS) version.o
42
43UNIX_DEPENDS = version.o $(LLOADD_L)
44UNIX_OBJECTS = $(OBJS) version.o
45
46LLOADD_DEPENDS = $(@PLAT@_DEPENDS)
47LLOADD_OBJECTS = $(@PLAT@_OBJECTS)
48
49
50lloadd:	$(LLOADD_DEPENDS) version.o
51	$(LTLINK) -o $@ $(OBJS) version.o $(LIBS)
52
53slloadd:	version.o
54	$(LTLINK) -static -o $@ $(OBJS) version.o $(LIBS)
55
56version.c: Makefile
57	@-$(RM) $@
58	$(MKVERSION) -s -n Versionstr lloadd > $@
59
60version.o: version.c $(OBJS) $(LLOADD_L)
61
62all-cffiles:
63	@if test -n "$(systemdsystemunitdir)"; then \
64		$(SED) -e "s;%LIBEXECDIR%;$(libexecdir);" \
65			$(srcdir)/lloadd.service > lloadd.service.tmp ; \
66	fi
67	touch all-cffiles
68
69clean-local-srv: FORCE
70	$(RM) *.tmp all-cffiles
71
72install-local-srv: install-lloadd install-conf
73
74install-lloadd: FORCE
75	-$(MKDIR) $(DESTDIR)$(libexecdir)
76	@-$(INSTALL) -m 700 -d $(DESTDIR)$(localstatedir)/openldap-lloadd
77	@(								\
78	    for prg in $(PROGRAMS); do					\
79		$(LTINSTALL) $(INSTALLFLAGS) $(STRIP_OPTS) -m 755 $$prg$(EXEEXT)	\
80		    $(DESTDIR)$(libexecdir);				\
81	    done							\
82	)
83
84install-conf: FORCE
85	@-$(MKDIR) $(DESTDIR)$(sysconfdir)
86	if test -n "$(systemdsystemunitdir)" && test ! -f $(DESTDIR)$(systemdsystemunitdir)/lloadd.service; then \
87		$(MKDIR) $(DESTDIR)$(systemdsystemunitdir); \
88		echo "installing lloadd.service in $(systemdsystemunitdir)"; \
89		echo "$(INSTALL) $(INSTALLFLAGS) -m 644 lloadd.service.tmp $(DESTDIR)$(systemdsystemunitdir)/lloadd.service"; \
90		$(INSTALL) $(INSTALLFLAGS) -m 644 lloadd.service.tmp $(DESTDIR)$(systemdsystemunitdir)/lloadd.service; \
91	fi
92