This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

GNU Make + C166

Good day!

Can I get from C166/EC166 compilers information about all nested includes such as -M, -MM, -MD, -MMD keys for GCC compiler?

If not, I can only use make for rebuild target?

Parents
  • Compile (CHECK TABS!):

    $(OUTPUTDIR)/%.o : $(SOURCEDIR/%.c
      $(ECHO) "Compiling  $< to"
      $(ECHO) "           $@"
    
      $(ECHO) "$(call CONVERTPATH,$<)"                     > $(CMD_FILE)
      $(ECHO) "OBJECT($(call CONVERTPATH,$@))"            >> $(CMD_FILE)
      $(ECHO) "PREPRINT($(call CONVERTPATH,$(@:.o=.i)))"  >> $(CMD_FILE)
      $(ECHO) "PRINT($(call CONVERTPATH,$(@:.o=.lst)))"   >> $(CMD_FILE)
      $(ECHO) "$(CCINCLUDES)"                             >> $(CMD_FILE)
      $(ECHO) "$(CCFLAGS)"                                >> $(CMD_FILE)
      $(ECHO) "$(CCDEFINES)"                              >> $(CMD_FILE)
    
      $(CC) @$(CMD_FILE) $(CCLOGFILE)
    
      $(ECHO) "Generating dependencies for $<..."
    
      $(MAKEDEPEND) $(call CONVERTPATH,$(@:.o=.i)) $@ > $(@:.o=.dep)
    
    

    Link (CHECK TABS):

    $(OUTPUTDIR)/APP.abs : $(OBJECTS) $(LINKERFILE)
    
      $(ECHO) "Linking the following files to $@"
      $(QUIET)FOR %%f in ( $(OBJECTS) ) DO $(ECHO) "           %%f"
    
      $(ECHO) "$(call CONVERT_L166OBJECTS,$(OBJECTS))"      > $(CMD_FILE)
      $(ECHO) "TO $(call CONVERTPATH,$@)"                  >> $(CMD_FILE)
      $(ECHO) "$(LDFLAGS)"                                 >> $(CMD_FILE)
    
      $(CP) $(call CONVERTPATH,$(CMD_FILE)) + $(call CONVERTPATH,$(LINKERFILE)) $(call CONVERTPATH,$(CMD_FILE)) >NUL
    
      $(LD) @$(CMD_FILE) $(LDLOGFILE)
    

    xxLOGFILE = "> cc.log" or "> ld.log" or something (optional)
    CONVERPATH does \ to /
    LINKERFILE = fixed part of linker command file (memory map, etc.)

Reply
  • Compile (CHECK TABS!):

    $(OUTPUTDIR)/%.o : $(SOURCEDIR/%.c
      $(ECHO) "Compiling  $< to"
      $(ECHO) "           $@"
    
      $(ECHO) "$(call CONVERTPATH,$<)"                     > $(CMD_FILE)
      $(ECHO) "OBJECT($(call CONVERTPATH,$@))"            >> $(CMD_FILE)
      $(ECHO) "PREPRINT($(call CONVERTPATH,$(@:.o=.i)))"  >> $(CMD_FILE)
      $(ECHO) "PRINT($(call CONVERTPATH,$(@:.o=.lst)))"   >> $(CMD_FILE)
      $(ECHO) "$(CCINCLUDES)"                             >> $(CMD_FILE)
      $(ECHO) "$(CCFLAGS)"                                >> $(CMD_FILE)
      $(ECHO) "$(CCDEFINES)"                              >> $(CMD_FILE)
    
      $(CC) @$(CMD_FILE) $(CCLOGFILE)
    
      $(ECHO) "Generating dependencies for $<..."
    
      $(MAKEDEPEND) $(call CONVERTPATH,$(@:.o=.i)) $@ > $(@:.o=.dep)
    
    

    Link (CHECK TABS):

    $(OUTPUTDIR)/APP.abs : $(OBJECTS) $(LINKERFILE)
    
      $(ECHO) "Linking the following files to $@"
      $(QUIET)FOR %%f in ( $(OBJECTS) ) DO $(ECHO) "           %%f"
    
      $(ECHO) "$(call CONVERT_L166OBJECTS,$(OBJECTS))"      > $(CMD_FILE)
      $(ECHO) "TO $(call CONVERTPATH,$@)"                  >> $(CMD_FILE)
      $(ECHO) "$(LDFLAGS)"                                 >> $(CMD_FILE)
    
      $(CP) $(call CONVERTPATH,$(CMD_FILE)) + $(call CONVERTPATH,$(LINKERFILE)) $(call CONVERTPATH,$(CMD_FILE)) >NUL
    
      $(LD) @$(CMD_FILE) $(LDLOGFILE)
    

    xxLOGFILE = "> cc.log" or "> ld.log" or something (optional)
    CONVERPATH does \ to /
    LINKERFILE = fixed part of linker command file (memory map, etc.)

Children