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

example makefile modify related

 importing the startup_Cortex-A53x1 example supplied with Arm Development Studio.

add new folder in /src, 

and modified the makefile in the top folder

APP_C_SRC := $(wildcard $(SRC_DIR)/*.c) \

                       $(wildcard $(SRC_DIR)/dirx/*.c) 
APP_S_SRC := $(wildcard $(ASM_DIR)/*.S)
OBJ_FILES := $(APP_C_SRC:$(SRC_DIR)/%.c=$(OBJ_DIR)/%.o) \

                       $(APP_C_SRC:$(SRC_DIR)/dirx/%.c=$(OBJ_DIR)/%.o)
$(APP_S_SRC:$(ASM_DIR)/%.S=$(OBJ_DIR)/%.o)
DEP_FILES := $(OBJ_FILES:%=%.d)

but the compile output is the same with before:

12:25:54 **** Build of configuration Default for project startup_Armv8-Ax1_AC6_lab' ****
make all
mkdir obj
Compiling src/GICv3_gicd.c...
Compiling src/timer_interrupts.c...
Compiling src/sp804_timer.c...
Compiling src/main.c...
Compiling src/GICv3_gicr.c...
Compiling src/uart.c...
Compiling src/retarget.c...
Compiling asm/vectors.S...
Compiling asm/v8_aarch64.S...
Compiling asm/v8_utils.S...
Compiling asm/startup.S...
Linking startup_Armv8-Ax1_AC6.axf
Done.

12:25:56 Build Finished. 0 errors, 0 warnings. (took 2s.237ms)

is there anything more to notice?

  • Hi again

    Try this instead.  Into both makefiles for startup_Armv8-Ax1_AC6 and startup_Cortex-A53x1_AC6 add:

    APP_C_SRC := $(wildcard $(SRC_DIR)/*.c)
    EXT_C_SRC := $(wildcard $(SRC_DIR)/dirx/*.c)
    APP_S_SRC := $(wildcard $(ASM_DIR)/*.S)
    OBJ_FILES := $(APP_C_SRC:$(SRC_DIR)/%.c=$(OBJ_DIR)/%.o) \
                 $(EXT_C_SRC:$(SRC_DIR)/dirx/%.c=$(OBJ_DIR)/%.o) \
                 $(APP_S_SRC:$(ASM_DIR)/%.S=$(OBJ_DIR)/%.o)
    DEP_FILES := $(OBJ_FILES:%=%.d)

    and later add a compilation rule for the new folder, for startup_Armv8-Ax1_AC6:

    $(OBJ_DIR)/%.o : $(SRC_DIR)/dirx/%.c | $(OBJ_DIR)
        $(PROGRESS)
        $(QUIET) $(CC) -c $(TARGET_ARCH) $(CPPFLAGS) $(CFLAGS) -o $@ $<

    and (slightly different) for startup_Cortex-A53x1_AC6:

    $(OBJ_DIR)/%.o : $(SRC_DIR)/dirx/%.c | $(OBJ_DIR)
        $(PROGRESS)
        $(QUIET) $(CC) -c $(TARGET_CPU) $(CPPFLAGS) $(CFLAGS) -o $@ $<

    Hope this helps

    Stephen