mirror of
https://github.com/platformio/platformio-core.git
synced 2025-07-30 01:57:13 +02:00
Simplify configuration for PIO Unit Testing
This commit is contained in:
@ -13,6 +13,8 @@ PlatformIO 3.0
|
|||||||
- "Recent News" block on "Welcome" page
|
- "Recent News" block on "Welcome" page
|
||||||
- Direct import of development platform's example
|
- Direct import of development platform's example
|
||||||
|
|
||||||
|
* Simplify configuration for `PIO Unit Testing <http://docs.platformio.org/page/plus/unit-testing.html>`__: separate main program from a test build process, drop
|
||||||
|
requirement for ``#ifdef UNIT_TEST`` guard
|
||||||
* Configure a custom path to SVD file using `debug_svd_path <http://docs.platformio.org/page/projectconf/section_env_debug.html#debug-svd-path>`__
|
* Configure a custom path to SVD file using `debug_svd_path <http://docs.platformio.org/page/projectconf/section_env_debug.html#debug-svd-path>`__
|
||||||
option
|
option
|
||||||
* Custom project `description <http://docs.platformio.org/en/latest/projectconf/section_platformio.html#description>`_
|
* Custom project `description <http://docs.platformio.org/en/latest/projectconf/section_platformio.html#description>`_
|
||||||
|
2
docs
2
docs
Submodule docs updated: b7168a2b1a...0889b198d3
2
examples
2
examples
Submodule examples updated: e3b80fb1fc...41f3396c58
@ -99,6 +99,7 @@ DEFAULT_ENV_OPTIONS = dict(
|
|||||||
BUILD_DIR=join("$PROJECTBUILD_DIR", "$PIOENV"),
|
BUILD_DIR=join("$PROJECTBUILD_DIR", "$PIOENV"),
|
||||||
BUILDSRC_DIR=join("$BUILD_DIR", "src"),
|
BUILDSRC_DIR=join("$BUILD_DIR", "src"),
|
||||||
BUILDTEST_DIR=join("$BUILD_DIR", "test"),
|
BUILDTEST_DIR=join("$BUILD_DIR", "test"),
|
||||||
|
LIBPATH=["$BUILD_DIR"],
|
||||||
LIBSOURCE_DIRS=[
|
LIBSOURCE_DIRS=[
|
||||||
util.get_projectlib_dir(),
|
util.get_projectlib_dir(),
|
||||||
util.get_projectlibdeps_dir(),
|
util.get_projectlibdeps_dir(),
|
||||||
|
@ -295,11 +295,8 @@ def ProcessTest(env):
|
|||||||
src_filter.append("+<%s%s>" % (env['PIOTEST'], sep))
|
src_filter.append("+<%s%s>" % (env['PIOTEST'], sep))
|
||||||
env.Replace(PIOTEST_SRC_FILTER=src_filter)
|
env.Replace(PIOTEST_SRC_FILTER=src_filter)
|
||||||
|
|
||||||
return env.CollectBuildFiles(
|
return env.CollectBuildFiles("$BUILDTEST_DIR", "$PROJECTTEST_DIR",
|
||||||
"$BUILDTEST_DIR",
|
"$PIOTEST_SRC_FILTER")
|
||||||
"$PROJECTTEST_DIR",
|
|
||||||
"$PIOTEST_SRC_FILTER",
|
|
||||||
duplicate=False)
|
|
||||||
|
|
||||||
|
|
||||||
def GetExtraScripts(env, scope):
|
def GetExtraScripts(env, scope):
|
||||||
|
@ -30,12 +30,11 @@ SRC_HEADER_EXT = ["h", "hpp"]
|
|||||||
SRC_C_EXT = ["c", "cc", "cpp"]
|
SRC_C_EXT = ["c", "cc", "cpp"]
|
||||||
SRC_BUILD_EXT = SRC_C_EXT + ["S", "spp", "SPP", "sx", "s", "asm", "ASM"]
|
SRC_BUILD_EXT = SRC_C_EXT + ["S", "spp", "SPP", "sx", "s", "asm", "ASM"]
|
||||||
SRC_FILTER_DEFAULT = ["+<*>", "-<.git%s>" % sep, "-<svn%s>" % sep]
|
SRC_FILTER_DEFAULT = ["+<*>", "-<.git%s>" % sep, "-<svn%s>" % sep]
|
||||||
|
SRC_FILTER_PATTERNS_RE = re.compile(r"(\+|\-)<([^>]+)>")
|
||||||
|
|
||||||
|
|
||||||
def scons_patched_match_splitext(path, suffixes=None):
|
def scons_patched_match_splitext(path, suffixes=None):
|
||||||
"""
|
"""Patch SCons Builder, append $OBJSUFFIX to the end of each target"""
|
||||||
Patch SCons Builder, append $OBJSUFFIX to the end of each target
|
|
||||||
"""
|
|
||||||
tokens = Util.splitext(path)
|
tokens = Util.splitext(path)
|
||||||
if suffixes and tokens[1] and tokens[1] in suffixes:
|
if suffixes and tokens[1] and tokens[1] in suffixes:
|
||||||
return (path, tokens[1])
|
return (path, tokens[1])
|
||||||
@ -91,16 +90,14 @@ def BuildProgram(env):
|
|||||||
# Handle SRC_BUILD_FLAGS
|
# Handle SRC_BUILD_FLAGS
|
||||||
env.ProcessFlags(env.get("SRC_BUILD_FLAGS"))
|
env.ProcessFlags(env.get("SRC_BUILD_FLAGS"))
|
||||||
|
|
||||||
env.Append(
|
|
||||||
LIBPATH=["$BUILD_DIR"],
|
|
||||||
PIOBUILDFILES=env.CollectBuildFiles(
|
|
||||||
"$BUILDSRC_DIR",
|
|
||||||
"$PROJECTSRC_DIR",
|
|
||||||
src_filter=env.get("SRC_FILTER"),
|
|
||||||
duplicate=False))
|
|
||||||
|
|
||||||
if "__test" in COMMAND_LINE_TARGETS:
|
if "__test" in COMMAND_LINE_TARGETS:
|
||||||
env.Append(PIOBUILDFILES=env.ProcessTest())
|
env.Append(PIOBUILDFILES=env.ProcessTest())
|
||||||
|
else:
|
||||||
|
env.Append(
|
||||||
|
PIOBUILDFILES=env.CollectBuildFiles(
|
||||||
|
"$BUILDSRC_DIR",
|
||||||
|
"$PROJECTSRC_DIR",
|
||||||
|
src_filter=env.get("SRC_FILTER")))
|
||||||
|
|
||||||
if not env['PIOBUILDFILES'] and not COMMAND_LINE_TARGETS:
|
if not env['PIOBUILDFILES'] and not COMMAND_LINE_TARGETS:
|
||||||
sys.stderr.write(
|
sys.stderr.write(
|
||||||
@ -197,8 +194,6 @@ def IsFileWithExt(env, file_, ext): # pylint: disable=W0613
|
|||||||
|
|
||||||
def MatchSourceFiles(env, src_dir, src_filter=None):
|
def MatchSourceFiles(env, src_dir, src_filter=None):
|
||||||
|
|
||||||
SRC_FILTER_PATTERNS_RE = re.compile(r"(\+|\-)<([^>]+)>")
|
|
||||||
|
|
||||||
def _append_build_item(items, item, src_dir):
|
def _append_build_item(items, item, src_dir):
|
||||||
if env.IsFileWithExt(item, SRC_BUILD_EXT + SRC_HEADER_EXT):
|
if env.IsFileWithExt(item, SRC_BUILD_EXT + SRC_HEADER_EXT):
|
||||||
items.add(item.replace(src_dir + sep, ""))
|
items.add(item.replace(src_dir + sep, ""))
|
||||||
|
@ -23,7 +23,7 @@ from platformio.managers.package import PackageManager
|
|||||||
CORE_PACKAGES = {
|
CORE_PACKAGES = {
|
||||||
"contrib-piohome": ">=0.9.5,<2",
|
"contrib-piohome": ">=0.9.5,<2",
|
||||||
"contrib-pysite": ">=0.2.0,<2",
|
"contrib-pysite": ">=0.2.0,<2",
|
||||||
"tool-pioplus": ">=1.3.0,<2",
|
"tool-pioplus": ">=1.3.1,<2",
|
||||||
"tool-unity": "~1.20403.0",
|
"tool-unity": "~1.20403.0",
|
||||||
"tool-scons": "~2.20501.4"
|
"tool-scons": "~2.20501.4"
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user