wolfSSL 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 wolfssl.X project into your MPLAB X workspace before trying to
build either the wolfCrypt test or benchmark applications. This will
correctly set up the respective project's Makefiles.

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

1. wolfSSL library (wolfssl.X)

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

    <wolfssl_root>/wolfssl/wolfcrypt/settings.h

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

    <wolfssl_root>/mplabx/wolfssl.X/dist/default/production/wolfssl.X.a

2. wolfCrypt Test App (wolfcrypt_test.X)

    This project tests the wolfCrypt cryptography modules. It is generally
    a good idea to run this first on an embedded system after compiling
    wolfSSL in order to verify all underlying crypto is working correctly.

3. wolfCrypt Benchmark App (wolfcrypt_benchmark.X)

    This project builds the wolfCrypt benchmark application.
    For the benchmark timer, adjust CLOCK value under
    "#elif defined MICROCHIP_PIC32" in wolfcrypt/benchmark/benchmark.c

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

The projects are set for PIC32MX by default. For PIC32MZ, change project
properties->Devices and add "WOLFSSL_MICROCHIP_PIC32MZ" 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

