mirror of https://github.com/ARMmbed/mbed-os.git
Add environmental variables support for toolchain paths
Also updated license of settings.py and default_settings.py and added commentspull/2005/head
parent
6dd11c76e4
commit
faa427db77
|
@ -1,10 +1,13 @@
|
||||||
"""
|
"""
|
||||||
mbed SDK
|
mbed SDK
|
||||||
Copyright (c) 2011-2013 ARM Limited
|
Copyright (c) 2016 ARM Limited
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
you may not use this file except in compliance with the License.
|
you may not use this file except in compliance with the License.
|
||||||
You may obtain a copy of the License at
|
You may obtain a copy of the License at
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
@ -13,55 +16,30 @@ limitations under the License.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from os.path import join, abspath, dirname
|
from os.path import join, abspath, dirname
|
||||||
import logging
|
|
||||||
|
|
||||||
ROOT = abspath(join(dirname(__file__), ".."))
|
#ROOT = abspath(join(dirname(__file__), "."))
|
||||||
|
|
||||||
# These default settings have two purposes:
|
|
||||||
# 1) Give a template for writing local "private_settings.py"
|
|
||||||
# 2) Give default initialization fields for the "toolchains.py" constructors
|
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
# Build System Settings
|
# Build System Settings
|
||||||
##############################################################################
|
##############################################################################
|
||||||
BUILD_DIR = abspath(join(ROOT, "build"))
|
#BUILD_DIR = abspath(join(ROOT, "build"))
|
||||||
|
|
||||||
# ARM
|
# ARM
|
||||||
ARM_PATH = "C:/Program Files/ARM"
|
#ARM_PATH = "C:/Program Files/ARM"
|
||||||
ARM_BIN = join(ARM_PATH, "bin")
|
|
||||||
ARM_INC = join(ARM_PATH, "include")
|
|
||||||
ARM_LIB = join(ARM_PATH, "lib")
|
|
||||||
|
|
||||||
ARM_CPPLIB = join(ARM_LIB, "cpplib")
|
|
||||||
MY_ARM_CLIB = join(ARM_PATH, "lib", "microlib")
|
|
||||||
|
|
||||||
# GCC ARM
|
# GCC ARM
|
||||||
GCC_ARM_PATH = ""
|
#GCC_ARM_PATH = ""
|
||||||
|
|
||||||
# GCC CodeRed
|
# GCC CodeRed
|
||||||
GCC_CR_PATH = "C:/code_red/RedSuite_4.2.0_349/redsuite/Tools/bin"
|
#GCC_CR_PATH = "C:/code_red/RedSuite_4.2.0_349/redsuite/Tools/bin"
|
||||||
|
|
||||||
# IAR
|
# IAR
|
||||||
IAR_PATH = "C:/Program Files (x86)/IAR Systems/Embedded Workbench 7.0/arm"
|
#IAR_PATH = "C:/Program Files (x86)/IAR Systems/Embedded Workbench 7.0/arm"
|
||||||
|
|
||||||
# Goanna static analyser. Please overload it in private_settings.py
|
# Goanna static analyser. Please overload it in private_settings.py
|
||||||
GOANNA_PATH = "c:/Program Files (x86)/RedLizards/Goanna Central 3.2.3/bin"
|
#GOANNA_PATH = "c:/Program Files (x86)/RedLizards/Goanna Central 3.2.3/bin"
|
||||||
|
|
||||||
# cppcheck path (command) and output message format
|
#BUILD_OPTIONS = []
|
||||||
CPPCHECK_CMD = ["cppcheck", "--enable=all"]
|
|
||||||
CPPCHECK_MSG_FORMAT = ["--template=[{severity}] {file}@{line}: {id}:{message}"]
|
|
||||||
|
|
||||||
BUILD_OPTIONS = []
|
|
||||||
|
|
||||||
# mbed.org username
|
# mbed.org username
|
||||||
MBED_ORG_USER = ""
|
#MBED_ORG_USER = ""
|
||||||
|
|
||||||
##############################################################################
|
|
||||||
# Private Settings
|
|
||||||
##############################################################################
|
|
||||||
try:
|
|
||||||
# Allow to overwrite the default settings without the need to edit the
|
|
||||||
# settings file stored in the repository
|
|
||||||
from mbed_settings import *
|
|
||||||
except ImportError:
|
|
||||||
print '[WARNING] Using default settings. Define your settings in the file "./mbed_settings.py"'
|
|
||||||
|
|
|
@ -1,10 +1,13 @@
|
||||||
"""
|
"""
|
||||||
mbed SDK
|
mbed SDK
|
||||||
Copyright (c) 2011-2013 ARM Limited
|
Copyright (c) 2016 ARM Limited
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
you may not use this file except in compliance with the License.
|
you may not use this file except in compliance with the License.
|
||||||
You may obtain a copy of the License at
|
You may obtain a copy of the License at
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
@ -12,43 +15,20 @@ See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from os.path import join, abspath, dirname
|
from os import getenv
|
||||||
|
from os.path import join, abspath, dirname, exists
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
ROOT = abspath(join(dirname(__file__), ".."))
|
ROOT = abspath(join(dirname(__file__), ".."))
|
||||||
|
|
||||||
# These default settings have two purposes:
|
|
||||||
# 1) Give a template for writing local "mbed_settings.py"
|
|
||||||
# 2) Give default initialization fields for the "toolchains.py" constructors
|
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
# Build System Settings
|
# Toolchains and Build System Settings
|
||||||
##############################################################################
|
##############################################################################
|
||||||
BUILD_DIR = abspath(join(ROOT, ".build"))
|
BUILD_DIR = abspath(join(ROOT, ".build"))
|
||||||
|
|
||||||
# ARM
|
# ARM Compiler 5
|
||||||
armcc = "standalone" # "keil", or "standalone", or "ds-5"
|
ARM_PATH = "C:/Keil_v5/ARM/ARMCC"
|
||||||
|
|
||||||
if armcc == "keil":
|
|
||||||
ARM_PATH = "C:/Keil_v5/ARM/ARMCC"
|
|
||||||
ARM_BIN = join(ARM_PATH, "bin")
|
|
||||||
ARM_INC = join(ARM_PATH, "incldue")
|
|
||||||
ARM_LIB = join(ARM_PATH, "lib")
|
|
||||||
|
|
||||||
elif armcc == "standalone":
|
|
||||||
ARM_PATH = "C:/Program Files (x86)/ARM_Compiler_5.06u1"
|
|
||||||
ARM_BIN = join(ARM_PATH, "bin")
|
|
||||||
ARM_INC = join(ARM_PATH, "include")
|
|
||||||
ARM_LIB = join(ARM_PATH, "lib")
|
|
||||||
|
|
||||||
elif armcc == "ds-5":
|
|
||||||
ARM_PATH = "C:/Program Files (x86)/DS-5"
|
|
||||||
ARM_BIN = join(ARM_PATH, "bin")
|
|
||||||
ARM_INC = join(ARM_PATH, "include")
|
|
||||||
ARM_LIB = join(ARM_PATH, "lib")
|
|
||||||
|
|
||||||
ARM_CPPLIB = join(ARM_LIB, "cpplib")
|
|
||||||
MY_ARM_CLIB = join(ARM_PATH, "lib", "microlib")
|
|
||||||
|
|
||||||
# GCC ARM
|
# GCC ARM
|
||||||
GCC_ARM_PATH = ""
|
GCC_ARM_PATH = ""
|
||||||
|
@ -71,6 +51,42 @@ BUILD_OPTIONS = []
|
||||||
# mbed.org username
|
# mbed.org username
|
||||||
MBED_ORG_USER = ""
|
MBED_ORG_USER = ""
|
||||||
|
|
||||||
|
|
||||||
|
##############################################################################
|
||||||
|
# User Settings (file)
|
||||||
|
##############################################################################
|
||||||
|
try:
|
||||||
|
# Allow to overwrite the default settings without the need to edit the
|
||||||
|
# settings file stored in the repository
|
||||||
|
from mbed_settings import *
|
||||||
|
except ImportError:
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
##############################################################################
|
||||||
|
# User Settings (env vars)
|
||||||
|
##############################################################################
|
||||||
|
_ENV_PATHS = ['ARM_PATH', 'GCC_ARM_PATH', 'GCC_CR_PATH', 'IAR_PATH']
|
||||||
|
|
||||||
|
for _n in _ENV_PATHS:
|
||||||
|
if getenv(_n):
|
||||||
|
if exists(getenv(_n)):
|
||||||
|
globals()[_n] = getenv(_n)
|
||||||
|
else:
|
||||||
|
print "WARNING: %s set as environment variable but doesn't exist" % _n
|
||||||
|
|
||||||
|
|
||||||
|
##############################################################################
|
||||||
|
# ARM Compiler Paths
|
||||||
|
##############################################################################
|
||||||
|
|
||||||
|
ARM_BIN = join(ARM_PATH, "bin")
|
||||||
|
ARM_INC = join(ARM_PATH, "include")
|
||||||
|
ARM_LIB = join(ARM_PATH, "lib")
|
||||||
|
ARM_CPPLIB = join(ARM_LIB, "cpplib")
|
||||||
|
MY_ARM_CLIB = join(ARM_LIB, "lib", "microlib")
|
||||||
|
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
# Test System Settings
|
# Test System Settings
|
||||||
##############################################################################
|
##############################################################################
|
||||||
|
@ -92,13 +108,3 @@ MUTs = {
|
||||||
"peripherals": ["TMP102", "digital_loop", "port_loop", "analog_loop", "SD"]
|
"peripherals": ["TMP102", "digital_loop", "port_loop", "analog_loop", "SD"]
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
##############################################################################
|
|
||||||
# Private Settings
|
|
||||||
##############################################################################
|
|
||||||
try:
|
|
||||||
# Allow to overwrite the default settings without the need to edit the
|
|
||||||
# settings file stored in the repository
|
|
||||||
from mbed_settings import *
|
|
||||||
except ImportError:
|
|
||||||
print '[WARNING] Using default settings. Define your settings in the file "./mbed_settings.py"'
|
|
||||||
|
|
|
@ -285,7 +285,10 @@ class mbedToolchain:
|
||||||
|
|
||||||
# Build options passed by -o flag
|
# Build options passed by -o flag
|
||||||
self.options = options if options is not None else []
|
self.options = options if options is not None else []
|
||||||
|
|
||||||
|
# Build options passed by settings.py or mbed_settings.py
|
||||||
self.options.extend(BUILD_OPTIONS)
|
self.options.extend(BUILD_OPTIONS)
|
||||||
|
|
||||||
if self.options:
|
if self.options:
|
||||||
self.info("Build Options: %s" % (', '.join(self.options)))
|
self.info("Build Options: %s" % (', '.join(self.options)))
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue