summaryrefslogtreecommitdiffstats
path: root/sesman/Makefile
blob: 9d925ee102780fccb4d80905f8bdc5a5f16f22ab (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
# sesman makefile

SESMANOBJ = sesman.o config.o sig.o session.o env.o \
            os_calls.o d3des.o list.o file.o log.o access.o \
            scp.o scp_v0.o scp_v1.o scp_v1_mng.o thread.o lock.o

CFGDIR = /etc/xrdp
PIDDIR = /var/run
LIBDIR = /usr/local/lib/xrdp
SBINDIR = /usr/local/sbin

DEFINES = -DSESMAN_CFG_FILE=\"$(CFGDIR)/sesman.ini\" \
          -DSESMAN_PID_FILE=\"$(PIDDIR)/xrdp-sesman.pid\" -DDEBUG

CFLAGS = -Wall -O2 -I../common -I/usr/include/nptl -I./libscp $(DEFINES)
LDFLAGS = -L/usr/gnu/lib -L/usr/lib/nptl -L./libscp -Wl,-rpath,$(LIBDIR) -lpthread -ldl -lscp
C_OS_FLAGS = $(CFLAGS) -c
CC = gcc

all: libscp_ pam_base xrdp-sessvc_ tools_

nopam: libscp_ no_pam_base xrdp-sessvc_ tools_

pamuserpass: libscp_ pam_userpass_base xrdp-sessvc_ tools

kerberos: libscp_ kerberos_base xrdp-sessvc_ tools

pam_base: $(SESMANOBJ) verify_user_pam.o
	$(CC) $(LDFLAGS) -o xrdp-sesman $(SESMANOBJ) verify_user_pam.o -lpam

no_pam_base: $(SESMANOBJ) verify_user.o
	make -C libscp
	$(CC) $(LDFLAGS) -o xrdp-sesman $(SESMANOBJ) verify_user.o -lcrypt

pam_userpass_base: $(SESMANOBJ) verify_user_pam_userpass.o
	$(CC) $(LDFLAGS) -o xrdp-sesman $(SESMANOBJ) verify_user_pam_userpass.o -lpam -lpam_userpass

kerberos_base: $(SESMANOBJ) verify_user_kerberos.o
	$(CC) $(LDFLAGS) -o xrdp-sesman $(SESMANOBJ) verify_user_kerberos.o -lkrb5

xrdp-sessvc_:
	make -C sessvc

tools_:
	make -C tools

libscp_:
	make -C libscp

clean:
	rm -f $(SESMANOBJ) verify_user.o verify_user_pam.o verify_user_pam_userpass.o verify_user_kerberos.o xrdp-sesman
	make -C tools clean
	make -C libscp clean
	make -C sessvc clean

install:
	install xrdp-sesman $(SBINDIR)/xrdp-sesman
	install startwm.sh $(CFGDIR)/startwm.sh
	install sesman.ini $(CFGDIR)/sesman.ini
	make -C tools install
	make -C libscp install
	make -C sessvc install

os_calls.o: ../common/os_calls.c
	$(CC) $(C_OS_FLAGS) ../common/os_calls.c

d3des.o: ../common/d3des.c
	$(CC) $(C_OS_FLAGS) ../common/d3des.c

list.o: ../common/list.c
	$(CC) $(C_OS_FLAGS) ../common/list.c

file.o: ../common/file.c
	$(CC) $(C_OS_FLAGS) ../common/file.c

log.o: ../common/log.c
	$(CC) $(C_OS_FLAGS) -DLOG_ENABLE_THREAD ../common/log.c