README and make file updates

pull/2/head
kaleb-himes 2015-01-09 20:20:46 -07:00
parent c20b82925b
commit 191b9425e0
7 changed files with 113 additions and 359 deletions

View File

@ -1,56 +0,0 @@
Instructions for building wolfSSL application for TI-RTOS
---------------------------------------------------------
Installing the software
-----------------------
1. Install the NDK product (http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/tmp/ndk_2_24_00_05_eng.zip) in C:/ti
2. Open CCS. A prompt opens asking to install discovered product. Select the ndk product and click finish. Restart if prompted.
3. In CCS, open View -> CCS App Center. Search "ti-rtos". Select "TI-RTOS for TivaC" from the results and click Install Software. Follow the instructions.
Building wolfSSL libraries for TI-RTOS
-------------------------------------
1. Replace tirtos.mak in C:\ti\tirtos_tivac_2_00_02_36 with the attached tirtos.mak. Open the tirtos.mak and set WOLFSSL_INSTALLATION_DIR variable to the
correct wolfSSL installation path.
2. Open a command prompt. CD into C:\ti\tirtos_tivac_2_00_02_36.
3. Run the make command to build wolfSSL libaries.
..\xdctools_3_30_01_25_core\gmake.exe -f tirtos.mak wolfssl
4. The libraries should be build without any errors.
Building wolfSSL application (TCP Echo Server application) for TI-RTOS
---------------------------------------------------------------------
1. In CCS, open View -> Resource Explorer.
2. Browse to Tiva TM4C1294NCPDT under TI-RTOS for TivaC.
3. Select TCP Echo examples under Driver Examples -> EK-TM4C1294 -> TI Target Examples -> Ethernet Examples.
4. From the right panel. Click on Import the example project into CCS.
5. Now, before building the example. We need to do a bunch of steps to set it up for wolfSSL.
a. In the imported project. Replace the tcpEcho.c and tcpEcho.cfg with attached tcpEcho.c and tcpEcho.cfg.
b. Right click on the imported project. Select Properties.
i. Under General -> RTSC. Select NDK and 2.24.0.05-eng.
ii. Under Build -> ARM Compiler -> Include Options. Add the following include paths
"${NDK_INSTALL_DIR}/packages/ti/ndk/inc"
"${NDK_INSTALL_DIR}/packages/ti/ndk/inc/bsd"
"C:/wolfssl" /* Change this if the wolfSSL install path is different */
iii. Under Build -> ARM Compiler -> Include Options -> Advanced Options -> Predefined Symbols. Add TIRTOS to the defines.
iv. Under Build -> XDCtools -> Package Repositories. Add following repositories to xdcpath and move them up to the top of the existing repository paths.
"${NDK_INSTALL_DIR}/packages"
"${NDK_INSTALL_DIR}/packages/ti/ndk/inc"
"C:/wolfssl/tirtos/packages" /* Change this if the wolfSSL install path is different */
c. Click OK.
6. Follow the steps 2, 3 and 4 in TI Resource Explorer to Build, Debugger Configuration and Debug.
7. In the Debugger View, run the application. The IP of the server will be printed on the console.
8. Run the echoclient application of wolfSSL SSL tutorial. Connect to the server using the IP.
9. Test by sending text which should be echoed back.
Running wolfSSL wolfCrypt benchmark and test application.
--------------------------------------------------------
The wolfCrypt benchmark and test applications are built along with the wolfSSL libraries. To run them follow the steps.
1. After running the TCP Echo Server application, in the Debugger View, open Run -> Load Program. Browse to the Benchmark application
(C:\wolfssl\tirtos\packages\ti\net\wolfssl\tests\wolfcrypt\benchmark). Select benchmark.xem4f and Click Open and Click OK to load the application.
2. Test by running the application.
3. Repeat the steps 1 and 2 for Test application (C:\wolfssl\tirtos\packages\ti\net\wolfssl\tests\wolfcrypt\test).

View File

