blob: d6f7d6e76174e15c677911160b7bd4c15bfa2470 (
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
|
--- Makefile
+++ Makefile
@@ -131,12 +131,19 @@
# libwvstreams: stream/event handling library
#
TARGETS += libwvstreams.so
-TARGETS += crypto/tests/ssltest ipstreams/tests/unixtest
+TARGETS += crypto/tests/ssltest
+crypto/tests/ssltest: $(LIBWVSTREAMS)
+
+TARGETS += ipstreams/tests/unixtest
+ipstreams/tests/unixtest: $(LIBWVSTREAMS)
+
TARGETS += crypto/tests/printcert
+crypto/tests/printcert: $(LIBWVSTREAMS)
ifndef _MACOS
ifneq ("$(with_readline)", "no")
TARGETS += ipstreams/tests/wsd
+ ipstreams/tests/wsd: $(LIBWVSTREAMS)
ipstreams/tests/wsd-LIBS += -lreadline
else
TEST_SKIP_OBJS += ipstreams/tests/wsd
@@ -179,7 +186,11 @@
#
ifneq ("$(with_dbus)", "no")
TARGETS += libwvdbus.so
- TARGETS += dbus/tests/wvdbus dbus/tests/wvdbusd
+ TARGETS += dbus/tests/wvdbus
+ dbus/tests/wvdbus: $(LIBWVDBUS)
+
+ TARGETS += dbus/tests/wvdbusd
+ dbus/tests/wvdbusd: $(LIBWVDBUS)
TESTS += $(call tests_cc,dbus/tests)
libwvdbus_OBJS += $(call objects,dbus)
libwvdbus.so: $(libwvdbus_OBJS) $(LIBWVSTREAMS)
--- wvrules-posix.mk
+++ wvrules-posix.mk
@@ -85,12 +85,15 @@
$(AR) s $1
endef
-CC: FORCE
+CC:
@CC="$(CC)" CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" \
$(WVSTREAMS)/gen-cc CC c
-CXX: FORCE
+CXX:
@CC="$(CXX)" CFLAGS="$(CXXFLAGS)" CPPFLAGS="$(CPPFLAGS)" \
$(WVSTREAMS)/gen-cc CXX cc
+#All files must depend on the above two rules. This is a godawful hack.
+$(shell find -type f '(' -name '*.c' -o -name '*.cc' ')' ): CC CXX
+
wvlink=$(LINK_MSG)$(WVLINK_CC) $(LDFLAGS) $($1-LDFLAGS) -o $1 $(filter %.o %.a %.so, $2) $($1-LIBS) $(XX_LIBS) $(LDLIBS) $(PRELIBS) $(LIBS)
|