Makefile: In the make import target for kernel build, we must make all objects and populate libapps.a. Application.mk: the PROGIST must be executed unconditionally to support the kernel build.
This commit is contained in:
parent
0d7067936a
commit
3921bbad79
@ -98,7 +98,7 @@ VPATH += :.
|
|||||||
# Targets follow
|
# Targets follow
|
||||||
|
|
||||||
all:: .built
|
all:: .built
|
||||||
.PHONY: clean preconfig depend distclean
|
.PHONY: .proglist clean preconfig depend distclean
|
||||||
.PRECIOUS: $(APPDIR)/libapps$(LIBEXT)
|
.PRECIOUS: $(APPDIR)/libapps$(LIBEXT)
|
||||||
|
|
||||||
ifneq ($(CONFIG_BUILD_LOADABLE),y)
|
ifneq ($(CONFIG_BUILD_LOADABLE),y)
|
||||||
@ -186,13 +186,13 @@ endif
|
|||||||
PROGLIST := $(addprefix $(PROGPRFX),$(PROGNAME))
|
PROGLIST := $(addprefix $(PROGPRFX),$(PROGNAME))
|
||||||
PROGOBJ := $(MAINOBJ)
|
PROGOBJ := $(MAINOBJ)
|
||||||
|
|
||||||
$(PROGLIST): $(MAINOBJ) $(OBJS)
|
.proglist: $(MAINOBJ) $(OBJS)
|
||||||
$(Q) $(LD) $(LDELFFLAGS) $(LDLIBPATH) -o $(firstword $(PROGLIST)) $(ARCHCRT0OBJ) $(firstword $(PROGOBJ)) $(LDLIBS)
|
$(Q) $(LD) $(LDELFFLAGS) $(LDLIBPATH) -o $(firstword $(PROGLIST)) $(ARCHCRT0OBJ) $(firstword $(PROGOBJ)) $(LDLIBS)
|
||||||
$(Q) $(NM) -u $(firstword $(PROGLIST))
|
$(Q) $(NM) -u $(firstword $(PROGLIST))
|
||||||
$(eval PROGLIST=$(filter-out $(firstword $(PROGLIST)),$(PROGLIST)))
|
$(eval PROGLIST=$(filter-out $(firstword $(PROGLIST)),$(PROGLIST)))
|
||||||
$(eval PROGOBJ=$(filter-out $(firstword $(PROGOBJ)),$(PROGOBJ)))
|
$(eval PROGOBJ=$(filter-out $(firstword $(PROGOBJ)),$(PROGOBJ)))
|
||||||
|
|
||||||
install:: $(PROGLIST)
|
install:: .proglist
|
||||||
|
|
||||||
else
|
else
|
||||||
install::
|
install::
|
||||||
|
44
Makefile
44
Makefile
@ -103,9 +103,12 @@ $(foreach SDIR, $(CONFIGURED_APPS), $(eval $(call SDIR_template,$(SDIR),depend))
|
|||||||
$(foreach SDIR, $(CLEANDIRS), $(eval $(call SDIR_template,$(SDIR),clean)))
|
$(foreach SDIR, $(CLEANDIRS), $(eval $(call SDIR_template,$(SDIR),clean)))
|
||||||
$(foreach SDIR, $(CLEANDIRS), $(eval $(call SDIR_template,$(SDIR),distclean)))
|
$(foreach SDIR, $(CLEANDIRS), $(eval $(call SDIR_template,$(SDIR),distclean)))
|
||||||
|
|
||||||
ifeq ($(CONFIG_BUILD_LOADABLE),)
|
ifeq ($(CONFIG_BUILD_KERNEL),y)
|
||||||
$(BIN): $(foreach SDIR, $(CONFIGURED_APPS), $(SDIR)_all)
|
|
||||||
else
|
.install: $(foreach SDIR, $(CONFIGURED_APPS), $(SDIR)_install)
|
||||||
|
|
||||||
|
install: $(BIN_DIR) .install
|
||||||
|
|
||||||
$(SYMTABSRC): $(foreach SDIR, $(CONFIGURED_APPS), $(SDIR)_all)
|
$(SYMTABSRC): $(foreach SDIR, $(CONFIGURED_APPS), $(SDIR)_all)
|
||||||
$(Q) $(MAKE) install TOPDIR="$(TOPDIR)" APPDIR="$(APPDIR)"
|
$(Q) $(MAKE) install TOPDIR="$(TOPDIR)" APPDIR="$(APPDIR)"
|
||||||
$(Q) $(APPDIR)$(DELIM)tools$(DELIM)mksymtab.sh $(EXE_DIR)$(DELIM)system $(SYMTABSRC)
|
$(Q) $(APPDIR)$(DELIM)tools$(DELIM)mksymtab.sh $(EXE_DIR)$(DELIM)system $(SYMTABSRC)
|
||||||
@ -123,8 +126,41 @@ ifeq ($(WINTOOL),y)
|
|||||||
else
|
else
|
||||||
$(call ARCHIVE, $(BIN), $^)
|
$(call ARCHIVE, $(BIN), $^)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
$(BIN_DIR):
|
||||||
|
$(Q) mkdir -p $(BIN_DIR)
|
||||||
|
|
||||||
|
.import: $(BIN_DIR) $(SYMTABSRC) $(BIN)
|
||||||
|
|
||||||
|
import:
|
||||||
|
$(Q) $(MAKE) .import TOPDIR="$(APPDIR)$(DELIM)import"
|
||||||
|
|
||||||
|
else
|
||||||
|
ifeq ($(CONFIG_BUILD_LOADABLE),)
|
||||||
|
|
||||||
|
$(BIN): $(foreach SDIR, $(CONFIGURED_APPS), $(SDIR)_all)
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
$(SYMTABSRC): $(foreach SDIR, $(CONFIGURED_APPS), $(SDIR)_all)
|
||||||
|
$(Q) $(MAKE) install TOPDIR="$(TOPDIR)" APPDIR="$(APPDIR)"
|
||||||
|
$(Q) $(APPDIR)$(DELIM)tools$(DELIM)mksymtab.sh $(EXE_DIR)$(DELIM)system $(SYMTABSRC)
|
||||||
|
|
||||||
|
$(SYMTABOBJ): %$(OBJEXT): %.c
|
||||||
|
ifeq ($(WINTOOL),y)
|
||||||
|
$(call COMPILE, -fno-lto "${shell cygpath -w $<}", "${shell cygpath -w $@}")
|
||||||
|
else
|
||||||
|
$(call COMPILE, -fno-lto $<, $@)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
$(BIN): $(SYMTABOBJ)
|
||||||
|
ifeq ($(WINTOOL),y)
|
||||||
|
$(call ARCHIVE, $(BIN), "${shell cygpath -w $^}")
|
||||||
|
else
|
||||||
|
$(call ARCHIVE, $(BIN), $^)
|
||||||
|
endif
|
||||||
|
endif # !CONFIG_BUILD_KERNEL && CONFIG_BUILD_LOADABLE
|
||||||
|
|
||||||
.install: $(foreach SDIR, $(CONFIGURED_APPS), $(SDIR)_install)
|
.install: $(foreach SDIR, $(CONFIGURED_APPS), $(SDIR)_install)
|
||||||
|
|
||||||
$(BIN_DIR):
|
$(BIN_DIR):
|
||||||
@ -137,6 +173,8 @@ install: $(BIN_DIR) .install
|
|||||||
import:
|
import:
|
||||||
$(Q) $(MAKE) .import TOPDIR="$(APPDIR)$(DELIM)import"
|
$(Q) $(MAKE) .import TOPDIR="$(APPDIR)$(DELIM)import"
|
||||||
|
|
||||||
|
endif # CONFIG_BUILD_KERNEL
|
||||||
|
|
||||||
dirlinks:
|
dirlinks:
|
||||||
$(Q) $(MAKE) -C platform dirlinks TOPDIR="$(TOPDIR)" APPDIR="$(APPDIR)" BIN_DIR="$(BIN_DIR)"
|
$(Q) $(MAKE) -C platform dirlinks TOPDIR="$(TOPDIR)" APPDIR="$(APPDIR)" BIN_DIR="$(BIN_DIR)"
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user