@ -0,0 +1,40 @@
Disclaimer
---------------------------------------------------------
These have currently been tested in windows CCS only. Once testing on the linux distribution for CCS is complete this README will be updated.
Setting up the file system
---------------------------------------------------------
ensure that cyassl is on the C:/ drive and remove any version numbers on the file. For example if your cyassl directory is named "cyassl_3_1_0 or cyassl-3.1.0" rename it to "cyassl". You should now have C:/cyassl directory.
Clone this repository using "github for windows". The projects have been made portable so you can run them straight from the github clone repo or you can copy and paste the "tirtos_ccs_examples" folder out of the repo to wherever and
they should still debug just fine once imported into your workspace (see end of this README).
Instructions for building CyaSSL application for TI-RTOS
---------------------------------------------------------
Installing the software
-----------------------
1. Install the NDK product ndk 2.24.00.05 in C:/ti
2. Open CCS. A prompt opens asking to install discovered product. Select the ndk product and click finish. Restart if prompted.
3. In CCS, open View -> CCS App Center. Search "ti-rtos". Select "TI-RTOS for TivaC" from the results and click Install Software. Follow the instructions.
Building CyaSSL libraries for TI-RTOS
-------------------------------------
1. Replace tirtos.mak in C:\ti\tirtos_tivac_2_00_02_36 with the tirtos.mak from <cyassl_root>/tirtos/tirtos_ccs_examples. Ensure you have cyassl in the proper location (should be C:/cyassl).
2. Open a command prompt. CD into C:\ti\tirtos_tivac_2_00_02_36.
3. Run the make command to build CyaSSL libaries.
..\xdctools_3_30_01_25_core\gmake.exe -f tirtos.mak cyassl
Running CyaSSL CTaoCrypt benchmark and test application.
--------------------------------------------------------
1. After running the TCP Echo Server application, in the Debugger View, open Run -> Load Program. Browse to the Benchmark application (C:\cyassl\tirtos\packages\ti\net\cyassl\tests\ctaocrypt\benchmark). Select benchmark.xem4f and Click Open and Click OK to load the application.
2. Test by running the application.
3. Repeat the steps 1 and 2 for Test application (C:\cyassl\tirtos\packages\ti\net\cyassl\tests\ctaocrypt\test).
4. The example cyassl_tirtos_benchmark in this repository has all the correct optimization settings and will re-build the relevant c files at compile time for optimal results and additional benchmarks for camellia, rabbit, chacha, poly1305, sha512, and ECC.
Import a project into your workspace.
--------------------------------------------------------
In CCS go to the Project tab. Click "Import CCS Projects...".
Click "Browse..." and navigate to tirtos_ccs_examples/ file and click "OK". In the "Discovered projects" window you will see all CCS projects. Check the ones you would like to import into the workspace, and check the box at the bottom labled "Copy projects into workspace", now click "Finish". Build and debug the desired projects.

View File

