1: #
2: # (C) 2011 AITnet - Sofia/Bulgaria - <misho@openbsd-bg.org>
3: # by Michael Pounov <misho@elwix.org>
4: #
5: # $Author: misho $
6: # $Id: Makefile,v 1.2 2012/01/27 15:05:38 misho Exp $
7: #
8: prefix = /usr/local
9: exec_prefix = ${prefix}
10: includedir = ${prefix}/include
11: libdir = ${exec_prefix}/lib
12:
13: AR = ar
14: RANLIB = ranlib
15: CC = gcc
16: MKDEP = mkdep
17:
18: BIN = ../bin
19: INC = ../inc
20: LIB = ../lib
21:
22: LIBS = -laitio -laitcfg -lsqlite3
23: LDADD = -laitmqtt -lpthread -laitsched -laitio -laitcfg -lutil -lcrypto
24:
25: CFLAGS = -I. -I${INC} -I${includedir} -Wall -O2 -fPIC -I/usr/local/include -g -O2
26: LDFLAGS = -L. -L${LIB} -L${libdir} -L/usr/local/lib
27:
28: SRCS = ${MQTTLIB_SRCS} ${MQTTD_SRCS} ${MQTT_SUBS_SRCS} ${MQTT_PUB_SRCS} \
29: ${MQTTPUB_SRCS} ${MQTTACC_SRCS} ${MQTTLOG_SRCS}
30: PROGS = ${LIBA} ${LIBSO} ${MQTTD_PROG} ${MQTT_SUBS_PROG} ${MQTT_PUB_PROG} \
31: ${RTLM_PUB} ${RTLM_ACC} ${RTLM_LOG}
32:
33: MQTTD_SRCS = mqttd.c compile.c dl.c utils.c daemon.c mqttd_calls.c
34: MQTTD_OBJS = mqttd.o compile.o dl.o utils.o daemon.o mqttd_calls.o
35: MQTTD_PROG = mqttd
36:
37: MQTT_SUBS_SRCS = mqtt_subs.c compile.c client.c
38: MQTT_SUBS_OBJS = mqtt_subs.o compile.o client.o
39: MQTT_SUBS_PROG = mqtt_subs
40:
41: MQTT_PUB_SRCS = mqtt_pub.c compile.c client.c
42: MQTT_PUB_OBJS = mqtt_pub.o compile.o client.o
43: MQTT_PUB_PROG = mqtt_pub
44:
45: MQTTLIB_SRCS = aitmqtt.c conn.c pub.c sub.c recv.c
46: MQTTLIB_OBJS = aitmqtt.o conn.o pub.o sub.o recv.o
47: LIBA = libaitmqtt.a
48: LIBSO = libaitmqtt.so
49:
50: MQTTPUB_SRCS = pubmqtt.c pub_schema.c
51: MQTTPUB_OBJS = pubmqtt.o pub_schema.o
52: RTLM_PUB = mqtt_pub.so
53:
54: MQTTACC_SRCS = accmqtt.c acc_schema.c
55: MQTTACC_OBJS = accmqtt.o acc_schema.o
56: RTLM_ACC = mqtt_acc.so
57:
58: MQTTLOG_SRCS = logmqtt.c
59: MQTTLOG_OBJS = logmqtt.o
60: RTLM_LOG = mqtt_log.so
61:
62:
63: all: depend \
64: ${PROGS} \
65:
66: depend:
67: ./compile.sh
68: ${MKDEP} ${CFLAGS} ${SRCS}
69:
70: clean:
71: rm -f *.o .depend compile.c acc_schema.c pub_schema.c *~
72:
73: install:
74:
75: .o: compile.c acc_schema.c pub_schema.c
76: ${CC} -c ${CFLAGS} $<
77:
78: ${LIBA}: ${MQTTLIB_OBJS}
79: ${AR} -rc ${LIB}/$@ ${MQTTLIB_OBJS}
80: ${RANLIB} ${LIB}/$@
81:
82: ${LIBSO}: ${MQTTLIB_OBJS}
83: ${CC} ${LDFLAGS} -shared -nostartfiles -o ${LIB}/$@ -Wl,-x,-soname,$@ ${MQTTLIB_OBJS}
84:
85: ${MQTTD_PROG}: ${MQTTD_OBJS}
86: ${CC} ${LDFLAGS} -o${BIN}/$@ ${MQTTD_OBJS} ${LDADD}
87:
88: ${MQTT_SUBS_PROG}: ${MQTT_SUBS_OBJS}
89: ${CC} ${LDFLAGS} -o${BIN}/$@ ${MQTT_SUBS_OBJS} ${LDADD}
90:
91: ${MQTT_PUB_PROG}: ${MQTT_PUB_OBJS}
92: ${CC} ${LDFLAGS} -o${BIN}/$@ ${MQTT_PUB_OBJS} ${LDADD}
93:
94: ${RTLM_PUB}: ${MQTTPUB_OBJS}
95: ${CC} ${LDFLAGS} -shared -nostartfiles -o ${LIB}/$@ -Wl,-x,-soname,$@ ${MQTTPUB_OBJS} ${LIBS}
96:
97: ${RTLM_ACC}: ${MQTTACC_OBJS}
98: ${CC} ${LDFLAGS} -shared -nostartfiles -o ${LIB}/$@ -Wl,-x,-soname,$@ ${MQTTACC_OBJS} ${LIBS}
99:
100: ${RTLM_LOG}: ${MQTTLOG_OBJS}
101: ${CC} ${LDFLAGS} -shared -nostartfiles -o ${LIB}/$@ -Wl,-x,-soname,$@ ${MQTTLOG_OBJS}
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>