xiaoxiang781216 commented on code in PR #1979:
URL: https://github.com/apache/nuttx-apps/pull/1979#discussion_r1299398047


##########
Application.mk:
##########
@@ -93,6 +93,21 @@ ifneq ($(BUILD_MODULE),y)
   OBJS += $(MAINCOBJ) $(MAINCXXOBJ) $(MAINRUSTOBJ) $(MAINZIGOBJ)
 endif
 
+ifneq ($(PROGNAME),)
+  PROGOBJ := $(MAINCOBJ) $(MAINCXXOBJ) $(MAINRUSTOBJ)
+  PROGNAMELIST := $(PROGNAME)

Review Comment:
   why not use PROGNAME directly?



##########
Application.mk:
##########
@@ -196,38 +211,28 @@ $(MAINCOBJ): %.c$(SUFFIX)$(OBJEXT): %.c
        $(if $(and $(CONFIG_BUILD_LOADABLE),$(CELFFLAGS)), \
                $(call ELFCOMPILE, $<, $@), $(call COMPILE, $<, $@))
 
-PROGLIST := $(wordlist 1,$(words $(MAINCOBJ) $(MAINCXXOBJ) 
$(MAINRUSTOBJ)),$(PROGNAME))
-PROGLIST := $(addprefix $(BINDIR)$(DELIM),$(PROGLIST))
-PROGOBJ := $(MAINCOBJ) $(MAINCXXOBJ) $(MAINRUSTOBJ)
-
 $(PROGLIST): $(MAINCOBJ) $(MAINCXXOBJ) $(MAINRUSTOBJ)
        $(Q) mkdir -p $(BINDIR)
-       $(call ELFLD,$(firstword $(PROGOBJ)),$(call CONVERT_PATH,$(firstword 
$(PROGLIST))))
-       $(Q) chmod +x $(firstword $(PROGLIST))
+       $(call ELFLD,$(ELFPROGKEY_$@),$(call CONVERT_PATH,$@))
+       $(Q) chmod +x $@
 ifneq ($(CONFIG_DEBUG_SYMBOLS),y)
-       $(Q) $(STRIP) $(firstword $(PROGLIST))
+       $(Q) $(STRIP) $@
 endif
-       $(eval PROGLIST=$(filter-out $(firstword $(PROGLIST)),$(PROGLIST)))

Review Comment:
   let's apply the same change to line 262-272. 



##########
Application.mk:
##########
@@ -93,6 +93,21 @@ ifneq ($(BUILD_MODULE),y)
   OBJS += $(MAINCOBJ) $(MAINCXXOBJ) $(MAINRUSTOBJ) $(MAINZIGOBJ)
 endif
 
+ifneq ($(PROGNAME),)
+  PROGOBJ := $(MAINCOBJ) $(MAINCXXOBJ) $(MAINRUSTOBJ)
+  PROGNAMELIST := $(PROGNAME)
+  ifneq ($(words $(PROGOBJ)), $(words $(PROGNAMELIST)))
+    $(warning "program names $(words $(PROGNAMELIST)) does not match mainsrcs 
$(words $(PROGOBJ)) in $(CWD)")

Review Comment:
   why reference $(CWD)?



##########
Application.mk:
##########
@@ -93,6 +93,21 @@ ifneq ($(BUILD_MODULE),y)
   OBJS += $(MAINCOBJ) $(MAINCXXOBJ) $(MAINRUSTOBJ) $(MAINZIGOBJ)
 endif
 
+ifneq ($(PROGNAME),)
+  PROGOBJ := $(MAINCOBJ) $(MAINCXXOBJ) $(MAINRUSTOBJ)
+  PROGNAMELIST := $(PROGNAME)
+  ifneq ($(words $(PROGOBJ)), $(words $(PROGNAMELIST)))
+    $(warning "program names $(words $(PROGNAMELIST)) does not match mainsrcs 
$(words $(PROGOBJ)) in $(CWD)")
+  endif
+  PROGLIST := $(addprefix $(BINDIR)$(DELIM),$(PROGNAME))
+  NLIST := $(shell seq 1 $(words $(PROGOBJ)))
+  $(foreach IDX, $(NLIST), \
+    $(eval PROGKEY_$(word $(IDX),$(PROGOBJ)) := $(word 
$(IDX),$(PROGNAMELIST))) \
+    $(eval ELFPROGKEY_$(word $(IDX),$(PROGLIST)) := $(word $(IDX),$(PROGOBJ))) 
\
+  )
+  else

Review Comment:
   why add else



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to