Jacob Barthelmeh 9dcc48c8f7 update copyright to 2023 1 year ago
..
wolfcrypt_benchmark.X 8f121e7752 file modes: clear inappropriate executable bits. 3 years ago
wolfcrypt_test.X 8f121e7752 file modes: clear inappropriate executable bits. 3 years ago
wolfssl.X b957a6e872 Purge Rabbit cipher 2 years ago
PIC32MZ-serial.h 4e735631e7 Fixes for PIC32MZ: 7 years ago
README 4e735631e7 Fixes for PIC32MZ: 7 years ago
benchmark_main.c 9dcc48c8f7 update copyright to 2023 1 year ago
include.am 4e735631e7 Fixes for PIC32MZ: 7 years ago
test_main.c 9dcc48c8f7 update copyright to 2023 1 year ago
user_settings.h b957a6e872 Purge Rabbit cipher 2 years ago

README

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. The settings for this project
are in `user_settings.h`:

/wolfssl/wolfcrypt/settings.h

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

/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 PIC32MZ by default. For PIC32MX, comment out the
`WOLFSSL_MICROCHIP_PIC32MZ` line in `user_settings.h`.

You also need to adjust the microcontroller device in the project properties.


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.


Legacy Peripheral Libraries
___________________________

If you get a linker error locating `ReadCoreTimer` and `WriteCoreTimer` you
can enable wrappers in benchmark_main.c and test_main.c.


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