@ -1,40 +1,56 @@
Disclaimer Instructions for building wolfSSL application for TI-RTOS
---------------------------------------------------------
These have currently been tested in windows CCS only. Once testing on the linux distribution for CCS is complete this README will be updated.
Setting up the file system
---------------------------------------------------------
ensure that cyassl is on the C:/ drive and remove any version numbers on the file. For example if your cyassl directory is named "cyassl_3_1_0 or cyassl-3.1.0" rename it to "cyassl". You should now have C:/cyassl directory.
Clone this repository using "github for windows". The projects have been made portable so you can run them straight from the github clone repo or you can copy and paste the "tirtos_ccs_examples" folder out of the repo to wherever and
they should still debug just fine once imported into your workspace (see end of this README).
Instructions for building CyaSSL application for TI-RTOS
--------------------------------------------------------- ---------------------------------------------------------
Installing the software Installing the software
----------------------- -----------------------
1. Install the NDK product ndk 2.24.00.05 in C:/ti 1. Install the NDK product (http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/tmp/ndk_2_24_00_05_eng.zip) in C:/ti
2. Open CCS. A prompt opens asking to install discovered product. Select the ndk product and click finish. Restart if prompted. 2. Open CCS. A prompt opens asking to install discovered product. Select the ndk product and click finish. Restart if prompted.
3. In CCS, open View -> CCS App Center. Search "ti-rtos". Select "TI-RTOS for TivaC" from the results and click Install Software. Follow the instructions. 3. In CCS, open View -> CCS App Center. Search "ti-rtos". Select "TI-RTOS for TivaC" from the results and click Install Software. Follow the instructions.
Building CyaSSL libraries for TI-RTOS Building wolfSSL libraries for TI-RTOS
------------------------------------- -------------------------------------
1. Replace tirtos.mak in C:\ti\tirtos_tivac_2_00_02_36 with the tirtos.mak from <cyassl_root>/tirtos/tirtos_ccs_examples. Ensure you have cyassl in the proper location (should be C:/cyassl). 1. Replace tirtos.mak in C:\ti\tirtos_tivac_2_00_02_36 with the attached tirtos.mak. Open the tirtos.mak and set WOLFSSL_INSTALLATION_DIR variable to the
correct wolfSSL installation path.
2. Open a command prompt. CD into C:\ti\tirtos_tivac_2_00_02_36. 2. Open a command prompt. CD into C:\ti\tirtos_tivac_2_00_02_36.
3. Run the make command to build CyaSSL libaries. 3. Run the make command to build wolfSSL libaries.
..\xdctools_3_30_01_25_core\gmake.exe -f tirtos.mak cyassl ..\xdctools_3_30_01_25_core\gmake.exe -f tirtos.mak wolfssl
Running CyaSSL CTaoCrypt benchmark and test application. 4. The libraries should be build without any errors.
Building wolfSSL application (TCP Echo Server application) for TI-RTOS
---------------------------------------------------------------------
1. In CCS, open View -> Resource Explorer.
2. Browse to Tiva TM4C1294NCPDT under TI-RTOS for TivaC.
3. Select TCP Echo examples under Driver Examples -> EK-TM4C1294 -> TI Target Examples -> Ethernet Examples.
4. From the right panel. Click on Import the example project into CCS.
5. Now, before building the example. We need to do a bunch of steps to set it up for wolfSSL.
a. In the imported project. Replace the tcpEcho.c and tcpEcho.cfg with attached tcpEcho.c and tcpEcho.cfg.
b. Right click on the imported project. Select Properties.
i. Under General -> RTSC. Select NDK and 2.24.0.05-eng.
ii. Under Build -> ARM Compiler -> Include Options. Add the following include paths
"${NDK_INSTALL_DIR}/packages/ti/ndk/inc"
"${NDK_INSTALL_DIR}/packages/ti/ndk/inc/bsd"
"C:/wolfssl" /* Change this if the wolfSSL install path is different */
iii. Under Build -> ARM Compiler -> Include Options -> Advanced Options -> Predefined Symbols. Add TIRTOS to the defines.
iv. Under Build -> XDCtools -> Package Repositories. Add following repositories to xdcpath and move them up to the top of the existing repository paths.
"${NDK_INSTALL_DIR}/packages"
"${NDK_INSTALL_DIR}/packages/ti/ndk/inc"
"C:/wolfssl/tirtos/packages" /* Change this if the wolfSSL install path is different */
c. Click OK.
6. Follow the steps 2, 3 and 4 in TI Resource Explorer to Build, Debugger Configuration and Debug.
7. In the Debugger View, run the application. The IP of the server will be printed on the console.
8. Run the echoclient application of wolfSSL SSL tutorial. Connect to the server using the IP.
9. Test by sending text which should be echoed back.
Running wolfSSL wolfCrypt benchmark and test application.
-------------------------------------------------------- --------------------------------------------------------
1. After running the TCP Echo Server application, in the Debugger View, open Run -> Load Program. Browse to the Benchmark application (C:\cyassl\tirtos\packages\ti\net\cyassl\tests\ctaocrypt\benchmark). Select benchmark.xem4f and Click Open and Click OK to load the application. The wolfCrypt benchmark and test applications are built along with the wolfSSL libraries. To run them follow the steps.
1. After running the TCP Echo Server application, in the Debugger View, open Run -> Load Program. Browse to the Benchmark application
(C:\wolfssl\tirtos\packages\ti\net\wolfssl\tests\wolfcrypt\benchmark). Select benchmark.xem4f and Click Open and Click OK to load the application.
2. Test by running the application. 2. Test by running the application.
3. Repeat the steps 1 and 2 for Test application (C:\cyassl\tirtos\packages\ti\net\cyassl\tests\ctaocrypt\test). 3. Repeat the steps 1 and 2 for Test application (C:\wolfssl\tirtos\packages\ti\net\wolfssl\tests\wolfcrypt\test).
4. The example cyassl_tirtos_benchmark in this repository has all the correct optimization settings and will re-build the relevant c files at compile time for optimal results and additional benchmarks for camellia, rabbit, chacha, poly1305, sha512, and ECC.
Import a project into your workspace.
--------------------------------------------------------
In CCS go to the Project tab. Click "Import CCS Projects...".
Click "Browse..." and navigate to tirtos_ccs_examples/ file and click "OK". In the "Discovered projects" window you will see all CCS projects. Check the ones you would like to import into the workspace, and check the box at the bottom labled "Copy projects into workspace", now click "Finish". Build and debug the desired projects.

View File

