@echo "### Created $(PRODUCT)"
endif
-# Commented to remove warning when PROGRAM_FILE_EXT = EXE_FILE_EXT
-# But actually useful. Consider convert to final binary form here if needed.
-#ifeq ($(BUILD_MODE), real_time)
-#$(PRODUCT) : $(MODEL)$(PROGRAM_FILE_EXT)
-# @echo "### BUILD_MODE $(BUILD_MODE)"
-# $(OBJCOPY) $(OBJCOPYFLAGS) $< $@
-# @echo "### Generated $(PRODUCT)"
-#endif
+ifeq ($(BUILD_MODE), real_time)
+$(PRODUCT) : $(MODEL)$(PROGRAM_FILE_EXT)
+ @echo "### BUILD_MODE $(BUILD_MODE)"
+ $(OBJCOPY) $(OBJCOPYFLAGS) $< $@
+ @echo "### Generated $(PRODUCT)"
+endif
ifeq ($(BUILD_MODE), pil_application)
$(PRODUCT) : $(MODEL)$(PROGRAM_FILE_EXT)
ifeq ($(BUILD_MODE), pil_application)
$(MODEL)$(PROGRAM_FILE_EXT): $(PREBUILT_OBJS) $(OBJS) $(MODELLIB) $(MODELREF_LINK_LIBS) $(SHARED_LIB) $(LIBS)
@echo "### BUILD_MODE $(BUILD_MODE)"
- $(LD) $^ $(LDFLAGS) $(LDOUTPUTFLAG) $@
+ $(LD) $^ $(LDFLAGS) $(LDOUTPUTFLAG)$@
@echo "### Generated $@"
endif
ifeq ($(BUILD_MODE), real_time)
$(MODEL)$(PROGRAM_FILE_EXT): $(OBJS) $(MODELREF_LINK_LIBS) $(SHARED_LIB) $(LIBS)
@echo "### BUILD_MODE $(BUILD_MODE)"
- $(LD) $^ $(LDFLAGS) $(LDOUTPUTFLAG) $@
+ $(LD) $^ $(LDFLAGS) $(LDOUTPUTFLAG)$@
@echo "### Generated $@"
endif
%$(OBJ_EXT) : $(RELATIVE_PATH_TO_ANCHOR)/%.c
- $(CC) -c $(CFLAGS) $< $(CCOUTPUTFLAG) $@
+ $(CC) -c $(CFLAGS) $< $(CCOUTPUTFLAG)$@
%$(OBJ_EXT): $(RELATIVE_PATH_TO_ANCHOR)/%.cpp
- $(CXX) -c $(CXXFLAGS) $< $(CCOUTPUTFLAG) $@
+ $(CXX) -c $(CXXFLAGS) $< $(CCOUTPUTFLAG)$@
%$(OBJ_EXT): %.cpp
- $(CXX) -c $(CXXFLAGS) $< $(CCOUTPUTFLAG) $@
+ $(CXX) -c $(CXXFLAGS) $< $(CCOUTPUTFLAG)$@
%$(OBJ_EXT): %.c
- $(CC) -c $(CFLAGS) $< $(CCOUTPUTFLAG) $@
+ $(CC) -c $(CFLAGS) $< $(CCOUTPUTFLAG)$@
%$(OBJ_EXT): $(TARGET_SRC_DIR)/%.cpp
- $(CXX) -c $(CXXFLAGS) $< $(CCOUTPUTFLAG) $@
+ $(CXX) -c $(CXXFLAGS) $< $(CCOUTPUTFLAG)$@
%$(OBJ_EXT): $(TARGET_SRC_DIR)/%.c
- $(CC) -c $(CFLAGS) $< $(CCOUTPUTFLAG) $@
+ $(CC) -c $(CFLAGS) $< $(CCOUTPUTFLAG)$@
|>START_EXPAND_RULES<|%$(OBJ_EXT) : |>EXPAND_DIR_NAME<|/%.cpp
$(CXX) -c $(CXXFLAGS) $<
lCodeGenFolder = Simulink.fileGenControl('getConfig').CodeGenFolder;
buildAreaDstFolder = fullfile(lCodeGenFolder, 'slprj');
- % Get CSS configuration variables and create configuration makefile
+ % Get CSS configuration variables and create paths configuration makefile
CompilerRoot = getpref('rpp', 'CompilerRoot');
TargetRoot = getpref('rpp', 'TargetRoot');
TargetPaths = fullfile(buildAreaDstFolder, 'target_paths.mk');
+ RppLibRoot = fullfile(fileparts(TargetRoot), 'lib');
fid = fopen(TargetPaths, 'w');
fwrite(fid, sprintf('%s\n\n', '# RPP paths'));
fwrite(fid, sprintf('COMPILER_ROOT = %s\n', CompilerRoot));
fwrite(fid, sprintf('TARGET_ROOT = %s\n', TargetRoot));
+ fwrite(fid, sprintf('RPP_LIB_ROOT = %s\n', RppLibRoot));
fclose(fid);
-
% Copy the RPP version of target_tools.mk into the build area
tgtToolsFile = 'target_tools.mk';
- targetToolsFolder = fileparts(mfilename('fullpath'));
- srcFile = fullfile(targetToolsFolder, tgtToolsFile);
+ srcFile = fullfile(TargetRoot, tgtToolsFile);
dstFile = fullfile(buildAreaDstFolder, tgtToolsFile);
copyfile(srcFile, dstFile, 'f');
% Make sure the file is not read-only
/* Kernel includes */
#include "FreeRTOS.h"
- #include "task.h"
- #include "semphr.h"
+ #include "os_task.h"
+ #include "os_semphr.h"
+ %% FIXME: Return to original file names
+ %%#include "task.h"
+ %%#include "semphr.h"
/* System includes */
#include "sys_common.h"
include $(START_DIR)/slprj/target_paths.mk
+# Options for target source files
+TARGET_INCS =
+TARGET_SRCS =
+
# Compiler command and options
CC = "$(COMPILER_ROOT)/bin/armcl"
-CFLAGS = -mv7R4 --code_state=32 --float_support=VFPv3D16 --abi=eabi \
- -O2 --diag_warning=225 --display_error_number --enum_type=packed \
+CFLAGS = -mv7R4 --code_state=32 --float_support=VFPv3D16 \
+ --abi=eabi --compile_only -O2 \
+ --diag_warning=225 --display_error_number --enum_type=packed \
--include_path="$(COMPILER_ROOT)/include" \
- --include_path="$(TARGET_ROOT)/lib"
+ --include_path="$(RPP_LIB_ROOT)/tmp"
+ # FIXME: Remove tmp library when library is ordered
CFLAGS += $(OPTS)
-CDEBUG = -g --gcc
-CCOUTPUTFLAG = -o
+CDEBUG = -g
+CCOUTPUTFLAG = --output_file=
CXX =
CXXFLAGS =
--reread_libs --warn_sections --display_error_number --rom_model \
--be32
-LDDEBUG = -g --gcc
-LDOUTPUTFLAG = -o
+LDDEBUG = -g
+LDOUTPUTFLAG = --output_file=
# Archiver command and options
AR = "$(COMPILER_ROOT)/bin/armar"
ARFLAGS = -r
# Binary file format converter command and options
-OBJCOPY =
+OBJCOPY = echo
OBJCOPYFLAGS =
# Specify the output extension from compiler
-OBJ_EXT = .o
+OBJ_EXT = .obj
# Specify extension from linker
PROGRAM_FILE_EXT = .out
# Specify extension for final product at end of build
-EXE_FILE_EXT = $(PROGRAM_FILE_EXT)
+EXE_FILE_EXT = .hex