diff --git a/make/rules.mk b/make/rules.mk index daaf2c1e..aa4628ff 100644 --- a/make/rules.mk +++ b/make/rules.mk @@ -76,6 +76,9 @@ $(TOPDIR)/bin/%.sh: %.sh %.o: %.c $(CC) $(CFLAGS) -c $< +%.o: %.S + $(CC) $(CFLAGS) -c $< + timers_%.h: %.h $(GENERATE_FUNC_TIMERS) sh $(GENERATE_FUNC_TIMERS) $< $@ @@ -96,6 +99,19 @@ endif mkdir -p $(BUILD_BINDIR) install -m 755 $@ $(BUILD_BINDIR) +ifeq ($(USE_PROJECT_LIB),true) + ifeq ($(LIBTYPE),shared) + $(PLUGIN) $(PLUGIN_BIN): $(OBJ) $(LIB_SO) + else + $(PLUGIN) $(PLUGIN_BIN): $(OBJ) $(LIB_A) + endif +else + $(PLUGIN) $(PLUGIN_BIN): $(OBJ) +endif + $(CC) -shared $(sort $(OBJ)) $(LDFLAGS) -o $@ + mkdir -p $(BUILD_BINDIR) + install -m 755 $@ $(BUILD_BINDIR) + $(LIBS): make -$(MAKEFLAGS) -C $(LIBDIR) all @@ -211,7 +227,7 @@ doneclean: rm -rf *.done $(PREREQ_DONE) execlean: allclean objclean textclean - rm -rf $(EXE) + rm -rf $(EXE) $(PLUGIN) distclean: clean objclean textclean tmpclean vcdistclean profclean timerclean rm -rf $(CLEAN) $(DISTCLEAN) $(AC_FILES)