@ -41,9 +41,9 @@ TIVAWARE_INSTALLATION_DIR ?= $(TIRTOS_INSTALLATION_DIR)/products/TivaWare_C_Seri
# Setting this variable to 1 causes only NDK base stack libraries to be built # Setting this variable to 1 causes only NDK base stack libraries to be built
BUILDMINSTACK_CONFIG := BUILDMINSTACK=1 BUILDMINSTACK_CONFIG := BUILDMINSTACK=1
# wolfSSL settings # CyaSSL settings
WOLFSSL_INSTALLATION_DIR ?= C:/wolfssl CYASSL_INSTALLATION_DIR ?= C:/cyassl
WOLFSSL_TIRTOS_DIR = $(WOLFSSL_INSTALLATION_DIR)/tirtos CYASSL_TIRTOS_DIR = $(CYASSL_INSTALLATION_DIR)/tirtos
# #
# Set XDCARGS to some of the variables above. XDCARGS are passed # Set XDCARGS to some of the variables above. XDCARGS are passed
@ -175,25 +175,25 @@ clean-uia:
NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \ NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \
-C $(UIA_INSTALLATION_DIR) clean -C $(UIA_INSTALLATION_DIR) clean
wolfssl: cyassl:
@ echo building wolfssl ... @ echo building cyassl ...
@ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(WOLFSSL_TIRTOS_DIR)/wolfssl.mak \ @ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(CYASSL_TIRTOS_DIR)/cyassl.mak \
XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \ XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \
SYSBIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \ SYSBIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \
NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \ NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \
WOLFSSL_INSTALL_DIR=$(WOLFSSL_INSTALLATION_DIR) \ CYASSL_INSTALL_DIR=$(CYASSL_INSTALLATION_DIR) \
TIRTOS_INSTALLATION_DIR=$(TIRTOS_INSTALLATION_DIR) \ TIRTOS_INSTALLATION_DIR=$(TIRTOS_INSTALLATION_DIR) \
$(XDCARGS) -C $(WOLFSSL_TIRTOS_DIR) $(XDCARGS) -C $(CYASSL_TIRTOS_DIR)
clean-wolfssl: clean-cyassl:
@ echo cleaning wolfssl ... @ echo cleaning cyassl ...
@ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(WOLFSSL_TIRTOS_DIR)/wolfssl.mak \ @ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(CYASSL_TIRTOS_DIR)/cyassl.mak \
XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \ XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \
SYSBIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \ SYSBIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \
NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \ NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \
WOLFSSL_INSTALL_DIR=$(WOLFSSL_INSTALLATION_DIR) \ CYASSL_INSTALL_DIR=$(CYASSL_INSTALLATION_DIR) \
TIRTOS_INSTALLATION_DIR=$(TIRTOS_INSTALLATION_DIR) \ TIRTOS_INSTALLATION_DIR=$(TIRTOS_INSTALLATION_DIR) \
-C $(WOLFSSL_TIRTOS_DIR) clean -C $(CYASSL_TIRTOS_DIR) clean
examplesgen: examplesgen:
ifneq ("$(DEST)","") ifneq ("$(DEST)","")
@ -208,7 +208,7 @@ ifeq ("$(CCS_BUILD)", "true")
--bios="$(BIOS_INSTALLATION_DIR)" \ --bios="$(BIOS_INSTALLATION_DIR)" \
--uia="$(UIA_INSTALLATION_DIR)" \ --uia="$(UIA_INSTALLATION_DIR)" \
--ndk="$(NDK_INSTALLATION_DIR)" \ --ndk="$(NDK_INSTALLATION_DIR)" \
--wolfssl="$(WOLFSSL_TIRTOS_DIR)" \ --cyassl="$(CYASSL_TIRTOS_DIR)" \
--tivaware="$(TIVAWARE_INSTALLATION_DIR)" \ --tivaware="$(TIVAWARE_INSTALLATION_DIR)" \
--toolChaindir="$(ti.targets.arm.elf.M4F)" --toolChaindir="$(ti.targets.arm.elf.M4F)"
endif endif
@ -222,7 +222,7 @@ ifeq ("$(IAR_BUILD)", "true")
--bios="$(BIOS_INSTALLATION_DIR)" \ --bios="$(BIOS_INSTALLATION_DIR)" \
--uia="$(UIA_INSTALLATION_DIR)" \ --uia="$(UIA_INSTALLATION_DIR)" \
--ndk="$(NDK_INSTALLATION_DIR)" \ --ndk="$(NDK_INSTALLATION_DIR)" \
--wolfssl="$(WOLFSSL_TIRTOS_DIR)" \ --cyassl="$(CYASSL_TIRTOS_DIR)" \
--tivaware="$(TIVAWARE_INSTALLATION_DIR)" \ --tivaware="$(TIVAWARE_INSTALLATION_DIR)" \
--toolChaindir="$(iar.targets.arm.M4F)" --toolChaindir="$(iar.targets.arm.M4F)"
endif endif
@ -236,7 +236,7 @@ ifeq ("$(GCC_BUILD)", "true")
--bios="$(BIOS_INSTALLATION_DIR)" \ --bios="$(BIOS_INSTALLATION_DIR)" \
--uia="$(UIA_INSTALLATION_DIR)" \ --uia="$(UIA_INSTALLATION_DIR)" \
--ndk="$(NDK_INSTALLATION_DIR)" \ --ndk="$(NDK_INSTALLATION_DIR)" \
--wolfssl="$(WOLFSSL_TIRTOS_DIR)" \ --cyassl="$(CYASSL_TIRTOS_DIR)" \
--tivaware="$(TIVAWARE_INSTALLATION_DIR)" \ --tivaware="$(TIVAWARE_INSTALLATION_DIR)" \
--toolChaindir="$(gnu.targets.arm.M4F)" --toolChaindir="$(gnu.targets.arm.M4F)"
endif endif

