CyaSSL MPLAB X Project Files

This directory contains project files for the Microchip MPLAB X IDE. These
projects have been set up to use the Microchip PIC32 Ethernet Starter Kit
and the Microchip XC32 compiler.

In order to generate the necessary auto-generated MPLAB X files, make sure
to import the cyassl.X project into your MPLAB X workspace before trying to
build either the CTaoCrypt test or benchmark applications. This will
correctly set up the respective project's Makefiles.

Included Project Files
-----------------------

1. CyaSSL library (cyassl.X)

    This project builds a static CyaSSL library. Prior to building this
    project, uncomment the MICROCHIP_PIC32 define located in:

    <cyassl_root>/cyassl/ctaocrypt/settings.h

    After this project has been built, the compiled library will be located
    at:

    <cyassl_root>/mplabx/cyassl.X/dist/default/production/cyassl.X.a

2. CTaoCrypt Test App (ctaocrypt_test.X)
    
    This project tests the CTaoCrypt cryptography modules. It is generally
    a good idea to run this first on an embedded system after compiling
    CyaSSL in order to verify all underlying crypto is working correctly.

3. CTaoCrypt Benchmark App (ctaocrypt_benchmark.X)
    
    This project builds the CTaoCrypt benchmark application.
    For the benchmark timer, adjust CLOCK value under
    "#elif defined MICROCHIP_PIC32" in ctaocrypt/benchmark/benchmark.c

PIC32MX/PIC32MZ
---------------

The projects are set for PIC32MX by default. For PIC32MZ, change project
properties->Devices and add "CYASSL_MICROCHIP_PIC32M" to 
XC32-gcc->Preprocessing and messages-> Preprocessor macros.


MIPS16 and MIPS32 Support
-------------------------

These projects support both MIPS16 and MIPS32 instruction sets. Switching
between these two instruction sets can be done in each project's properties
settings by checking the "Generate 16-bit code" checkbox.

Support
-------
Please send questions or comments to support@wolfssl.com

