]> git.sur5r.net Git - freertos/commitdiff
Create a project that builds a subset of the dependencies of the IoT SDK that have...
authorrtel <rtel@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Wed, 19 Jun 2019 18:42:58 +0000 (18:42 +0000)
committerrtel <rtel@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Wed, 19 Jun 2019 18:42:58 +0000 (18:42 +0000)
git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2666 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/.cproject [new file with mode: 0644]
FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/.project [new file with mode: 0644]
FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/.settings/language.settings.xml [new file with mode: 0644]
FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/.settings/org.eclipse.cdt.managedbuilder.core.prefs [new file with mode: 0644]
FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/Configuration_Files/FreeRTOSConfig.h [new file with mode: 0644]
FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/Configuration_Files/iot_config.h [new file with mode: 0644]
FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/Configuration_Files/iot_config_common.h [new file with mode: 0644]
FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/main.c [new file with mode: 0644]

diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/.cproject b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/.cproject
new file mode 100644 (file)
index 0000000..30bb63e
--- /dev/null
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>\r
+<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">\r
+       <storageModule moduleId="org.eclipse.cdt.core.settings">\r
+               <cconfiguration id="cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452">\r
+                       <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452" moduleId="org.eclipse.cdt.core.settings" name="Debug">\r
+                               <externalSettings/>\r
+                               <extensions>\r
+                                       <extension id="org.eclipse.cdt.core.PE" point="org.eclipse.cdt.core.BinaryParser"/>\r
+                                       <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>\r
+                                       <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>\r
+                                       <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>\r
+                               </extensions>\r
+                       </storageModule>\r
+                       <storageModule moduleId="cdtBuildSystem" version="4.0.0">\r
+                               <configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452" name="Debug" optionalBuildProperties="org.eclipse.cdt.docker.launcher.containerbuild.property.selectedvolumes=,org.eclipse.cdt.docker.launcher.containerbuild.property.volumes=" parent="cdt.managedbuild.config.gnu.mingw.exe.debug">\r
+                                       <folderInfo id="cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452." name="/" resourcePath="">\r
+                                               <toolChain id="cdt.managedbuild.toolchain.gnu.mingw.exe.debug.1903348216" name="MinGW GCC" superClass="cdt.managedbuild.toolchain.gnu.mingw.exe.debug">\r
+                                                       <targetPlatform id="cdt.managedbuild.target.gnu.platform.mingw.exe.debug.268983007" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.mingw.exe.debug"/>\r
+                                                       <builder buildPath="${workspace_loc:/RTOSDemo}/Debug" id="cdt.managedbuild.tool.gnu.builder.mingw.base.1647672995" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="CDT Internal Builder" superClass="cdt.managedbuild.tool.gnu.builder.mingw.base"/>\r
+                                                       <tool id="cdt.managedbuild.tool.gnu.assembler.mingw.exe.debug.584296416" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.mingw.exe.debug">\r
+                                                               <inputType id="cdt.managedbuild.tool.gnu.assembler.input.589299609" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>\r
+                                                       </tool>\r
+                                                       <tool id="cdt.managedbuild.tool.gnu.archiver.mingw.base.1943902703" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.mingw.base"/>\r
+                                                       <tool id="cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.debug.542252967" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.debug">\r
+                                                               <option id="gnu.cpp.compiler.mingw.exe.debug.option.optimization.level.1925268657" name="Optimization Level" superClass="gnu.cpp.compiler.mingw.exe.debug.option.optimization.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>\r
+                                                               <option defaultValue="gnu.cpp.compiler.debugging.level.max" id="gnu.cpp.compiler.mingw.exe.debug.option.debugging.level.1472840188" name="Debug Level" superClass="gnu.cpp.compiler.mingw.exe.debug.option.debugging.level" useByScannerDiscovery="false" valueType="enumerated"/>\r
+                                                       </tool>\r
+                                                       <tool id="cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.debug.1633570708" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.debug">\r
+                                                               <option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.mingw.exe.debug.option.optimization.level.748078434" name="Optimization Level" superClass="gnu.c.compiler.mingw.exe.debug.option.optimization.level" useByScannerDiscovery="false" valueType="enumerated"/>\r
+                                                               <option defaultValue="gnu.c.debugging.level.max" id="gnu.c.compiler.mingw.exe.debug.option.debugging.level.447506110" name="Debug Level" superClass="gnu.c.compiler.mingw.exe.debug.option.debugging.level" useByScannerDiscovery="false" valueType="enumerated"/>\r
+                                                               <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="gnu.c.compiler.option.include.paths.1866853825" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" useByScannerDiscovery="false" valueType="includePath">\r
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/FreeRTOS-Plus-IoT-SDK/abstractions/platform/freertos/include}&quot;"/>\r
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/FreeRTOS-Plus-IoT-SDK/abstractions/platform/include}&quot;"/>\r
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/FreeRTOS-Plus-IoT-SDK/c_sdk/standard/common/include}&quot;"/>\r
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/FreeRTOS_Kernel_Source/include}&quot;"/>\r
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/Configuration_Files}&quot;"/>\r
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/FreeRTOS_Kernel_Source/portable/MSVC-MingW}&quot;"/>\r
+                                                               </option>\r
+                                                               <option id="gnu.c.compiler.option.dialect.std.384334774" superClass="gnu.c.compiler.option.dialect.std" useByScannerDiscovery="true" value="gnu.c.compiler.dialect.default" valueType="enumerated"/>\r
+                                                               <option id="gnu.c.compiler.option.warnings.extrawarn.1569496507" superClass="gnu.c.compiler.option.warnings.extrawarn" useByScannerDiscovery="false" value="true" valueType="boolean"/>\r
+                                                               <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1834606887" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>\r
+                                                       </tool>\r
+                                                       <tool id="cdt.managedbuild.tool.gnu.c.linker.mingw.exe.debug.1891140991" name="MinGW C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.mingw.exe.debug">\r
+                                                               <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="gnu.c.link.option.libs.497765000" name="Libraries (-l)" superClass="gnu.c.link.option.libs" useByScannerDiscovery="false" valueType="libs">\r
+                                                                       <listOptionValue builtIn="false" value="winmm"/>\r
+                                                               </option>\r
+                                                               <inputType id="cdt.managedbuild.tool.gnu.c.linker.input.343304874" superClass="cdt.managedbuild.tool.gnu.c.linker.input">\r
+                                                                       <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>\r
+                                                                       <additionalInput kind="additionalinput" paths="$(LIBS)"/>\r
+                                                               </inputType>\r
+                                                       </tool>\r
+                                                       <tool id="cdt.managedbuild.tool.gnu.cpp.linker.mingw.exe.debug.1182698545" name="MinGW C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.mingw.exe.debug"/>\r
+                                               </toolChain>\r
+                                       </folderInfo>\r
+                                       <sourceEntries>\r
+                                               <entry excluding="FreeRTOS+IoT-SDK/standard/common/logging|FreeRTOS+IoT-SDK/standard/common/test" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>\r
+                                       </sourceEntries>\r
+                               </configuration>\r
+                       </storageModule>\r
+                       <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>\r
+               </cconfiguration>\r
+       </storageModule>\r
+       <storageModule moduleId="cdtBuildSystem" version="4.0.0">\r
+               <project id="RTOSDemo.cdt.managedbuild.target.gnu.mingw.exe.838096059" name="Executable" projectType="cdt.managedbuild.target.gnu.mingw.exe"/>\r
+       </storageModule>\r
+       <storageModule moduleId="scannerConfiguration">\r
+               <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>\r
+               <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452;cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452.;cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.debug.1633570708;cdt.managedbuild.tool.gnu.c.compiler.input.1834606887">\r
+                       <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>\r
+               </scannerConfigBuildInfo>\r
+       </storageModule>\r
+       <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>\r
+       <storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/>\r
+       <storageModule moduleId="refreshScope"/>\r
+</cproject>\r
diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/.project b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/.project
new file mode 100644 (file)
index 0000000..f3fa6ed
--- /dev/null
@@ -0,0 +1,159 @@
+<?xml version="1.0" encoding="UTF-8"?>\r
+<projectDescription>\r
+       <name>RTOSDemo</name>\r
+       <comment></comment>\r
+       <projects>\r
+       </projects>\r
+       <buildSpec>\r
+               <buildCommand>\r
+                       <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>\r
+                       <triggers>clean,full,incremental,</triggers>\r
+                       <arguments>\r
+                       </arguments>\r
+               </buildCommand>\r
+               <buildCommand>\r
+                       <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>\r
+                       <triggers>full,incremental,</triggers>\r
+                       <arguments>\r
+                       </arguments>\r
+               </buildCommand>\r
+       </buildSpec>\r
+       <natures>\r
+               <nature>org.eclipse.cdt.core.cnature</nature>\r
+               <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>\r
+               <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>\r
+       </natures>\r
+       <linkedResources>\r
+               <link>\r
+                       <name>FreeRTOS-Plus-IoT-SDK</name>\r
+                       <type>2</type>\r
+                       <locationURI>virtual:/virtual</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS_Kernel_Source</name>\r
+                       <type>2</type>\r
+                       <locationURI>virtual:/virtual</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS-Plus-IoT-SDK/abstractions</name>\r
+                       <type>2</type>\r
+                       <locationURI>virtual:/virtual</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS-Plus-IoT-SDK/c_sdk</name>\r
+                       <type>2</type>\r
+                       <locationURI>virtual:/virtual</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS_Kernel_Source/event_groups.c</name>\r
+                       <type>1</type>\r
+                       <locationURI>FREERTOS_ROOT/FreeRTOS/Source/event_groups.c</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS_Kernel_Source/include</name>\r
+                       <type>2</type>\r
+                       <locationURI>FREERTOS_ROOT/FreeRTOS/Source/include</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS_Kernel_Source/list.c</name>\r
+                       <type>1</type>\r
+                       <locationURI>FREERTOS_ROOT/FreeRTOS/Source/list.c</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS_Kernel_Source/portable</name>\r
+                       <type>2</type>\r
+                       <locationURI>virtual:/virtual</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS_Kernel_Source/queue.c</name>\r
+                       <type>1</type>\r
+                       <locationURI>FREERTOS_ROOT/FreeRTOS/Source/queue.c</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS_Kernel_Source/readme.txt</name>\r
+                       <type>1</type>\r
+                       <locationURI>FREERTOS_ROOT/FreeRTOS/Source/readme.txt</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS_Kernel_Source/stream_buffer.c</name>\r
+                       <type>1</type>\r
+                       <locationURI>FREERTOS_ROOT/FreeRTOS/Source/stream_buffer.c</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS_Kernel_Source/tasks.c</name>\r
+                       <type>1</type>\r
+                       <locationURI>FREERTOS_ROOT/FreeRTOS/Source/tasks.c</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS_Kernel_Source/timers.c</name>\r
+                       <type>1</type>\r
+                       <locationURI>FREERTOS_ROOT/FreeRTOS/Source/timers.c</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS-Plus-IoT-SDK/abstractions/platform</name>\r
+                       <type>2</type>\r
+                       <locationURI>virtual:/virtual</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS-Plus-IoT-SDK/c_sdk/standard</name>\r
+                       <type>2</type>\r
+                       <locationURI>virtual:/virtual</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS_Kernel_Source/portable/MSVC-MingW</name>\r
+                       <type>2</type>\r
+                       <locationURI>FREERTOS_ROOT/FreeRTOS/Source/portable/MSVC-MingW</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS_Kernel_Source/portable/MemMang</name>\r
+                       <type>2</type>\r
+                       <locationURI>virtual:/virtual</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS-Plus-IoT-SDK/abstractions/platform/freertos</name>\r
+                       <type>2</type>\r
+                       <locationURI>virtual:/virtual</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS-Plus-IoT-SDK/abstractions/platform/include</name>\r
+                       <type>2</type>\r
+                       <locationURI>FREERTOS_ROOT/FreeRTOS-Plus/Source/FreeRTOS-Plus-IoT-SDK/abstractions/platform/include</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS-Plus-IoT-SDK/c_sdk/standard/common</name>\r
+                       <type>2</type>\r
+                       <locationURI>virtual:/virtual</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS_Kernel_Source/portable/MemMang/heap_4.c</name>\r
+                       <type>1</type>\r
+                       <locationURI>FREERTOS_ROOT/FreeRTOS/Source/portable/MemMang/heap_4.c</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS-Plus-IoT-SDK/abstractions/platform/freertos/include</name>\r
+                       <type>2</type>\r
+                       <locationURI>FREERTOS_ROOT/FreeRTOS-Plus/Source/FreeRTOS-Plus-IoT-SDK/abstractions/platform/freertos/include</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS-Plus-IoT-SDK/c_sdk/standard/common/include</name>\r
+                       <type>2</type>\r
+                       <locationURI>FREERTOS_ROOT/FreeRTOS-Plus/Source/FreeRTOS-Plus-IoT-SDK/c_sdk/standard/common/include</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS-Plus-IoT-SDK/c_sdk/standard/common/taskpool</name>\r
+                       <type>2</type>\r
+                       <locationURI>virtual:/virtual</locationURI>\r
+               </link>\r
+               <link>\r
+                       <name>FreeRTOS-Plus-IoT-SDK/c_sdk/standard/common/taskpool/iot_taskpool.c</name>\r
+                       <type>1</type>\r
+                       <locationURI>PARENT-5-FREERTOS_ROOT/T/amazon-freertos-master_fr_task_pool/libraries/c_sdk/standard/common/taskpool/iot_taskpool.c</locationURI>\r
+               </link>\r
+       </linkedResources>\r
+       <variableList>\r
+               <variable>\r
+                       <name>FREERTOS_ROOT</name>\r
+                       <value>$%7BPARENT-4-PROJECT_LOC%7D</value>\r
+               </variable>\r
+       </variableList>\r
+</projectDescription>\r
diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/.settings/language.settings.xml b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/.settings/language.settings.xml
new file mode 100644 (file)
index 0000000..a11d160
--- /dev/null
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>\r
+<project>\r
+       <configuration id="cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452" name="Debug">\r
+               <extension point="org.eclipse.cdt.core.LanguageSettingsProvider">\r
+                       <provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>\r
+                       <provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>\r
+                       <provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>\r
+                       <provider class="org.eclipse.cdt.managedbuilder.internal.language.settings.providers.GCCBuiltinSpecsDetectorMinGW" console="false" env-hash="-390853995593138292" id="org.eclipse.cdt.managedbuilder.core.GCCBuiltinSpecsDetectorMinGW" keep-relative-paths="false" name="CDT GCC Built-in Compiler Settings MinGW" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">\r
+                               <language-scope id="org.eclipse.cdt.core.gcc"/>\r
+                               <language-scope id="org.eclipse.cdt.core.g++"/>\r
+                       </provider>\r
+               </extension>\r
+       </configuration>\r
+</project>\r
diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/.settings/org.eclipse.cdt.managedbuilder.core.prefs b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/.settings/org.eclipse.cdt.managedbuilder.core.prefs
new file mode 100644 (file)
index 0000000..b585672
--- /dev/null
@@ -0,0 +1,11 @@
+eclipse.preferences.version=1\r
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452/CPATH/delimiter=;\r
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452/CPATH/operation=remove\r
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452/C_INCLUDE_PATH/delimiter=;\r
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452/C_INCLUDE_PATH/operation=remove\r
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452/append=true\r
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452/appendContributed=true\r
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452/LIBRARY_PATH/delimiter=;\r
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452/LIBRARY_PATH/operation=remove\r
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452/append=true\r
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1831810452/appendContributed=true\r
diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/Configuration_Files/FreeRTOSConfig.h b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/Configuration_Files/FreeRTOSConfig.h
new file mode 100644 (file)
index 0000000..0fc6b57
--- /dev/null
@@ -0,0 +1,130 @@
+/*\r
+ * FreeRTOS Kernel V10.2.1\r
+ * Copyright (C) 2019 Amazon.com, Inc. or its affiliates.  All Rights Reserved.\r
+ *\r
+ * Permission is hereby granted, free of charge, to any person obtaining a copy of\r
+ * this software and associated documentation files (the "Software"), to deal in\r
+ * the Software without restriction, including without limitation the rights to\r
+ * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\r
+ * the Software, and to permit persons to whom the Software is furnished to do so,\r
+ * subject to the following conditions:\r
+ *\r
+ * The above copyright notice and this permission notice shall be included in all\r
+ * copies or substantial portions of the Software.\r
+ *\r
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\r
+ * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\r
+ * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\r
+ * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
+ *\r
+ * http://www.FreeRTOS.org\r
+ * http://aws.amazon.com/freertos\r
+ *\r
+ * 1 tab == 4 spaces!\r
+ */\r
+#ifndef FREERTOS_CONFIG_H\r
+#define FREERTOS_CONFIG_H\r
+\r
+/*-----------------------------------------------------------\r
+ * Application specific definitions.\r
+ *\r
+ * These definitions should be adjusted for your particular hardware and\r
+ * application requirements.\r
+ *\r
+ * THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE\r
+ * FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE.  See\r
+ * http://www.freertos.org/a00110.html\r
+ *----------------------------------------------------------*/\r
+\r
+#define configUSE_PREEMPTION                                   1\r
+#define configUSE_PORT_OPTIMISED_TASK_SELECTION        1\r
+#define configUSE_IDLE_HOOK                                            1\r
+#define configUSE_TICK_HOOK                                            1\r
+#define configUSE_DAEMON_TASK_STARTUP_HOOK             1\r
+#define configTICK_RATE_HZ                                             ( 1000 ) /* In this non-real time simulated environment the tick frequency has to be at least a multiple of the Win32 tick frequency, and therefore very slow. */\r
+#define configMINIMAL_STACK_SIZE                               ( ( unsigned short ) 70 ) /* In this simulated case, the stack only has to hold one small structure as the real stack is part of the win32 thread. */\r
+#define configTOTAL_HEAP_SIZE                                  ( ( size_t ) ( 65 * 1024 ) )\r
+#define configMAX_TASK_NAME_LEN                                        ( 12 )\r
+#define configUSE_TRACE_FACILITY                               1\r
+#define configUSE_16_BIT_TICKS                                 0\r
+#define configIDLE_SHOULD_YIELD                                        1\r
+#define configUSE_MUTEXES                                              1\r
+#define configCHECK_FOR_STACK_OVERFLOW                 0\r
+#define configUSE_RECURSIVE_MUTEXES                            1\r
+#define configQUEUE_REGISTRY_SIZE                              20\r
+#define configUSE_APPLICATION_TASK_TAG                 1\r
+#define configUSE_COUNTING_SEMAPHORES                  1\r
+#define configUSE_ALTERNATIVE_API                              0\r
+#define configUSE_QUEUE_SETS                                   1\r
+#define configUSE_TASK_NOTIFICATIONS                   1\r
+#define configSUPPORT_STATIC_ALLOCATION                        1\r
+\r
+/* Software timer related configuration options.  The maximum possible task\r
+priority is configMAX_PRIORITIES - 1.  The priority of the timer task is\r
+deliberately set higher to ensure it is correctly capped back to\r
+configMAX_PRIORITIES - 1. */\r
+#define configUSE_TIMERS                                               1\r
+#define configTIMER_TASK_PRIORITY                              ( configMAX_PRIORITIES - 1 )\r
+#define configTIMER_QUEUE_LENGTH                               20\r
+#define configTIMER_TASK_STACK_DEPTH                   ( configMINIMAL_STACK_SIZE * 2 )\r
+\r
+#define configMAX_PRIORITIES                                   ( 7 )\r
+\r
+/* Run time stats gathering configuration options. */\r
+#define configGENERATE_RUN_TIME_STATS                  0\r
+\r
+/* Co-routine related configuration options. */\r
+#define configUSE_CO_ROUTINES                                  0\r
+#define configMAX_CO_ROUTINE_PRIORITIES                        ( 2 )\r
+\r
+/* This demo can use of one or more example stats formatting functions.  These\r
+format the raw data provided by the uxTaskGetSystemState() function in to human\r
+readable ASCII form.  See the notes in the implementation of vTaskList() within\r
+FreeRTOS/Source/tasks.c for limitations. */\r
+#define configUSE_STATS_FORMATTING_FUNCTIONS   0\r
+\r
+/* Enables the test whereby a stack larger than the total heap size is\r
+requested. */\r
+#define configSTACK_DEPTH_TYPE uint32_t\r
+\r
+/* Set the following definitions to 1 to include the API function, or zero\r
+to exclude the API function.  In most cases the linker will remove unused\r
+functions anyway. */\r
+#define INCLUDE_vTaskPrioritySet                               1\r
+#define INCLUDE_uxTaskPriorityGet                              1\r
+#define INCLUDE_vTaskDelete                                            1\r
+#define INCLUDE_vTaskCleanUpResources                  0\r
+#define INCLUDE_vTaskSuspend                                   1\r
+#define INCLUDE_vTaskDelayUntil                                        1\r
+#define INCLUDE_vTaskDelay                                             1\r
+#define INCLUDE_uxTaskGetStackHighWaterMark            1\r
+#define INCLUDE_uxTaskGetStackHighWaterMark2   1\r
+#define INCLUDE_xTaskGetSchedulerState                 1\r
+#define INCLUDE_xTimerGetTimerDaemonTaskHandle 1\r
+#define INCLUDE_xTaskGetIdleTaskHandle                 1\r
+#define INCLUDE_xTaskGetHandle                                 1\r
+#define INCLUDE_eTaskGetState                                  1\r
+#define INCLUDE_xSemaphoreGetMutexHolder               1\r
+#define INCLUDE_xTimerPendFunctionCall                 1\r
+#define INCLUDE_xTaskAbortDelay                                        1\r
+\r
+#define configINCLUDE_MESSAGE_BUFFER_AMP_DEMO  0\r
+#if ( configINCLUDE_MESSAGE_BUFFER_AMP_DEMO == 1 )\r
+       extern void vGenerateCoreBInterrupt( void * xUpdatedMessageBuffer );\r
+       #define sbSEND_COMPLETED( pxStreamBuffer ) vGenerateCoreBInterrupt( pxStreamBuffer )\r
+#endif /* configINCLUDE_MESSAGE_BUFFER_AMP_DEMO */\r
+\r
+extern void vAssertCalled( unsigned long ulLine, const char * const pcFileName );\r
+\r
+/* It is best practice to define configASSERT() while developing.  configASSERT()\r
+uses the same semantics as the standard C assert() macro.  Don't define\r
+configASSERT() when performing code coverage tests though, as it is not\r
+intended to asserts() to fail, some some code is intended not to run if no\r
+errors are present. */\r
+#define configASSERT( x ) if( ( x ) == 0 ) vAssertCalled( __LINE__, __FILE__ )\r
+\r
+#define configUSE_MALLOC_FAILED_HOOK                   1\r
+\r
+#endif /* FREERTOS_CONFIG_H */\r
diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/Configuration_Files/iot_config.h b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/Configuration_Files/iot_config.h
new file mode 100644 (file)
index 0000000..3038f0b
--- /dev/null
@@ -0,0 +1,59 @@
+/*\r
+ * Copyright (C) 2018 Amazon.com, Inc. or its affiliates.  All Rights Reserved.\r
+ *\r
+ * Permission is hereby granted, free of charge, to any person obtaining a copy of\r
+ * this software and associated documentation files (the "Software"), to deal in\r
+ * the Software without restriction, including without limitation the rights to\r
+ * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\r
+ * the Software, and to permit persons to whom the Software is furnished to do so,\r
+ * subject to the following conditions:\r
+ *\r
+ * The above copyright notice and this permission notice shall be included in all\r
+ * copies or substantial portions of the Software.\r
+ *\r
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\r
+ * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\r
+ * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\r
+ * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
+ */\r
+\r
+/* This file contains configuration settings for the demos. */\r
+\r
+#ifndef IOT_CONFIG_H_\r
+#define IOT_CONFIG_H_\r
+\r
+/* How long the MQTT library will wait for PINGRESPs or PUBACKs. */\r
+#define IOT_MQTT_RESPONSE_WAIT_MS            ( 10000 )\r
+\r
+/* MQTT demo configuration. */\r
+#define IOT_DEMO_MQTT_PUBLISH_BURST_COUNT    ( 10 )\r
+#define IOT_DEMO_MQTT_PUBLISH_BURST_SIZE     ( 2 )\r
+\r
+/* Shadow demo configuration. The demo publishes periodic Shadow updates and responds\r
+ * to changing Shadows. */\r
+#define AWS_IOT_DEMO_SHADOW_UPDATE_COUNT        ( 20 )   /* Number of updates to publish. */\r
+#define AWS_IOT_DEMO_SHADOW_UPDATE_PERIOD_MS    ( 3000 ) /* Period of Shadow updates. */\r
+\r
+/* Library logging configuration. IOT_LOG_LEVEL_GLOBAL provides a global log\r
+ * level for all libraries; the library-specific settings override the global\r
+ * setting. If both the library-specific and global settings are undefined,\r
+ * no logs will be printed. */\r
+#define IOT_LOG_LEVEL_GLOBAL                    IOT_LOG_INFO\r
+#define IOT_LOG_LEVEL_DEMO                      IOT_LOG_INFO\r
+#define IOT_LOG_LEVEL_PLATFORM                  IOT_LOG_NONE\r
+#define IOT_LOG_LEVEL_NETWORK                   IOT_LOG_INFO\r
+#define IOT_LOG_LEVEL_TASKPOOL                  IOT_LOG_NONE\r
+#define IOT_LOG_LEVEL_MQTT                      IOT_LOG_INFO\r
+#define AWS_IOT_LOG_LEVEL_SHADOW                IOT_LOG_INFO\r
+#define AWS_IOT_LOG_LEVEL_DEFENDER              IOT_LOG_INFO\r
+\r
+/* Platform thread stack size and priority. */\r
+#define IOT_THREAD_DEFAULT_STACK_SIZE    2048\r
+#define IOT_THREAD_DEFAULT_PRIORITY      5\r
+\r
+/* Include the common configuration file for FreeRTOS. */\r
+#include "iot_config_common.h"\r
+\r
+#endif /* ifndef IOT_CONFIG_H_ */\r
diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/Configuration_Files/iot_config_common.h b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/Configuration_Files/iot_config_common.h
new file mode 100644 (file)
index 0000000..ab85d95
--- /dev/null
@@ -0,0 +1,203 @@
+/*\r
+ * Amazon FreeRTOS V201906.00 Major\r
+ * Copyright (C) 2019 Amazon.com, Inc. or its affiliates.  All Rights Reserved.\r
+ *\r
+ * Permission is hereby granted, free of charge, to any person obtaining a copy of\r
+ * this software and associated documentation files (the "Software"), to deal in\r
+ * the Software without restriction, including without limitation the rights to\r
+ * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\r
+ * the Software, and to permit persons to whom the Software is furnished to do so,\r
+ * subject to the following conditions:\r
+ *\r
+ * The above copyright notice and this permission notice shall be included in all\r
+ * copies or substantial portions of the Software.\r
+ *\r
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\r
+ * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\r
+ * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\r
+ * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
+ *\r
+ * http://aws.amazon.com/freertos\r
+ * http://www.FreeRTOS.org\r
+ */\r
+\r
+/* This file contains default configuration settings for the demos on FreeRTOS. */\r
+\r
+#ifndef IOT_CONFIG_COMMON_H_\r
+#define IOT_CONFIG_COMMON_H_\r
+\r
+/* FreeRTOS include. */\r
+#include "FreeRTOS.h"\r
+\r
+/* Use platform types on FreeRTOS. */\r
+#include "platform/iot_platform_types_afr.h"\r
+\r
+/* Used to get the cloud broker endpoint for FreeRTOS. */\r
+//_RB_#include "aws_clientcredential.h"\r
+\r
+/* SDK version. */\r
+#define IOT_SDK_VERSION    "4.0.0"\r
+\r
+/* This config file is for the demos; disable any test code. */\r
+#define IOT_BUILD_TESTS    ( 0 )\r
+\r
+/* Logging puts function. */\r
+#define IotLogging_Puts( str )                 configPRINTF( ( "%s\r\n", str ) )\r
+\r
+/* Enable asserts in libraries by default. */\r
+#ifndef IOT_METRICS_ENABLE_ASSERTS\r
+    #define IOT_METRICS_ENABLE_ASSERTS         ( 1 )\r
+#endif\r
+#ifndef IOT_CONTAINERS_ENABLE_ASSERTS\r
+    #define IOT_CONTAINERS_ENABLE_ASSERTS      ( 1 )\r
+#endif\r
+#ifndef IOT_TASKPOOL_ENABLE_ASSERTS\r
+    #define IOT_TASKPOOL_ENABLE_ASSERTS        ( 1 )\r
+#endif\r
+#ifndef IOT_MQTT_ENABLE_ASSERTS\r
+    #define IOT_MQTT_ENABLE_ASSERTS            ( 1 )\r
+#endif\r
+#ifndef AWS_IOT_SHADOW_ENABLE_ASSERTS\r
+    #define AWS_IOT_SHADOW_ENABLE_ASSERTS      ( 1 )\r
+#endif\r
+#ifndef AWS_IOT_DEFENDER_ENABLE_ASSERTS\r
+    #define AWS_IOT_DEFENDER_ENABLE_ASSERTS    ( 1 )\r
+#endif\r
+#ifndef IOT_BLE_ENABLE_ASSERTS\r
+    #define IOT_BLE_ENABLE_ASSERTS             ( 1 )\r
+#endif\r
+\r
+/* Assert functions. */\r
+#define IotMetrics_Assert( expression )        configASSERT( expression )\r
+#define IotContainers_Assert( expression )     configASSERT( expression )\r
+#define IotTaskPool_Assert( expression )       configASSERT( expression )\r
+#define IotMqtt_Assert( expression )           configASSERT( expression )\r
+#define AwsIotShadow_Assert( expression )      configASSERT( expression )\r
+#define AwsIotDefender_Assert( expression )    configASSERT( expression )\r
+#define IotBle_Assert( expression )            configASSERT( expression )\r
+\r
+/* Control the usage of dynamic memory allocation. */\r
+#ifndef IOT_STATIC_MEMORY_ONLY\r
+    #define IOT_STATIC_MEMORY_ONLY    ( 0 )\r
+#endif\r
+\r
+/* Memory allocation configuration. Note that these functions will not be affected\r
+ * by IOT_STATIC_MEMORY_ONLY. */\r
+#define IotNetwork_Malloc    pvPortMalloc\r
+#define IotNetwork_Free      vPortFree\r
+#define IotThreads_Malloc    pvPortMalloc\r
+#define IotThreads_Free      vPortFree\r
+#define IotLogging_Malloc    pvPortMalloc\r
+#define IotLogging_Free      vPortFree\r
+#define IotBle_Malloc        pvPortMalloc\r
+#define IotBle_Free          vPortFree\r
+/* #define IotLogging_StaticBufferSize */\r
+\r
+/* Memory allocation function configuration for the MQTT and Defender library.\r
+ * These libraries will be affected by IOT_STATIC_MEMORY_ONLY. */\r
+#if IOT_STATIC_MEMORY_ONLY == 0\r
+    #define IotMetrics_MallocTcpConnection       pvPortMalloc\r
+    #define IotMetrics_FreeTcpConnection         vPortFree\r
+    #define IotMetrics_MallocIpAddress           pvPortMalloc\r
+    #define IotMetrics_FreeIpAddress             vPortFree\r
+\r
+    #define IotTaskPool_MallocTaskPool           pvPortMalloc\r
+    #define IotTaskPool_FreeTaskPool             vPortFree\r
+    #define IotTaskPool_MallocJob                pvPortMalloc\r
+    #define IotTaskPool_FreeJob                  vPortFree\r
+    #define IotTaskPool_MallocTimerEvent         pvPortMalloc\r
+    #define IotTaskPool_FreeTimerEvent           vPortFree\r
+\r
+    #define IotMqtt_MallocConnection             pvPortMalloc\r
+    #define IotMqtt_FreeConnection               vPortFree\r
+    #define IotMqtt_MallocMessage                pvPortMalloc\r
+    #define IotMqtt_FreeMessage                  vPortFree\r
+    #define IotMqtt_MallocOperation              pvPortMalloc\r
+    #define IotMqtt_FreeOperation                vPortFree\r
+    #define IotMqtt_MallocSubscription           pvPortMalloc\r
+    #define IotMqtt_FreeSubscription             vPortFree\r
+\r
+    #define IotSerializer_MallocCborEncoder      pvPortMalloc\r
+    #define IotSerializer_FreeCborEncoder        vPortFree\r
+    #define IotSerializer_MallocCborParser       pvPortMalloc\r
+    #define IotSerializer_FreeCborParser         vPortFree\r
+    #define IotSerializer_MallocCborValue        pvPortMalloc\r
+    #define IotSerializer_FreeCborValue          vPortFree\r
+    #define IotSerializer_MallocDecoderObject    pvPortMalloc\r
+    #define IotSerializer_FreeDecoderObject      vPortFree\r
+\r
+    #define AwsIotShadow_MallocOperation         pvPortMalloc\r
+    #define AwsIotShadow_FreeOperation           vPortFree\r
+    #define AwsIotShadow_MallocString            pvPortMalloc\r
+    #define AwsIotShadow_FreeString              vPortFree\r
+    #define AwsIotShadow_MallocSubscription      pvPortMalloc\r
+    #define AwsIotShadow_FreeSubscription        vPortFree\r
+\r
+    #define AwsIotDefender_MallocReport          pvPortMalloc\r
+    #define AwsIotDefender_FreeReport            vPortFree\r
+    #define AwsIotDefender_MallocTopic           pvPortMalloc\r
+    #define AwsIotDefender_FreeTopic             vPortFree\r
+#endif /* if IOT_STATIC_MEMORY_ONLY == 0 */\r
+\r
+/* Default platform thread stack size and priority. */\r
+#ifndef IOT_THREAD_DEFAULT_STACK_SIZE\r
+    #define IOT_THREAD_DEFAULT_STACK_SIZE    2048\r
+#endif\r
+#ifndef IOT_THREAD_DEFAULT_PRIORITY\r
+    #define IOT_THREAD_DEFAULT_PRIORITY      tskIDLE_PRIORITY\r
+#endif\r
+\r
+/* Platform network configuration. */\r
+#ifndef IOT_NETWORK_RECEIVE_TASK_PRIORITY\r
+    #define IOT_NETWORK_RECEIVE_TASK_PRIORITY      ( tskIDLE_PRIORITY + 1 )\r
+#endif\r
+#ifndef IOT_NETWORK_RECEIVE_TASK_STACK_SIZE\r
+    #define IOT_NETWORK_RECEIVE_TASK_STACK_SIZE    IOT_THREAD_DEFAULT_STACK_SIZE\r
+#endif\r
+\r
+/* Platform and SDK name for AWS IoT MQTT metrics. Only used when\r
+ * AWS_IOT_MQTT_ENABLE_METRICS is 1. */\r
+#define IOT_SDK_NAME             "AmazonFreeRTOS"\r
+#ifdef configPLATFORM_NAME\r
+    #define IOT_PLATFORM_NAME    configPLATFORM_NAME\r
+#else\r
+    #define IOT_PLATFORM_NAME    "Unknown"\r
+#endif\r
+\r
+/* Cloud endpoint to which the device connects to. */\r
+#define IOT_CLOUD_ENDPOINT                    clientcredentialMQTT_BROKER_ENDPOINT\r
+\r
+/**\r
+ * @brief Unique identifier used to recognize a device by the cloud.\r
+ * This could be SHA-256 of the device certificate.\r
+ */\r
+extern const char *getDeviceIdentifier( void );\r
+#define IOT_DEVICE_IDENTIFIER                getDeviceIdentifier()\r
+\r
+/**\r
+ * @brief Metrics emitted by the device.\r
+ */\r
+extern const char *getDeviceMetrics( void );\r
+#define AWS_IOT_METRICS_USERNAME     getDeviceMetrics()\r
+\r
+/**\r
+ * @brief Length of the metrics emitted by device.\r
+ */\r
+extern uint16_t getDeviceMetricsLength( void );\r
+#define AWS_IOT_METRICS_USERNAME_LENGTH getDeviceMetricsLength()\r
+\r
+/* Define the data type of metrics connection id as same as Socket_t in aws_secure_socket.h */\r
+#define IotMetricsConnectionId_t            void *\r
+\r
+/* Configuration for defender demo: set format to CBOR. */\r
+#define AWS_IOT_DEFENDER_FORMAT             AWS_IOT_DEFENDER_FORMAT_CBOR\r
+\r
+/* Configuration for defender demo: use long tag for readable output. Please use short tag for the real application. */\r
+#define AWS_IOT_DEFENDER_USE_LONG_TAG       ( 1 )\r
+\r
+/* Demo runner configuration. */\r
+//_RB_#include "aws_demo_config.h"\r
+\r
+#endif /* ifndef IOT_CONFIG_COMMON_H_ */\r
diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/main.c b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_IoT_SDK/TaskPool/main.c
new file mode 100644 (file)
index 0000000..bf6e538
--- /dev/null
@@ -0,0 +1,156 @@
+/* Kernel includes. */\r
+#include "FreeRTOS.h"\r
+#include "task.h"\r
+\r
+void vApplicationGetIdleTaskMemory( StaticTask_t **ppxIdleTaskTCBBuffer, StackType_t **ppxIdleTaskStackBuffer, uint32_t *pulIdleTaskStackSize );\r
+void vApplicationGetTimerTaskMemory( StaticTask_t **ppxTimerTaskTCBBuffer, StackType_t **ppxTimerTaskStackBuffer, uint32_t *pulTimerTaskStackSize );\r
+\r
+\r
+int main( void )\r
+{\r
+       return 0;\r
+}\r
+\r
+/*-----------------------------------------------------------*/\r
+\r
+void vApplicationMallocFailedHook( void )\r
+{\r
+       /* vApplicationMallocFailedHook() will only be called if\r
+       configUSE_MALLOC_FAILED_HOOK is set to 1 in FreeRTOSConfig.h.  It is a hook\r
+       function that will get called if a call to pvPortMalloc() fails.\r
+       pvPortMalloc() is called internally by the kernel whenever a task, queue,\r
+       timer or semaphore is created.  It is also called by various parts of the\r
+       demo application.  If heap_1.c, heap_2.c or heap_4.c is being used, then the\r
+       size of the     heap available to pvPortMalloc() is defined by\r
+       configTOTAL_HEAP_SIZE in FreeRTOSConfig.h, and the xPortGetFreeHeapSize()\r
+       API function can be used to query the size of free heap space that remains\r
+       (although it does not provide information on how the remaining heap might be\r
+       fragmented).  See http://www.freertos.org/a00111.html for more\r
+       information. */\r
+       vAssertCalled( __LINE__, __FILE__ );\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+void vApplicationIdleHook( void )\r
+{\r
+       /* vApplicationIdleHook() will only be called if configUSE_IDLE_HOOK is set\r
+       to 1 in FreeRTOSConfig.h.  It will be called on each iteration of the idle\r
+       task.  It is essential that code added to this hook function never attempts\r
+       to block in any way (for example, call xQueueReceive() with a block time\r
+       specified, or call vTaskDelay()).  If application tasks make use of the\r
+       vTaskDelete() API function to delete themselves then it is also important\r
+       that vApplicationIdleHook() is permitted to return to its calling function,\r
+       because it is the responsibility of the idle task to clean up memory\r
+       allocated by the kernel to any task that has since deleted itself. */\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+void vApplicationStackOverflowHook( TaskHandle_t pxTask, char *pcTaskName )\r
+{\r
+       ( void ) pcTaskName;\r
+       ( void ) pxTask;\r
+\r
+       /* Run time stack overflow checking is performed if\r
+       configCHECK_FOR_STACK_OVERFLOW is defined to 1 or 2.  This hook\r
+       function is called if a stack overflow is detected.  This function is\r
+       provided as an example only as stack overflow checking does not function\r
+       when running the FreeRTOS Windows port. */\r
+       vAssertCalled( __LINE__, __FILE__ );\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+void vApplicationTickHook( void )\r
+{\r
+       /* This function will be called by each tick interrupt if\r
+       configUSE_TICK_HOOK is set to 1 in FreeRTOSConfig.h.  User code can be\r
+       added here, but the tick hook is called from an interrupt context, so\r
+       code must not attempt to block, and only the interrupt safe FreeRTOS API\r
+       functions can be used (those that end in FromISR()). */\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+void vApplicationDaemonTaskStartupHook( void )\r
+{\r
+       /* This function will be called once only, when the daemon task starts to\r
+       execute (sometimes called the timer task).  This is useful if the\r
+       application includes initialisation code that would benefit from executing\r
+       after the scheduler has been started. */\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+void vAssertCalled( unsigned long ulLine, const char * const pcFileName )\r
+{\r
+volatile uint32_t ulSetToNonZeroInDebuggerToContinue = 0;\r
+\r
+       /* Called if an assertion passed to configASSERT() fails.  See\r
+       http://www.freertos.org/a00110.html#configASSERT for more information. */\r
+\r
+       /* Parameters are not used. */\r
+       ( void ) ulLine;\r
+       ( void ) pcFileName;\r
+\r
+\r
+       taskENTER_CRITICAL();\r
+       {\r
+               /* You can step out of this function to debug the assertion by using\r
+               the debugger to set ulSetToNonZeroInDebuggerToContinue to a non-zero\r
+               value. */\r
+               while( ulSetToNonZeroInDebuggerToContinue == 0 )\r
+               {\r
+                       __asm volatile( "NOP" );\r
+                       __asm volatile( "NOP" );\r
+               }\r
+       }\r
+       taskEXIT_CRITICAL();\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+/* configUSE_STATIC_ALLOCATION is set to 1, so the application must provide an\r
+implementation of vApplicationGetIdleTaskMemory() to provide the memory that is\r
+used by the Idle task. */\r
+void vApplicationGetIdleTaskMemory( StaticTask_t **ppxIdleTaskTCBBuffer, StackType_t **ppxIdleTaskStackBuffer, uint32_t *pulIdleTaskStackSize )\r
+{\r
+/* If the buffers to be provided to the Idle task are declared inside this\r
+function then they must be declared static - otherwise they will be allocated on\r
+the stack and so not exists after this function exits. */\r
+static StaticTask_t xIdleTaskTCB;\r
+static StackType_t uxIdleTaskStack[ configMINIMAL_STACK_SIZE ];\r
+\r
+       /* Pass out a pointer to the StaticTask_t structure in which the Idle task's\r
+       state will be stored. */\r
+       *ppxIdleTaskTCBBuffer = &xIdleTaskTCB;\r
+\r
+       /* Pass out the array that will be used as the Idle task's stack. */\r
+       *ppxIdleTaskStackBuffer = uxIdleTaskStack;\r
+\r
+       /* Pass out the size of the array pointed to by *ppxIdleTaskStackBuffer.\r
+       Note that, as the array is necessarily of type StackType_t,\r
+       configMINIMAL_STACK_SIZE is specified in words, not bytes. */\r
+       *pulIdleTaskStackSize = configMINIMAL_STACK_SIZE;\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+/* configUSE_STATIC_ALLOCATION and configUSE_TIMERS are both set to 1, so the\r
+application must provide an implementation of vApplicationGetTimerTaskMemory()\r
+to provide the memory that is used by the Timer service task. */\r
+void vApplicationGetTimerTaskMemory( StaticTask_t **ppxTimerTaskTCBBuffer, StackType_t **ppxTimerTaskStackBuffer, uint32_t *pulTimerTaskStackSize )\r
+{\r
+/* If the buffers to be provided to the Timer task are declared inside this\r
+function then they must be declared static - otherwise they will be allocated on\r
+the stack and so not exists after this function exits. */\r
+static StaticTask_t xTimerTaskTCB;\r
+static StackType_t uxTimerTaskStack[ configTIMER_TASK_STACK_DEPTH ];\r
+\r
+       /* Pass out a pointer to the StaticTask_t structure in which the Timer\r
+       task's state will be stored. */\r
+       *ppxTimerTaskTCBBuffer = &xTimerTaskTCB;\r
+\r
+       /* Pass out the array that will be used as the Timer task's stack. */\r
+       *ppxTimerTaskStackBuffer = uxTimerTaskStack;\r
+\r
+       /* Pass out the size of the array pointed to by *ppxTimerTaskStackBuffer.\r
+       Note that, as the array is necessarily of type StackType_t,\r
+       configMINIMAL_STACK_SIZE is specified in words, not bytes. */\r
+       *pulTimerTaskStackSize = configTIMER_TASK_STACK_DEPTH;\r
+}\r
+\r