View File

@ -1,246 +0,0 @@
#
# ======== tirtos.mak ========
#
#
# Set location of various cgtools
# These variables can be set here or on the command line.
#
CCS_BUILD ?= true
DEFAULT_INSTALLATION_DIR ?= c:/ti
ti.targets.arm.elf.M4F ?= $(DEFAULT_INSTALLATION_DIR)/ccsv6/tools/compiler/arm_5.1.6
#
# Enable TI-RTOS to build for IAR.
# Set IAR_ENABLE to true and modify path to toolchain
#
IAR_BUILD ?= false
IAR_COMPILER_INSTALLATION_DIR ?= C:/Program Files (x86)/IAR Systems/Embedded Workbench 6.5
iar.targets.arm.M4F ?= $(IAR_COMPILER_INSTALLATION_DIR)/arm
#
# Enable TI-RTOS to build for GCC.
# Set IAR_ENABLE to true and modify path to toolchain
#
GCC_BUILD ?= false
GCC_INSTALLATION_DIR ?= $(DEFAULT_INSTALLATION_DIR)/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3
gnu.targets.arm.M4F ?= $(GCC_INSTALLATION_DIR)
#
# TI-RTOS and XDCTools settings
#
XDCTOOLS_INSTALLATION_DIR ?= $(DEFAULT_INSTALLATION_DIR)/xdctools_3_30_03_47_core
export XDCTOOLS_JAVA_HOME ?= $(DEFAULT_INSTALLATION_DIR)/ccsv6/eclipse/jre
TIRTOS_INSTALLATION_DIR ?= $(DEFAULT_INSTALLATION_DIR)/tirtos_tivac_2_10_01_38
BIOS_INSTALLATION_DIR ?= $(TIRTOS_INSTALLATION_DIR)/products/bios_6_41_00_26
UIA_INSTALLATION_DIR ?= $(TIRTOS_INSTALLATION_DIR)/products/uia_2_00_02_39
NDK_INSTALLATION_DIR ?= $(TIRTOS_INSTALLATION_DIR)/products/ndk_2_24_01_18
TIVAWARE_INSTALLATION_DIR ?= $(TIRTOS_INSTALLATION_DIR)/products/TivaWare_C_Series-2.1.0.12573c
# Setting this variable to 1 causes only NDK base stack libraries to be built
BUILDMINSTACK_CONFIG := BUILDMINSTACK=1
# wolfSSL settings
WOLFSSL_INSTALLATION_DIR ?= C:/wolfssl
WOLFSSL_TIRTOS_DIR = $(WOLFSSL_INSTALLATION_DIR)/tirtos
#
# Set XDCARGS to some of the variables above. XDCARGS are passed
# to the XDC build engine... which will load tirtos.bld... which will
# extract these variables and use them to determine what to build and which
# toolchains to use.
#
# Note that not all of these variables need to be set to something valid.
# Unfortunately, since these vars are unconditionally assigned, your build line
# will be longer and more noisy than necessary (e.g., it will include CC_V5T
# assignment even if you're just building for C64P).
#
# Some background is here:
# http://rtsc.eclipse.org/docs-tip/Command_-_xdc#Environment_Variables
#
XDCARGS= \
profile='release' \
TivaWareDir='$(TIVAWARE_INSTALLATION_DIR)'
ifeq ("$(CCS_BUILD)", "true")
XDCARGS += \
ti.targets.arm.elf.M4F='$(ti.targets.arm.elf.M4F)'
endif
ifeq ("$(IAR_BUILD)", "true")
XDCARGS += \
iar.targets.arm.M4F='$(iar.targets.arm.M4F)'
endif
ifeq ("$(GCC_BUILD)", "true")
XDCARGS += \
gnu.targets.arm.M4F='$(gnu.targets.arm.M4F)'
endif
export XDCARGS
#
# Set XDCPATH to contain necessary repositories.
#
XDCPATH = $(TIRTOS_INSTALLATION_DIR)/packages;$(UIA_INSTALLATION_DIR)/packages;$(NDK_INSTALLATION_DIR)/packages;$(BIOS_INSTALLATION_DIR)/packages;$(TIVAWARE_INSTALLATION_DIR);
export XDCPATH
#
# Set XDCOPTIONS. Use -v for a verbose build.
#
#XDCOPTIONS=v
export XDCOPTIONS
#
# Set XDC executable command
# Note that XDCBUILDCFG points to the tirtos.bld file which uses
# the arguments specified by XDCARGS
#
XDC = $(XDCTOOLS_INSTALLATION_DIR)/xdc XDCARGS="$(XDCARGS)" XDCBUILDCFG=./tirtos.bld
XS = $(XDCTOOLS_INSTALLATION_DIR)/xs
#######################################################
## Shouldn't have to modify anything below this line ##
#######################################################
help:
@ echo Makefile to build components within TI-RTOS
@ echo goal description
@ echo -----------------------------------------------------------------------------
@ echo all Builds SYS/BIOS, NDK, UIA, and TI-RTOS drivers
@ echo drivers Builds TI-RTOS drivers and other components in /packages
@ echo bios Builds SYS/BIOS
@ echo ndk Builds NDK
@ echo uia Builds UIA
@ echo clean Cleans SYS/BIOS, NDK, UIA, and TI-RTOS drivers
@ echo clean-drivers Cleans TI-RTOS drivers and other components in /packages
@ echo clean-bios Cleans SYS/BIOS
@ echo clean-ndk Cleans NDK
@ echo clean-uia Cleans UIA
@ echo examplesgen Generates TI-RTOS examples and makefiles
@ echo help Displays this description
all: bios ndk uia drivers
clean: clean-ndk clean-uia clean-drivers clean-bios
drivers:
@ echo building tirtos packages ...
@ $(XDC) -Pr ./packages
clean-drivers:
@ echo cleaning tirtos packages ...
@ $(XDC) clean -Pr ./packages
bios:
@ echo building bios ...
@ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(BIOS_INSTALLATION_DIR)/bios.mak \
XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \
BIOS_SMPENABLED=0 \
$(XDCARGS) -C $(BIOS_INSTALLATION_DIR)
clean-bios:
@ echo cleaning bios ...
@ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(BIOS_INSTALLATION_DIR)/bios.mak \
XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \
BIOS_SMPENABLED=0 \
-C $(BIOS_INSTALLATION_DIR) clean
ndk:
@ echo building ndk ...
@ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(NDK_INSTALLATION_DIR)/ndk.mak \
XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \
SYSBIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \
$(BUILDMINSTACK_CONFIG) \
$(XDCARGS) -C $(NDK_INSTALLATION_DIR)
clean-ndk:
@ echo cleaning ndk ...
@ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(NDK_INSTALLATION_DIR)/ndk.mak \
XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \
SYSBIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \
$(BUILDMINSTACK_CONFIG) \
-C $(NDK_INSTALLATION_DIR) clean
uia:
@ echo building uia ...
@ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(UIA_INSTALLATION_DIR)/uia.mak \
XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \
BIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \
NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \
$(XDCARGS) -C $(UIA_INSTALLATION_DIR)
clean-uia:
@ echo cleaning uia ...
@ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(UIA_INSTALLATION_DIR)/uia.mak \
XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \
BIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \
NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \
-C $(UIA_INSTALLATION_DIR) clean
wolfssl:
@ echo building wolfssl ...
@ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(WOLFSSL_TIRTOS_DIR)/wolfssl.mak \
XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \
SYSBIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \
NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \
WOLFSSL_INSTALL_DIR=$(WOLFSSL_INSTALLATION_DIR) \
TIRTOS_INSTALLATION_DIR=$(TIRTOS_INSTALLATION_DIR) \
$(XDCARGS) -C $(WOLFSSL_TIRTOS_DIR)
clean-wolfssl:
@ echo cleaning wolfssl ...
@ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(WOLFSSL_TIRTOS_DIR)/wolfssl.mak \
XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \
SYSBIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \
NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \
WOLFSSL_INSTALL_DIR=$(WOLFSSL_INSTALLATION_DIR) \
TIRTOS_INSTALLATION_DIR=$(TIRTOS_INSTALLATION_DIR) \
-C $(WOLFSSL_TIRTOS_DIR) clean
examplesgen:
ifneq ("$(DEST)","")
@ echo generating examples in $(DEST) ...
ifeq ("$(CCS_BUILD)", "true")
@ $(XS) examples.examplesgen \
--tirtos "$(TIRTOS_INSTALLATION_DIR)" \
--productGroup "TivaC" \
--toolchain TI \
--output "$(DEST)" \
--xdctools="$(XDCTOOLS_INSTALLATION_DIR)" \
--bios="$(BIOS_INSTALLATION_DIR)" \
--uia="$(UIA_INSTALLATION_DIR)" \
--ndk="$(NDK_INSTALLATION_DIR)" \
--tivaware="$(TIVAWARE_INSTALLATION_DIR)" \
--toolChaindir="$(ti.targets.arm.elf.M4F)"
endif
ifeq ("$(IAR_BUILD)", "true")
@ $(XS) examples.examplesgen \
--tirtos "$(TIRTOS_INSTALLATION_DIR)" \
--productGroup "TivaC" \
--toolchain IAR \
--output "$(DEST)" \
--xdctools="$(XDCTOOLS_INSTALLATION_DIR)" \
--bios="$(BIOS_INSTALLATION_DIR)" \
--uia="$(UIA_INSTALLATION_DIR)" \
--ndk="$(NDK_INSTALLATION_DIR)" \
--tivaware="$(TIVAWARE_INSTALLATION_DIR)" \
--toolChaindir="$(iar.targets.arm.M4F)"
endif
ifeq ("$(GCC_BUILD)", "true")
@ $(XS) examples.examplesgen \
--tirtos "$(TIRTOS_INSTALLATION_DIR)" \
--productGroup "TivaC" \
--toolchain GNU \
--output "$(DEST)" \
--xdctools="$(XDCTOOLS_INSTALLATION_DIR)" \
--bios="$(BIOS_INSTALLATION_DIR)" \
--uia="$(UIA_INSTALLATION_DIR)" \
--ndk="$(NDK_INSTALLATION_DIR)" \
--tivaware="$(TIVAWARE_INSTALLATION_DIR)" \
--toolChaindir="$(gnu.targets.arm.M4F)"
endif
@ echo ***********************************************************
@ echo Please refer to "Examples for TI-RTOS" section in the TI-RTOS
@ echo "Getting Started Guide" for details on how to build and load the examples.
else
@ echo Specify destination path like this: DEST="YOURPATH". Use UNIX style path "C:/examples"
endif

