diff --git a/Makefile b/Makefile index f4615bec2..7f95e0b11 100644 --- a/Makefile +++ b/Makefile @@ -523,9 +523,14 @@ $(SHARED3): $(SHARED4) ln -fs $(SHARED4) $(SHARED3) endif -$(SHARED4): - $(CXX) $(PLATFORM_SHARED_LDFLAGS)$(SHARED3) $(CXXFLAGS) $(PLATFORM_SHARED_CFLAGS) $(LIB_SOURCES) $(TOOL_LIB_SOURCES) \ - $(LDFLAGS) -o $@ +shared_libobjects = $(patsubst %,shared-objects/%,$(LIBOBJECTS)) +CLEAN_FILES += shared-objects + +$(shared_libobjects): shared-objects/%.o: %.cc + $(AM_V_CC)mkdir -p $(@D) && $(CXX) $(CXXFLAGS) $(PLATFORM_SHARED_CFLAGS) -c $< -o $@ + +$(SHARED4): $(shared_libobjects) + $(CXX) $(PLATFORM_SHARED_LDFLAGS)$(SHARED3) $(CXXFLAGS) $(PLATFORM_SHARED_CFLAGS) $(shared_libobjects) $(LDFLAGS) -o $@ endif # PLATFORM_SHARED_EXT