diff --git a/make/rules.mk b/make/rules.mk index 00cbb12f..b7ebd56b 100644 --- a/make/rules.mk +++ b/make/rules.mk @@ -6,7 +6,7 @@ # -- standard targets all: install: all -clean: +clean: tmpclean distclean: clean .PHONY: all install clean distclean %.this @@ -67,7 +67,7 @@ doneclean: execlean: allclean objclean runclean textclean rm -rf $(EXE) $(PLUGIN) -distclean: clean objclean textclean tmpclean vcdistclean profclean timerclean varclean +distclean: clean objclean textclean vcdistclean profclean timerclean varclean localclean: $(LOCAL_CLEAN) rm -rf $(CLEAN) @@ -158,6 +158,22 @@ trace-marks: cp $$f.rep $$f ;\ done +ifneq ($(TARGET),mingw) +ldd: +ifneq ($(wildcard *.o),) + @echo "======= objects:" + @for o in *.o; do echo "------- $$o"; ldd $$o; done +endif +ifneq ($(wildcard *.so),) + @echo "======= libraries:" + @for o in *.so; do echo "------- $$o"; ldd $$o; done +endif +ifneq ($(EXE),) + @echo "======= executables:" + @for o in $(EXE); do echo "------- $$o"; ldd $$o; done +endif +endif + # -- special built-in targets .PRECIOUS: $(LOCAL_H) @@ -181,7 +197,7 @@ strip.done: $(EXE_ALL) $(CC) -M $(CPPFLAGS) $(DEPEND_CPPFLAGS) $< -o $@ ifeq ($(LIBTYPE),shared) -$(SO_PREFIX)%.so: %.o # $(LIB_SO) +$(SO_PREFIX)%.so: %.o $(LD) -shared $(LDFLAGS) $^ -o $@ else $(SO_PREFIX)%.so: %.o