--- a/Makefile +++ b/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) --- a/wvrules-posix.mk +++ b/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)