diff --git a/make/lo.mk b/make/lo.mk index 34fc50f0..01b23b8e 100644 --- a/make/lo.mk +++ b/make/lo.mk @@ -32,8 +32,8 @@ clean: clean.lo clean.lo: profclean rm -f $(filter-out $(CPP_PREFIX)%.cpp,$(wildcard *.o *.cpp *.so *.done *.dll)) -$(SO_PREFIX)%.so $(SO_PREFIX)%.dll: %.o - $(CPP) -shared $^ $(LDFLAGS) $(wildcard $(TOOLS_DIR)/$(CPP_PREFIX)$*.o) -o $@ +$(SO_PREFIX)%.so $(SO_PREFIX)%.dll: %.o $(LOADABLE_OBJS_O) + $(CPP) $< $(filter $(CPP_PREFIX)$*%, $(LOADABLE_OBJS_O)) -shared $(LDFLAGS) -o $@ %.cpp: $(TOOLS_DIR)/$(CPP_PREFIX)%.h echo -e "#include \"$<\"\n$(LOADABLE_OBJ_HOOK)($(CPP_PREFIX)$*);\n" > $@