% Authors:
% - Carlos Jenkins <carlos@jenkins.co.cr>
%
-% This program is free software; you can redistribute it and/or modify
-% it under the terms of the GNU General Public License as published by
-% the Free Software Foundation; either version 2 of the License, or
-% (at your option) any later version.
-%
-% This program is distributed in the hope that it will be useful,
-% but WITHOUT ANY WARRANTY; without even the implied warranty of
-% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-% GNU General Public License for more details.
-%
-% You should have received a copy of the GNU General Public License
-% along with this program. If not, see <http://www.gnu.org/licenses/>.
+% Permission is hereby granted, free of charge, to any person
+% obtaining a copy of this software and associated documentation
+% files (the "Software"), to deal in the Software without
+% restriction, including without limitation the rights to use,
+% copy, modify, merge, publish, distribute, sublicense, and/or sell
+% copies of the Software, and to permit persons to whom the
+% Software is furnished to do so, subject to the following
+% conditions:
+
+% The above copyright notice and this permission notice shall be
+% included in all copies or substantial portions of the Software.
+
+% THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+% EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+% OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+% NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+% HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+% WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+% FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+% OTHER DEALINGS IN THE SOFTWARE.
%
% File : rpp_lib_support.m
% Abstract:
-% Support for RPP library and operating system setup.
+% Simulink support for RPP library and operating system setup.
+%
+% DEPRECATED this file is no longer needed and no longer called.
+% It was called by rpp_select_callback_handler.m and was used to include
+% source code files in the build. RPP now uses an static library that can
+% be found in the linker arguments in target_tools.mk. This file is left
+% for future reference in case, for example, that the external mode support
+% requires aditional files to be included in the build.
%
% References:
% rtw_ug.pdf p. 1058
% rtw_ref.pdf p. 56
-% <RppRoot>/rpp/lib/os/README.txt
+% Readme file in <RppRoot>/rpp/lib/rpp/doc/os.txt
function rpp_lib_support(modelName, buildInfo)
'heap.c' , ...
'list.c' , ...
'port.c' , ...
- 'portASM.c' , ...
+ 'portASM.asm', ...
'queue.c' , ...
'tasks.c' , ...
'timers.c' };
% Get working directories
- rppLibRoot = getpref('rpp', 'RppLibRoot');
- rppLibRoot = fullfile(rppLibRoot, 'tmp'); % FIXME: Remove this line when library is modularized.
+ osLibRoot = fullfile(getpref('rpp', 'RppLibRoot'), 'rpp', 'src', 'os');
% TODO: get suffix from rpp.tlc BuildDirSuffix
modelRoot = Simulink.fileGenControl('getConfig').CodeGenFolder;
outputFolder = fullfile(modelRoot, [modelName, '_rpp']);
% Add sources to compilation
- buildInfo.addSourceFiles(source, rppLibRoot);
+ buildInfo.addSourceFiles(sources, osLibRoot);
- % Copy dependecy sources
+ % Copy dependency sources
for i = sources
- copyfile(fullfile(rppLibRoot , i{1}), ...
+ copyfile(fullfile(osLibRoot , i{1}), ...
fullfile(outputFolder, i{1}));
end