View File

@ -41,9 +41,9 @@ TIVAWARE_INSTALLATION_DIR ?= $(TIRTOS_INSTALLATION_DIR)/products/TivaWare_C_Seri
# Setting this variable to 1 causes only NDK base stack libraries to be built # Setting this variable to 1 causes only NDK base stack libraries to be built
BUILDMINSTACK_CONFIG := BUILDMINSTACK=1 BUILDMINSTACK_CONFIG := BUILDMINSTACK=1
# CyaSSL settings # wolfSSL settings
CYASSL_INSTALLATION_DIR ?= C:/cyassl WOLFSSL_INSTALLATION_DIR ?= C:/wolfssl
CYASSL_TIRTOS_DIR = $(CYASSL_INSTALLATION_DIR)/tirtos WOLFSSL_TIRTOS_DIR = $(WOLFSSL_INSTALLATION_DIR)/tirtos
# #
# Set XDCARGS to some of the variables above. XDCARGS are passed # Set XDCARGS to some of the variables above. XDCARGS are passed
@ -175,25 +175,25 @@ clean-uia:
NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \ NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \
-C $(UIA_INSTALLATION_DIR) clean -C $(UIA_INSTALLATION_DIR) clean
cyassl: wolfssl:
@ echo building cyassl ... @ echo building wolfssl ...
@ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(CYASSL_TIRTOS_DIR)/cyassl.mak \ @ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(WOLFSSL_TIRTOS_DIR)/wolfssl.mak \
XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \ XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \
SYSBIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \ SYSBIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \
NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \ NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \
CYASSL_INSTALL_DIR=$(CYASSL_INSTALLATION_DIR) \ WOLFSSL_INSTALL_DIR=$(WOLFSSL_INSTALLATION_DIR) \
TIRTOS_INSTALLATION_DIR=$(TIRTOS_INSTALLATION_DIR) \ TIRTOS_INSTALLATION_DIR=$(TIRTOS_INSTALLATION_DIR) \
$(XDCARGS) -C $(CYASSL_TIRTOS_DIR) $(XDCARGS) -C $(WOLFSSL_TIRTOS_DIR)
clean-cyassl: clean-wolfssl:
@ echo cleaning cyassl ... @ echo cleaning wolfssl ...
@ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(CYASSL_TIRTOS_DIR)/cyassl.mak \ @ $(XDCTOOLS_INSTALLATION_DIR)/gmake -f $(WOLFSSL_TIRTOS_DIR)/wolfssl.mak \
XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \ XDC_INSTALL_DIR=$(XDCTOOLS_INSTALLATION_DIR) \
SYSBIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \ SYSBIOS_INSTALL_DIR=$(BIOS_INSTALLATION_DIR) \
NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \ NDK_INSTALL_DIR=$(NDK_INSTALLATION_DIR) \
CYASSL_INSTALL_DIR=$(CYASSL_INSTALLATION_DIR) \ WOLFSSL_INSTALL_DIR=$(WOLFSSL_INSTALLATION_DIR) \
TIRTOS_INSTALLATION_DIR=$(TIRTOS_INSTALLATION_DIR) \ TIRTOS_INSTALLATION_DIR=$(TIRTOS_INSTALLATION_DIR) \
-C $(CYASSL_TIRTOS_DIR) clean -C $(WOLFSSL_TIRTOS_DIR) clean
examplesgen: examplesgen:
ifneq ("$(DEST)","") ifneq ("$(DEST)","")
@ -208,7 +208,7 @@ ifeq ("$(CCS_BUILD)", "true")
--bios="$(BIOS_INSTALLATION_DIR)" \ --bios="$(BIOS_INSTALLATION_DIR)" \
--uia="$(UIA_INSTALLATION_DIR)" \ --uia="$(UIA_INSTALLATION_DIR)" \
--ndk="$(NDK_INSTALLATION_DIR)" \ --ndk="$(NDK_INSTALLATION_DIR)" \
--cyassl="$(CYASSL_TIRTOS_DIR)" \ --wolfssl="$(WOLFSSL_TIRTOS_DIR)" \
--tivaware="$(TIVAWARE_INSTALLATION_DIR)" \ --tivaware="$(TIVAWARE_INSTALLATION_DIR)" \
--toolChaindir="$(ti.targets.arm.elf.M4F)" --toolChaindir="$(ti.targets.arm.elf.M4F)"
endif endif
@ -222,7 +222,7 @@ ifeq ("$(IAR_BUILD)", "true")
--bios="$(BIOS_INSTALLATION_DIR)" \ --bios="$(BIOS_INSTALLATION_DIR)" \
--uia="$(UIA_INSTALLATION_DIR)" \ --uia="$(UIA_INSTALLATION_DIR)" \
--ndk="$(NDK_INSTALLATION_DIR)" \ --ndk="$(NDK_INSTALLATION_DIR)" \
--cyassl="$(CYASSL_TIRTOS_DIR)" \ --wolfssl="$(WOLFSSL_TIRTOS_DIR)" \
--tivaware="$(TIVAWARE_INSTALLATION_DIR)" \ --tivaware="$(TIVAWARE_INSTALLATION_DIR)" \
--toolChaindir="$(iar.targets.arm.M4F)" --toolChaindir="$(iar.targets.arm.M4F)"
endif endif
@ -236,7 +236,7 @@ ifeq ("$(GCC_BUILD)", "true")
--bios="$(BIOS_INSTALLATION_DIR)" \ --bios="$(BIOS_INSTALLATION_DIR)" \
--uia="$(UIA_INSTALLATION_DIR)" \ --uia="$(UIA_INSTALLATION_DIR)" \
--ndk="$(NDK_INSTALLATION_DIR)" \ --ndk="$(NDK_INSTALLATION_DIR)" \
--cyassl="$(CYASSL_TIRTOS_DIR)" \ --wolfssl="$(WOLFSSL_TIRTOS_DIR)" \
--tivaware="$(TIVAWARE_INSTALLATION_DIR)" \ --tivaware="$(TIVAWARE_INSTALLATION_DIR)" \
--toolChaindir="$(gnu.targets.arm.M4F)" --toolChaindir="$(gnu.targets.arm.M4F)"
endif endif