Commit b7977ddb authored by Daniel Silveira's avatar Daniel Silveira Committed by Luca Giordano

New configurator version 4.0!

refs #112269

Now supports multiple RTOS.
It is supporting
 - RTEMS48i (RTEMS 4.8 Improved for Space Qualification)
 - RTEMS 5 (rtems.git master branch)
 - Bare bone without RTOS
parent edb8d2c2
......@@ -14,6 +14,7 @@ import pickle
import utils.parser
import logging
import traceback
import utils.terminal as terminalutils
__OS_CONFIG_FILE__ = os.path.join(air.ROOT_DIRECTORY, '.air_config')
......@@ -46,6 +47,7 @@ def get_available_targets():
module = imp.load_source(target_str, bsp_path)
bsp[bsp_name] = module
except IOError:
logging.warning ('Missing AIR target : %s, bsp: %s', bsp_path, bsp_name)
pass
if len(bsp) > 0:
......@@ -74,11 +76,12 @@ def get_available_libraries():
for lib_name in libs_names:
try:
lib_path = os.path.join(AIR_LIBRARIES, lib_name, 'config.py')
if lib_name != 'libiop':
module = imp.load_source(lib_name, lib_path)
module.path = lib_path
libs[module.name.lower()] = module
module = imp.load_source(lib_name, lib_path)
module.path = lib_path
libs[module.name.lower()] = module
except IOError:
logging.warning ('Missing AIR library : %s, name: %s', lib_path, lib_name)
pass
return libs
......@@ -86,15 +89,25 @@ def get_available_libraries():
def get_available_pos():
pos = {}
# Prompt to install RTOS
#opts = ['No', 'Yes']
#promptx = 'Install All RTOS ?'
#all_rtos = terminalutils.promptActions(promptx, opts)
pos_names = [x for x in os.listdir(AIR_POS)
if os.path.isdir(os.path.join(AIR_POS, x)) and x != 'shared']
for pos_name in pos_names:
try:
#i = 0
#if all_rtos == 0:
# promptx = 'Install ' + pos_name + '?'
# i = terminalutils.promptActions(promptx, opts)
#if i == 1 or all_rtos == 1:
pos_path = os.path.join(AIR_POS, pos_name, 'config.py')
module = imp.load_source(pos_name, pos_path)
module.path = pos_path
pos[module.name.lower()] = module
except IOError:
logging.warning ('Missing AIR POS : %s, name: %s', pos_path, pos_name)
pass
return pos
......@@ -119,7 +132,7 @@ class Configuration(object):
self.bsp = bsp.lower()
self.fpu_enabled = fpu_enabled;
self.debug_mode = False
logging.info ('Initializing Configuration class arch: %s, bsp: %s', self.arch, self.bsp)
logging.info ('Initializing Configuration class architecture: %s, bsp: %s', self.arch, self.bsp)
# get supported pos
......@@ -147,7 +160,8 @@ class Configuration(object):
pos.supported_libraries.append(lib.name)
supported = True
except Exception:
pass # pos is not supported...
logging.warning ('the library: %s is not installed because %s is missing', lib.name, pos_name)
pass
else:
for pos_name in self.supported_pos:
pos = self.supported_pos[pos_name]
......@@ -215,12 +229,12 @@ class Configuration(object):
msoft_float = self.grep ("Makefile.inc", "msoft")
if self.fpu_enabled:
#if msoft_float:
# not required for RTEMS 4.12 TBC
# not required for RTEMS 5 TBC
#os.system("patch --force -p2 -R -s < tools/configurator/disable_fpu.patch")
return supported_architectures[self.arch][self.bsp].kernel_compiler
else:
#if not msoft_float:
# not required for RTEMS 4.12 TBC
# not required for RTEMS 5 TBC
#os.system("patch --force -p2 -s < tools/configurator/disable_fpu.patch")
return supported_architectures[self.arch][self.bsp].kernel_compiler_no_fpu
......@@ -544,12 +558,13 @@ def save_configuration(os_configuration, logger):
# @param logger logger to report errors
# @return OS configuration object pointer
def load_configuration(logger):
# sanity check
if not os.path.isfile(__OS_CONFIG_FILE__):
logger.error("Error POS config file is missing ", __OS_CONFIG_FILE__)
return None
# try to load the configuration
try:
fd = open(__OS_CONFIG_FILE__, 'r')
arch, bsp, fpu_enabled = pickle.load(fd)
......
......@@ -29,4 +29,4 @@ dependencies = ['libprintf']
makefile = os.path.join(LIBRARIES_DIRECTORY, 'libiop', 'iop_makefile.mako')
# @brief Requires POS
requires_pos = ['rtems']
requires_pos = ['rtems48i']
......@@ -56,7 +56,7 @@ LIBRARY_HEADERS=${'\\'}
${template.FileList(library_headers)}\
RTEMS_MAKEFILE_PATH=${'\\'}
${os.path.relpath(os.path.join(air.INSTALL_POS_DIRECTORY, '$(RTEMS_DIRECTORY)', '$(RTEMS_DIRECTORY)-install', '$(RTEMS_TARGET)', '$(RTEMS_BSP)'), output_dir)}
${os.path.relpath(os.path.join(air.INSTALL_POS_DIRECTORY, '$(RTEMS_DIRECTORY_FOR_IOP)', '$(RTEMS_DIRECTORY_FOR_IOP)-install', '$(RTEMS_IMPR_TARGET)', '$(RTEMS_IMPR_BSP)'), output_dir)}
ifneq ($(wildcard $(RTEMS_MAKEFILE_PATH)/Makefile.inc),)
......
##
# @package air.pos.rtems48i
# @author dtms
# @brief RTEMS 4.8 (impr) configuration
__author__ = 'dtms'
import os
import utils
from air import *
import utils.file as file_tools
# @brief Name
name = "rtems48i"
# @brief Description
description = "RTEMS-4.8-IMPR"
# @brief OS alias
alias = ['rtems48i']
# @brief POS Source files
source_files = {
'sparc': [], # empty, the magic happens in the makefile template
}
# @brief POS Private Header files
private_header_files = {
'sparc': [], # empty, the magic happens in the makefile template
}
# @brief POS Public Header files
public_header_files = {
'sparc': [], # empty, the magic happens in the makefile template
}
# @brief Custom Makefile
makefile = os.path.join(POS_DIRECTORY, 'rtems48i', 'rtems48i_makefile.mako')
# @brief List of lines to be add to Makefile.inc
makefile_inc = [
"RTEMS_IMPR_DIRECTORY=rtems48i",
"RTEMS_IMPR_TARGET=sparc-rtems5",
"RTEMS_IMPR_BSP=leon3",
]
# @brief List of application partition templates
partition_templates = [
os.path.join(POS_DIRECTORY, 'rtems48i', 'rtems48i_partition_makefile.mako'), # POS makefile
os.path.join(POS_DIRECTORY, 'rtems48i', 'init.c.mako'),
os.path.join(POS_DIRECTORY, 'rtems48i', 'rtems_config.h.mako'),
]
<%
import air
import utils.templates as makoutils
%>\
${makoutils.cfileHeader("init.c", "Partition Initialization")}
#include <air.h>
#include <rtems.h>
%if 'imaspex' in partition.libraries:
#include <imaspex.h>
%endif
/**
* @brief Partition entry point
*/
extern int ${partition.entry_point}() __attribute__ ((weak));
%if partition.hm_callback:
/**
* @brief Partition health-monitor callback
*/
extern void ${partition.hm_callback}(
air_state_e state_id,
air_error_e error_id) __attribute__ ((weak));
%endif
%if partition.iop is not None:
/**
* @brief IOP initialization
*/
extern rtems_status_code IOPinit();
%endif
/**
* @brief Health-Monitor ISR handler
*/
static void hm_isr_handler(void) {
/* get HM event */
air_hm_event_t hm_event;
air_syscall_get_hm_event(&hm_event);
%if partition.hm_callback:
/* call partition HM callback */
if (${partition.hm_callback} != NULL) {
${partition.hm_callback}(hm_event.state_id, hm_event.error_id);
}
%endif
}
/**
* @brief Main RTEMS task
*/
rtems_task Init(rtems_task_argument ignored) {
/* register HM ISR handler */
rtems_isr_entry isr_ignored;
rtems_interrupt_catch(
(rtems_isr_entry)hm_isr_handler,
AIR_IRQ_HM_EVENT,
&isr_ignored);
%if 'imaspex' in partition.libraries:
/* initialize IMASPEX */
imaspex_init();
%endif
%if partition.iop is not None:
/* initialize IOP */
IOPinit();
%endif
/* call entry point */
if (${partition.entry_point} != NULL) {
${partition.entry_point}();
}
rtems_task_delete(RTEMS_SELF);
}
#include <rtems_config.h>
<%
import os
import air
import utils.templates as makoutils
# base build dir
base_dir = os.path.join(
os.path.relpath(air.INSTALL_DIRECTORY, output_dir),
os.path.relpath(output_dir, air.ROOT_DIRECTORY))
# rtems build dir
build_dir = os.path.join(
os.path.relpath(air.INSTALL_DIRECTORY, output_dir),
os.path.relpath(output_dir, air.ROOT_DIRECTORY),
'rtems48i-build')
# rtems install dir
install_dir = os.path.join(
air.INSTALL_DIRECTORY,
os.path.relpath(output_dir, air.ROOT_DIRECTORY),
'rtems48i-install')
# get libair headers
libair_headers = os_configuration.get_libair_headers()
%>\
<%namespace name="template" file="/makefile.mako"/>\
${template.FileHeader("POS RTEMS-IMPR - RTEMS-IMPR personality")}\
# Makefile Include file
${template.MakefileInc()}
CURRENT_PATH=$(shell pwd)
# reguired AIR headers
AIR_HEADERS=${'\\'}
${template.get_headers_directories(libair_headers)}\
# RTEMS build and install directories
RTEMS_BUILD_DIR=${build_dir}
RTEMS_INSTALL_DIR=${install_dir}
EDILIB_BUILD_DIR=../${base_dir}/edilib
# All
${template.Rule('all', True, ['rtems48i'])}
# RTEMS 4.10
${template.Rule('rtems48i', True, None)}
${'\t'}if [ ! -d "$(RTEMS_BUILD_DIR)" ]; then ${'\\'}
${'\t'}$(MKDIR) $(RTEMS_BUILD_DIR) && ${'\\'}
${'\t'}$(MKDIR) ${base_dir}/edilib && ${'\\'}
${'\t'}cd $(RTEMS_BUILD_DIR); $(CURRENT_PATH)/rtems48i/configure ${'\\'}
${'\t\t'}--target=$(RTEMS_IMPR_TARGET) ${'\\'}
${'\t\t'}--enable-rtems-inlines ${'\\'}
${'\t\t'}--disable-itron ${'\\'}
${'\t\t'}--disable-multiprocessing ${'\\'}
${'\t\t'}--disable-posix ${'\\'}
${'\t\t'}--disable-networking ${'\\'}
${'\t\t'}--disable-cxx ${'\\'}
${'\t\t'}--disable-tests ${'\\'}
${'\t\t'}--enable-rtemsbsp=$(RTEMS_IMPR_BSP) ${'\\'}
${'\t\t'}--prefix=$(RTEMS_INSTALL_DIR) && cd ..; ${'\\'}
${'\t'}fi
${'\t'}make -C $(RTEMS_BUILD_DIR) CPPFLAGS='$(AIR_HEADERS)' && ${'\\'}
${'\t'}make -C $(RTEMS_BUILD_DIR) install && ${'\\'}
${'\t'}make -C edilib BUILD_DIR='$(EDILIB_BUILD_DIR)'
# Clean
${template.Rule('clean', True, None)}
${template.Remove(base_dir)}
# Distclean
${template.Rule('distclean', True, None)}
${template.Remove(base_dir)}
${template.Remove(output_file)}
<%
import os
import air
import utils.templates as makoutils
# get Makefile parameters
lib_name, lib_make = makoutils.getMakefileLib(input_file)
build_dir = os.path.relpath(air.INSTALL_PMK_DIRECTORY, air.SOURCE_PMK_DIRECTORY)
%>\
<%namespace name="template" file="/makefile.mako"/>\
${template.FileHeader('{0} : {1}'.format(lib_name.upper(), partition))}\
EXEC=${partition.executable}
PGM=$(EXEC)
# Optional managers required by the application, select between:
# Event Manager = event
# Message Queue Manager = msg
# Rate Monotonic Manager = rtmon
# Semaphore Manager = sem
# Timer manager = timer
# Extension Manager = ext
# IO Manager = io
MANAGERS=sem rtmon msg timer
# C source code and headers filenames used in the example
CSRCS=$(shell find ./ -type f -name '*.c')
CHDRS=$(shell find ./ -type f -name '*.h')
COBJS_=$(CSRCS:.c=.o)
COBJS=$(COBJS_:%=$(ARCH)/%) $(shell find ../common -type f -name '*.o')
# RTEMS Improvement RTEMS source code
RTEMS_USES_NEWLIB = no
# Example of assembly source code filenames that could be included
ASSRCS=$(shell find ./ -type f -name '*.S')
ASOBJS_=$(ASSRCS:.S=.o)
ASOBJS=$(ASOBJS_:%=$(ARCH)/%)
# libraries
LD_LIBS =${'\\'}
% for i, libname in enumerate(partition.libraries):
$(AIR_LIBS)/${libname.lower()}/${libname.lower()}.a${'\\' if i < len(partition.libraries) - 1 else '\\'}
% endfor
# The RTEMS_MAKEFILE_PATH is defined by the user for the specific CPU and BSP
RTEMS_MAKEFILE_PATH=$(AIR_POS)/${os.path.join(pos_config.name, 'rtems48i-install', 'sparc-rtems5', 'leon3')}
RTEMS_EXTERNAL_LIBRARY_PATH=${'\\'}
$(XKY_POS)/${os.path.join(pos_config.name, 'edilib', 'library')}${'\\' if len(partition.libraries) > 0 else ''}
# These includes should not be modified by the user.
include $(RTEMS_MAKEFILE_PATH)/Makefile.inc
include $(RTEMS_CUSTOM)
include $(PROJECT_ROOT)/make/leaf.cfg
# built in libraries include files
CPPFLAGS+=${'\\'}
-I./${'\\'}
-B./${'\\'}
-I../common/${'\\'}
-B../common/${'\\'}
${template.LibraryIncludes(partition.libraries)}\
OBJS = $(COBJS) $(ASOBJS)
all: $(ARCH) $(PGM)
$(PGM): $(OBJS) $(CHDRS)
${'\t'}$(make-exe)
<%
import air
import utils.templates as makoutils
%>\
${makoutils.cfileHeader("rtems_config.h", "RTEMS configuration")}
#include <rtems.h>
/**
* @brief Standard RTEMS configuration
*/
#define CONFIGURE_INIT
#define CONFIGURE_MAXIMUM_TASKS 64
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
#define CONFIGURE_EXTRA_TASK_STACKS RTEMS_MINIMUM_STACK_SIZE
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_MAXIMUM_SEMAPHORES 1
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
%if air.PERMISSION_FPU in partition.permissions:
#define CONFIGURE_INIT_TASK_ATTRIBUTES RTEMS_FLOATING_POINT
%endif
#define CONFIGURE_MAXIMUM_PERIODS 1
#include <rtems/confdefs.h>
##
# @package air.pos.rtems5
# @author dtms
# @brief RTEMS 4.12 configuration
# @brief RTEMS 5 configuration
__author__ = 'dtms'
......@@ -14,10 +14,10 @@ import utils.file as file_tools
name = "rtems5"
# @brief Description
description = "RTEMS5"
description = "RTEMS-5"
# @brief OS alias
alias = ['rtems']
alias = ['rtems5']
# @brief POS Source files
source_files = {
......@@ -38,10 +38,10 @@ public_header_files = {
makefile = os.path.join(POS_DIRECTORY, 'rtems5', 'rtems5_makefile.mako')
# @brief List of lines to be add to Makefile.inc
# RTEMS_DIRECTORY is necessary only for lbiop
makefile_inc = [
"RTEMS_DIRECTORY=rtems5",
"RTEMS_TARGET=sparc-rtems5",
"RTEMS_BSP=leon3",
"RTEMS5_TARGET=sparc-rtems5",
"RTEMS5_BSP=leon3",
]
# @brief List of application partition templates
......
......@@ -24,7 +24,7 @@
libair_headers = os_configuration.get_libair_headers()
%>\
<%namespace name="template" file="/makefile.mako"/>\
${template.FileHeader("POS RTEMS5 - RTEMS5 personality")}\
${template.FileHeader("POS RTEMS-5.0 ")}\
# Makefile Include file
${template.MakefileInc()}
......@@ -42,12 +42,12 @@ RTEMS_INSTALL_DIR=${install_dir}
# All
${template.Rule('all', True, ['rtems5'])}
# RTEMS 4.12
# RTEMS 5
${template.Rule('rtems5', True, None)}
${'\t'}if [ ! -d "$(RTEMS_BUILD_DIR)" ]; then ${'\\'}
${'\t'}$(MKDIR) $(RTEMS_BUILD_DIR) && ${'\\'}
${'\t'}cd $(RTEMS_BUILD_DIR); $(CURRENT_PATH)/rtems5/configure ${'\\'}
${'\t\t'}--target=$(RTEMS_TARGET) ${'\\'}
${'\t\t'}--target=$(RTEMS5_TARGET) ${'\\'}
${'\t\t'}--enable-rtems-inlines ${'\\'}
${'\t\t'}--disable-itron ${'\\'}
${'\t\t'}--disable-multiprocessing ${'\\'}
......@@ -55,7 +55,7 @@ ${'\t\t'}--disable-posix ${'\\'}
${'\t\t'}--disable-networking ${'\\'}
${'\t\t'}--disable-cxx ${'\\'}
${'\t\t'}--disable-tests ${'\\'}
${'\t\t'}--enable-rtemsbsp=$(RTEMS_BSP) ${'\\'}
${'\t\t'}--enable-rtemsbsp=$(RTEMS5_BSP) ${'\\'}
${'\t\t'}--prefix=$(RTEMS_INSTALL_DIR) && cd ..; ${'\\'}
${'\t'}fi
${'\t'}make -C $(RTEMS_BUILD_DIR) CPPFLAGS='$(AIR_HEADERS)' && ${'\\'}
......
......@@ -30,7 +30,7 @@ CHDRS=$(shell find ./ -type f -name '*.h')
COBJS_=$(CSRCS:.c=.o)
COBJS=$(COBJS_:%=$(ARCH)/%) $(shell find ../common -type f -name '*.o')
# RTEMS Improvement RTEMS source code
# RTEMS Newlib check (TBC)
RTEMS_USES_NEWLIB = no
# Example of assembly source code filenames that could be included
......
......@@ -30,7 +30,7 @@ kernel_compiler = dict(
AR="sparc-rtems5-ar",
RANLIB="sparc-rtems5-ranlib",
CFLAGS="",
CPPFLAGS="-mcpu=leon4 -mflat -fno-builtin -nodefaultlibs -O2 -Wall",
CPPFLAGS="-mcpu=leon3 -mflat -fno-builtin -nodefaultlibs -O2 -Wall",
CXXFLAGS="",
LDFLAGS="",
ARFLAGS="ruv"
......@@ -44,7 +44,7 @@ kernel_compiler_no_fpu = dict(
AR="sparc-rtems5-ar",
RANLIB="sparc-rtems5-ranlib",
CFLAGS="",
CPPFLAGS="-mcpu=leon4 -mflat -fno-builtin -nodefaultlibs -O2 -Wall",
CPPFLAGS="-mcpu=leon3 -mflat -fno-builtin -nodefaultlibs -O2 -Wall",
CXXFLAGS="",
LDFLAGS="",
ARFLAGS="ruv"
......
......@@ -22,9 +22,9 @@ from utils.logger import Logger
from localization.common import *
from argparse import ArgumentParser, RawTextHelpFormatter
__version__ = '3.6'
__copyright__ = 'Copyright (C) GMVIS Skysoft S.A., 2014'
__author__ = 'pfnf'
__version__ = '4.0'
__copyright__ = 'Copyright (C) GMVIS Skysoft S.A., 2018'
__author__ = 'dtms, llgg, gmvs, lumm, pfnf'
__app__ = os.path.basename(__file__)
#Uncomment this for full debugging of an error and check configurator.log results
......@@ -54,10 +54,8 @@ if __name__ == "__main__":
# check if we are configuring AIR or a partition
if air.WORKING_DIRECTORY == air.ROOT_DIRECTORY:
args = configure_air.InputArgs(arg_parser, logger)
configure_air.Run(args, logger)
else:
# load OS configurations
os_configuration = air_configuration.load_configuration(logger)
......
diff --git a/air/pos/rtems-impr/rtems-impr/make/compilers/gcc-target-default.cfg b/air/pos/rtems-impr/rtems-impr/make/compilers/gcc-target-default.cfg
diff --git a/air/pos/rtems48i/rtems48i/make/compilers/gcc-target-default.cfg b/air/pos/rtems48i/rtems48i/make/compilers/gcc-target-default.cfg
index a5ef8f0..66c1e65 100755
--- a/air/pos/rtems-impr/rtems-impr/make/compilers/gcc-target-default.cfg
+++ b/air/pos/rtems-impr/rtems-impr/make/compilers/gcc-target-default.cfg
--- a/air/pos/rtems48i/rtems48i/make/compilers/gcc-target-default.cfg
+++ b/air/pos/rtems48i/rtems48i/make/compilers/gcc-target-default.cfg
@@ -124,7 +124,7 @@ ${ARCH}/%.o: %.c
# special compilation for source code compiled with software floating point
......@@ -11,10 +11,10 @@ index a5ef8f0..66c1e65 100755
${ARCH}/%.o: %.cc
${COMPILE.cc} $(AM_CPPFLAGS) $(AM_CXXFLAGS) -o $@ $<
diff --git a/air/pos/rtems-impr/rtems-impr/make/custom/erc32.cfg b/air/pos/rtems-impr/rtems-impr/make/custom/erc32.cfg
diff --git a/air/pos/rtems48i/rtems48i/make/custom/erc32.cfg b/air/pos/rtems48i/rtems48i/make/custom/erc32.cfg
index a9f6255..711745b 100755
--- a/air/pos/rtems-impr/rtems-impr/make/custom/erc32.cfg
+++ b/air/pos/rtems-impr/rtems-impr/make/custom/erc32.cfg
--- a/air/pos/rtems48i/rtems48i/make/custom/erc32.cfg
+++ b/air/pos/rtems48i/rtems48i/make/custom/erc32.cfg
@@ -15,7 +15,7 @@ RTEMS_BSP_FAMILY=erc32
# This contains the compiler options necessary to select the CPU model
......@@ -24,10 +24,10 @@ index a9f6255..711745b 100755
diff --git a/air/pos/rtems-impr/rtems-impr/make/custom/leon2.cfg b/air/pos/rtems-impr/rtems-impr/make/custom/leon2.cfg
diff --git a/air/pos/rtems48i/rtems48i/make/custom/leon2.cfg b/air/pos/rtems48i/rtems48i/make/custom/leon2.cfg
index ea6afc0..f723d64 100755
--- a/air/pos/rtems-impr/rtems-impr/make/custom/leon2.cfg
+++ b/air/pos/rtems-impr/rtems-impr/make/custom/leon2.cfg
--- a/air/pos/rtems48i/rtems48i/make/custom/leon2.cfg
+++ b/air/pos/rtems48i/rtems48i/make/custom/leon2.cfg
@@ -13,7 +13,7 @@ RTEMS_BSP_FAMILY=leon2
# This contains the compiler options necessary to select the CPU model
......@@ -46,10 +46,10 @@ index ea6afc0..f723d64 100755
$(LINK_OBJS) $(LINK_LIBS)
$(NM) -g -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
diff --git a/air/pos/rtems-impr/rtems-impr/make/custom/leon3.cfg b/air/pos/rtems-impr/rtems-impr/make/custom/leon3.cfg
diff --git a/air/pos/rtems48i/rtems48i/make/custom/leon3.cfg b/air/pos/rtems48i/rtems48i/make/custom/leon3.cfg
index 8bda901..6be8865 100755
--- a/air/pos/rtems-impr/rtems-impr/make/custom/leon3.cfg
+++ b/air/pos/rtems-impr/rtems-impr/make/custom/leon3.cfg
--- a/air/pos/rtems48i/rtems48i/make/custom/leon3.cfg
+++ b/air/pos/rtems48i/rtems48i/make/custom/leon3.cfg
@@ -16,7 +16,7 @@ RTEMS_BSP_FAMILY=leon3
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
......
AIR_CONFIG_WELCOME = [ ' AIR Configurator v{0}', ' Copyright (C) GMVIS Skysoft S.A., 2014' ]
IOP_CONFIG_WELCOME = [ ' IOP Configurator v{0}', ' Copyright (C) GMVIS Skysoft S.A., 2013' ]
AIR_CONFIG_WELCOME = [ ' AIR Configurator v{0}', ' Copyright (C) GMVIS Skysoft S.A., 2018' ]
IOP_CONFIG_WELCOME = [ ' IOP Configurator v{0}', ' Copyright (C) GMVIS Skysoft S.A., 2017' ]
AIR_DESCRIPTION = 'Tool to configure an AIR application'
IOP_DESCRIPTION = 'Tool to configure an I/O Partition'
......
......@@ -153,7 +153,7 @@ class IOParser(object):
pdevice.id = xml.parse_attr(PHYSICAL_DEVICE_ID, VALID_IDENTIFIER_TYPE, True, self.logger)
pdevice.device = xml.parse_attr(PHYSICAL_DEVICE_NAME, VALID_NAME_TYPE, True, self.logger)
self.logger.event(pdevice.device)
self.logger.event(0, "dev:", pdevice.device)
# sanity check
if self.logger.check_errors(): return False
......
......@@ -94,9 +94,9 @@ endef
%for pos_name in os_configuration.get_supported_pos():
<%
pos = os_configuration.get_pos_config(pos_name)
pos = os_configuration.get_pos_config(pos_name)
%>\
%if (pos.alias is None or pos_name not in pos.alias) and pos.makefile_inc is not None and len(pos.makefile_inc) > 0:
%if pos.makefile_inc is not None:
${'# {0} definitions'.format(pos.name)}
%for line in pos.makefile_inc:
${line}
......
......@@ -107,8 +107,8 @@ def Run(args, logger):
pos = os_configuration.get_pos_config(pos_name)
# check if it is an alias
if pos.alias is not None and pos_name in pos.alias:
continue
# if pos.alias is not None and pos_name in pos.alias:
# continue
makoutils.applyMAKOTemplate(
os_configuration.get_pos_makefile(pos.name),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment