equal
deleted
inserted
replaced
32 BIN_PATHS = $(addprefix bin/,$(BIN_NAMES)) |
32 BIN_PATHS = $(addprefix bin/,$(BIN_NAMES)) |
33 |
33 |
34 # modules |
34 # modules |
35 module_objs = $(patsubst src/%.c,obj/%.o,$(wildcard src/$(1)/*.c)) |
35 module_objs = $(patsubst src/%.c,obj/%.o,$(wildcard src/$(1)/*.c)) |
36 |
36 |
37 CORE_OBJS = obj/error.o obj/log.o obj/chain.o |
37 CORE_OBJS = obj/error.o obj/log.o |
38 SOCK_OBJS = obj/sock.o obj/sock_tcp.o |
38 SOCK_OBJS = obj/sock.o obj/sock_tcp.o |
39 SOCK_TEST_OBJS = obj/sock_test.o |
39 SOCK_TEST_OBJS = obj/sock_test.o |
40 SOCK_GNUTLS_OBJS = obj/sock_gnutls.o |
40 SOCK_GNUTLS_OBJS = obj/sock_gnutls.o |
41 LINEPROTO_OBJS = obj/line_proto.o |
41 LINEPROTO_OBJS = obj/line_proto.o |
42 IRC_OBJS = obj/irc_line.o obj/irc_conn.o obj/irc_net.o obj/irc_chan.o obj/irc_cmd.o obj/irc_proto.o obj/irc_client.o |
42 IRC_OBJS = obj/irc_line.o obj/irc_conn.o obj/irc_net.o obj/irc_chan.o obj/chain.o obj/irc_cmd.o obj/irc_proto.o obj/irc_client.o |
43 NEXUS_OBJS = obj/signals.o obj/module.o |
43 NEXUS_OBJS = obj/signals.o obj/module.o |
44 IRC_LOG_OBJS = obj/irc_log.o |
44 IRC_LOG_OBJS = obj/irc_log.o |
45 |
45 |
46 # XXX: not yet there |
46 # XXX: not yet there |
47 #CORE_OBJS = obj/lib/log.o obj/lib/signals.o |
47 #CORE_OBJS = obj/lib/log.o obj/lib/signals.o |
52 # binaries |
52 # binaries |
53 bin/nexus: ${CORE_OBJS} ${SOCK_OBJS} ${SOCK_GNUTLS_OBJS} ${LINEPROTO_OBJS} ${IRC_OBJS} ${IRC_LOG_OBJS} ${NEXUS_OBJS} |
53 bin/nexus: ${CORE_OBJS} ${SOCK_OBJS} ${SOCK_GNUTLS_OBJS} ${LINEPROTO_OBJS} ${IRC_OBJS} ${IRC_LOG_OBJS} ${NEXUS_OBJS} |
54 |
54 |
55 bin/test: ${CORE_OBJS} ${SOCK_OBJS} ${SOCK_GNUTLS_OBJS} ${SOCK_TEST_OBJS} ${LINEPROTO_OBJS} ${IRC_OBJS} |
55 bin/test: ${CORE_OBJS} ${SOCK_OBJS} ${SOCK_GNUTLS_OBJS} ${SOCK_TEST_OBJS} ${LINEPROTO_OBJS} ${IRC_OBJS} |
56 |
56 |
57 modules/irc_log.so: ${CORE_OBJS} ${IRC_OBJS} |
57 modules/irc_log.so: ${CORE_OBJS} |
58 |
58 |
59 # computed |
59 # computed |
60 CFLAGS = ${MODE_CFLAGS} ${FIXED_CFLAGS} ${LIBEVENT_CFLAGS} ${GNUTLS_CFLAGS} ${EVSQL_CFLAGS} |
60 CFLAGS = ${MODE_CFLAGS} ${FIXED_CFLAGS} ${LIBEVENT_CFLAGS} ${GNUTLS_CFLAGS} ${EVSQL_CFLAGS} -fpic |
61 LDFLAGS = ${LIBEVENT_LDFLAGS} ${GNUTLS_LDFLAGS} ${EVSQL_LDFLAGS} |
61 LDFLAGS = ${LIBEVENT_LDFLAGS} ${GNUTLS_LDFLAGS} ${EVSQL_LDFLAGS} -Wl,--export-dynamic |
62 |
62 |
63 # XXX: is this valid? |
63 # XXX: is this valid? |
64 CPPFLAGS = ${CFLAGS} |
64 CPPFLAGS = ${CFLAGS} |
65 |
65 |
66 # names for src/ |
66 # names for src/ |
90 include $(SRC_NAMES:%.c=build/deps/%.d) |
90 include $(SRC_NAMES:%.c=build/deps/%.d) |
91 |
91 |
92 |
92 |
93 # XXX: removed $(CPPFLAGS) |
93 # XXX: removed $(CPPFLAGS) |
94 obj/%.o : src/%.c |
94 obj/%.o : src/%.c |
95 $(CC) -fpic -c $(CFLAGS) $< -o $@ |
95 $(CC) -c $(CFLAGS) $< -o $@ |
96 |
96 |
97 bin/% : obj/%.o |
97 bin/% : obj/%.o |
98 $(CC) $(LDFLAGS) $+ $(LOADLIBES) $(LDLIBS) -o $@ |
98 $(CC) $(LDFLAGS) $+ $(LOADLIBES) $(LDLIBS) -o $@ |
99 |
99 |
100 modules/%.so : obj/%.o |
100 modules/%.so : obj/%.o |
101 $(CC) -shared -Wl,-soname,$(basename %@) -o $@ $+ -lc |
101 $(CC) -shared -Wl,-soname,$(notdir $@) -o $@ $+ -lc |
102 |
102 |
103 # documentation |
103 # documentation |
104 DOXYGEN_PATH = /usr/bin/doxygen |
104 DOXYGEN_PATH = /usr/bin/doxygen |
105 DOXYGEN_CONF_PATH = doc/doxygen.conf |
105 DOXYGEN_CONF_PATH = doc/doxygen.conf |
106 DOXYGEN_OUTPUT_FILE = doc/html/index.html |
106 DOXYGEN_OUTPUT_FILE = doc/html/index.html |