From 3b6b59cea0933d6d19b08aa8457e7cf83f165741 Mon Sep 17 00:00:00 2001 From: Jacob Barthelmeh Date: Thu, 30 Apr 2020 15:56:50 -0600 Subject: [PATCH] add 2019.2 Xilinx example and update README fix to remove xml extension add missing project file update project update dist include rm prj files --- IDE/XilinxSDK/{ => 2018_2}/.cproject | 0 IDE/XilinxSDK/{ => 2018_2}/.project | 0 IDE/XilinxSDK/{ => 2018_2}/lscript.ld | 0 .../2019_2/wolfCrypt_example/.cproject | 378 ++++++++ .../2019_2/wolfCrypt_example/.project | 849 ++++++++++++++++++ .../2019_2/wolfCrypt_example/src/lscript.ld | 309 +++++++ .../2019_2/wolfCrypt_example_system/.cproject | 106 +++ .../2019_2/wolfCrypt_example_system/.project | 28 + IDE/XilinxSDK/README.md | 169 ++-- IDE/XilinxSDK/include.am | 11 +- 10 files changed, 1789 insertions(+), 61 deletions(-) rename IDE/XilinxSDK/{ => 2018_2}/.cproject (100%) rename IDE/XilinxSDK/{ => 2018_2}/.project (100%) rename IDE/XilinxSDK/{ => 2018_2}/lscript.ld (100%) create mode 100644 IDE/XilinxSDK/2019_2/wolfCrypt_example/.cproject create mode 100644 IDE/XilinxSDK/2019_2/wolfCrypt_example/.project create mode 100644 IDE/XilinxSDK/2019_2/wolfCrypt_example/src/lscript.ld create mode 100644 IDE/XilinxSDK/2019_2/wolfCrypt_example_system/.cproject create mode 100644 IDE/XilinxSDK/2019_2/wolfCrypt_example_system/.project diff --git a/IDE/XilinxSDK/.cproject b/IDE/XilinxSDK/2018_2/.cproject similarity index 100% rename from IDE/XilinxSDK/.cproject rename to IDE/XilinxSDK/2018_2/.cproject diff --git a/IDE/XilinxSDK/.project b/IDE/XilinxSDK/2018_2/.project similarity index 100% rename from IDE/XilinxSDK/.project rename to IDE/XilinxSDK/2018_2/.project diff --git a/IDE/XilinxSDK/lscript.ld b/IDE/XilinxSDK/2018_2/lscript.ld similarity index 100% rename from IDE/XilinxSDK/lscript.ld rename to IDE/XilinxSDK/2018_2/lscript.ld diff --git a/IDE/XilinxSDK/2019_2/wolfCrypt_example/.cproject b/IDE/XilinxSDK/2019_2/wolfCrypt_example/.cproject new file mode 100644 index 000000000..ebfdb72b2 --- /dev/null +++ b/IDE/XilinxSDK/2019_2/wolfCrypt_example/.cproject @@ -0,0 +1,378 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/IDE/XilinxSDK/2019_2/wolfCrypt_example/.project b/IDE/XilinxSDK/2019_2/wolfCrypt_example/.project new file mode 100644 index 000000000..c814955a7 --- /dev/null +++ b/IDE/XilinxSDK/2019_2/wolfCrypt_example/.project @@ -0,0 +1,849 @@ + + + wolfCrypt_example + Created by Vitis v2019.2 + + standalone_bsp_0 + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + com.xilinx.sdx.sdk.core.SdkProjectNature + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + + + src/IDE + 2 + virtual:/virtual + + + src/src + 2 + virtual:/virtual + + + src/wolfcrypt + 2 + virtual:/virtual + + + src/IDE/XilinxSDK + 2 + virtual:/virtual + + + src/src/bio.c + 1 + PARENT-4-PROJECT_LOC/src/bio.c + + + src/src/crl.c + 1 + PARENT-4-PROJECT_LOC/src/crl.c + + + src/src/include.am + 1 + PARENT-4-PROJECT_LOC/src/include.am + + + src/src/internal.c + 1 + PARENT-4-PROJECT_LOC/src/internal.c + + + src/src/keys.c + 1 + PARENT-4-PROJECT_LOC/src/keys.c + + + src/src/ocsp.c + 1 + PARENT-4-PROJECT_LOC/src/ocsp.c + + + src/src/sniffer.c + 1 + PARENT-4-PROJECT_LOC/src/sniffer.c + + + src/src/ssl.c + 1 + PARENT-4-PROJECT_LOC/src/ssl.c + + + src/src/tls.c + 1 + PARENT-4-PROJECT_LOC/src/tls.c + + + src/src/tls13.c + 1 + PARENT-4-PROJECT_LOC/src/tls13.c + + + src/src/wolfio.c + 1 + PARENT-4-PROJECT_LOC/src/wolfio.c + + + src/wolfcrypt/benchmark + 2 + virtual:/virtual + + + src/wolfcrypt/src + 2 + virtual:/virtual + + + src/wolfcrypt/test + 2 + virtual:/virtual + + + src/IDE/XilinxSDK/.cproject + 1 + PARENT-2-PROJECT_LOC/.cproject + + + src/IDE/XilinxSDK/.project + 1 + PARENT-2-PROJECT_LOC/.project + + + src/IDE/XilinxSDK/README.md + 1 + PARENT-2-PROJECT_LOC/README.md + + + src/IDE/XilinxSDK/include.am + 1 + PARENT-2-PROJECT_LOC/include.am + + + src/IDE/XilinxSDK/lscript.ld + 1 + PARENT-2-PROJECT_LOC/lscript.ld + + + src/IDE/XilinxSDK/user_settings.h + 1 + PARENT-2-PROJECT_LOC/user_settings.h + + + src/IDE/XilinxSDK/wolfssl_example.c + 1 + PARENT-2-PROJECT_LOC/wolfssl_example.c + + + src/wolfcrypt/benchmark/README.md + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/benchmark/README.md + + + src/wolfcrypt/benchmark/benchmark.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/benchmark/benchmark.c + + + src/wolfcrypt/benchmark/benchmark.h + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/benchmark/benchmark.h + + + src/wolfcrypt/benchmark/benchmark.sln + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/benchmark/benchmark.sln + + + src/wolfcrypt/benchmark/benchmark.vcproj + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/benchmark/benchmark.vcproj + + + src/wolfcrypt/benchmark/include.am + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/benchmark/include.am + + + src/wolfcrypt/src/aes.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/aes.c + + + src/wolfcrypt/src/aes_asm.asm + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/aes_asm.asm + + + src/wolfcrypt/src/arc4.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/arc4.c + + + src/wolfcrypt/src/asm.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/asm.c + + + src/wolfcrypt/src/asn.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/asn.c + + + src/wolfcrypt/src/blake2b.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/blake2b.c + + + src/wolfcrypt/src/blake2s.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/blake2s.c + + + src/wolfcrypt/src/camellia.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/camellia.c + + + src/wolfcrypt/src/chacha.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/chacha.c + + + src/wolfcrypt/src/chacha20_poly1305.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/chacha20_poly1305.c + + + src/wolfcrypt/src/cmac.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/cmac.c + + + src/wolfcrypt/src/coding.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/coding.c + + + src/wolfcrypt/src/compress.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/compress.c + + + src/wolfcrypt/src/cpuid.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/cpuid.c + + + src/wolfcrypt/src/cryptocb.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/cryptocb.c + + + src/wolfcrypt/src/curve25519.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/curve25519.c + + + src/wolfcrypt/src/curve448.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/curve448.c + + + src/wolfcrypt/src/des3.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/des3.c + + + src/wolfcrypt/src/dh.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/dh.c + + + src/wolfcrypt/src/dsa.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/dsa.c + + + src/wolfcrypt/src/ecc.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/ecc.c + + + src/wolfcrypt/src/ecc_fp.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/ecc_fp.c + + + src/wolfcrypt/src/ed25519.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/ed25519.c + + + src/wolfcrypt/src/ed448.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/ed448.c + + + src/wolfcrypt/src/error.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/error.c + + + src/wolfcrypt/src/evp.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/evp.c + + + src/wolfcrypt/src/fe_448.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fe_448.c + + + src/wolfcrypt/src/fe_low_mem.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fe_low_mem.c + + + src/wolfcrypt/src/fe_operations.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fe_operations.c + + + src/wolfcrypt/src/fe_x25519_128.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fe_x25519_128.i + + + src/wolfcrypt/src/fp_mont_small.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mont_small.i + + + src/wolfcrypt/src/fp_mul_comba_12.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_12.i + + + src/wolfcrypt/src/fp_mul_comba_17.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_17.i + + + src/wolfcrypt/src/fp_mul_comba_20.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_20.i + + + src/wolfcrypt/src/fp_mul_comba_24.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_24.i + + + src/wolfcrypt/src/fp_mul_comba_28.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_28.i + + + src/wolfcrypt/src/fp_mul_comba_3.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_3.i + + + src/wolfcrypt/src/fp_mul_comba_32.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_32.i + + + src/wolfcrypt/src/fp_mul_comba_4.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_4.i + + + src/wolfcrypt/src/fp_mul_comba_48.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_48.i + + + src/wolfcrypt/src/fp_mul_comba_6.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_6.i + + + src/wolfcrypt/src/fp_mul_comba_64.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_64.i + + + src/wolfcrypt/src/fp_mul_comba_7.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_7.i + + + src/wolfcrypt/src/fp_mul_comba_8.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_8.i + + + src/wolfcrypt/src/fp_mul_comba_9.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_9.i + + + src/wolfcrypt/src/fp_mul_comba_small_set.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_mul_comba_small_set.i + + + src/wolfcrypt/src/fp_sqr_comba_12.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_12.i + + + src/wolfcrypt/src/fp_sqr_comba_17.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_17.i + + + src/wolfcrypt/src/fp_sqr_comba_20.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_20.i + + + src/wolfcrypt/src/fp_sqr_comba_24.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_24.i + + + src/wolfcrypt/src/fp_sqr_comba_28.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_28.i + + + src/wolfcrypt/src/fp_sqr_comba_3.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_3.i + + + src/wolfcrypt/src/fp_sqr_comba_32.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_32.i + + + src/wolfcrypt/src/fp_sqr_comba_4.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_4.i + + + src/wolfcrypt/src/fp_sqr_comba_48.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_48.i + + + src/wolfcrypt/src/fp_sqr_comba_6.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_6.i + + + src/wolfcrypt/src/fp_sqr_comba_64.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_64.i + + + src/wolfcrypt/src/fp_sqr_comba_7.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_7.i + + + src/wolfcrypt/src/fp_sqr_comba_8.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_8.i + + + src/wolfcrypt/src/fp_sqr_comba_9.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_9.i + + + src/wolfcrypt/src/fp_sqr_comba_small_set.i + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/fp_sqr_comba_small_set.i + + + src/wolfcrypt/src/ge_448.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/ge_448.c + + + src/wolfcrypt/src/ge_low_mem.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/ge_low_mem.c + + + src/wolfcrypt/src/ge_operations.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/ge_operations.c + + + src/wolfcrypt/src/hash.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/hash.c + + + src/wolfcrypt/src/hc128.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/hc128.c + + + src/wolfcrypt/src/hmac.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/hmac.c + + + src/wolfcrypt/src/idea.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/idea.c + + + src/wolfcrypt/src/include.am + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/include.am + + + src/wolfcrypt/src/integer.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/integer.c + + + src/wolfcrypt/src/logging.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/logging.c + + + src/wolfcrypt/src/md2.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/md2.c + + + src/wolfcrypt/src/md4.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/md4.c + + + src/wolfcrypt/src/md5.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/md5.c + + + src/wolfcrypt/src/memory.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/memory.c + + + src/wolfcrypt/src/misc.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/misc.c + + + src/wolfcrypt/src/pkcs12.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/pkcs12.c + + + src/wolfcrypt/src/pkcs7.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/pkcs7.c + + + src/wolfcrypt/src/poly1305.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/poly1305.c + + + src/wolfcrypt/src/port + 2 + virtual:/virtual + + + src/wolfcrypt/src/pwdbased.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/pwdbased.c + + + src/wolfcrypt/src/rabbit.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/rabbit.c + + + src/wolfcrypt/src/random.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/random.c + + + src/wolfcrypt/src/ripemd.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/ripemd.c + + + src/wolfcrypt/src/rsa.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/rsa.c + + + src/wolfcrypt/src/sha.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/sha.c + + + src/wolfcrypt/src/sha256.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/sha256.c + + + src/wolfcrypt/src/sha3.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/sha3.c + + + src/wolfcrypt/src/sha512.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/sha512.c + + + src/wolfcrypt/src/signature.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/signature.c + + + src/wolfcrypt/src/sp_arm32.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/sp_arm32.c + + + src/wolfcrypt/src/sp_arm64.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/sp_arm64.c + + + src/wolfcrypt/src/sp_armthumb.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/sp_armthumb.c + + + src/wolfcrypt/src/sp_c32.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/sp_c32.c + + + src/wolfcrypt/src/sp_c64.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/sp_c64.c + + + src/wolfcrypt/src/sp_cortexm.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/sp_cortexm.c + + + src/wolfcrypt/src/sp_dsp32.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/sp_dsp32.c + + + src/wolfcrypt/src/sp_int.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/sp_int.c + + + src/wolfcrypt/src/sp_x86_64.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/sp_x86_64.c + + + src/wolfcrypt/src/srp.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/srp.c + + + src/wolfcrypt/src/tfm.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/tfm.c + + + src/wolfcrypt/src/wc_dsp.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/wc_dsp.c + + + src/wolfcrypt/src/wc_encrypt.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/wc_encrypt.c + + + src/wolfcrypt/src/wc_pkcs11.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/wc_pkcs11.c + + + src/wolfcrypt/src/wc_port.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/wc_port.c + + + src/wolfcrypt/src/wolfevent.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/wolfevent.c + + + src/wolfcrypt/src/wolfmath.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/wolfmath.c + + + src/wolfcrypt/test/README.md + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/test/README.md + + + src/wolfcrypt/test/include.am + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/test/include.am + + + src/wolfcrypt/test/test.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/test/test.c + + + src/wolfcrypt/test/test.h + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/test/test.h + + + src/wolfcrypt/test/test.sln + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/test/test.sln + + + src/wolfcrypt/test/test.vcproj + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/test/test.vcproj + + + src/wolfcrypt/src/port/arm + 2 + virtual:/virtual + + + src/wolfcrypt/src/port/nrf51.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/nrf51.c + + + src/wolfcrypt/src/port/xilinx + 2 + virtual:/virtual + + + src/wolfcrypt/src/port/arm/armv8-32-curve25519.S + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/armv8-32-curve25519.S + + + src/wolfcrypt/src/port/arm/armv8-32-curve25519.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/armv8-32-curve25519.c + + + src/wolfcrypt/src/port/arm/armv8-32-sha512-asm.S + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/armv8-32-sha512-asm.S + + + src/wolfcrypt/src/port/arm/armv8-32-sha512-asm.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/armv8-32-sha512-asm.c + + + src/wolfcrypt/src/port/arm/armv8-aes.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/armv8-aes.c + + + src/wolfcrypt/src/port/arm/armv8-chacha.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/armv8-chacha.c + + + src/wolfcrypt/src/port/arm/armv8-curve25519.S + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/armv8-curve25519.S + + + src/wolfcrypt/src/port/arm/armv8-curve25519.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/armv8-curve25519.c + + + src/wolfcrypt/src/port/arm/armv8-poly1305.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/armv8-poly1305.c + + + src/wolfcrypt/src/port/arm/armv8-sha256.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/armv8-sha256.c + + + src/wolfcrypt/src/port/arm/armv8-sha512-asm.S + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/armv8-sha512-asm.S + + + src/wolfcrypt/src/port/arm/armv8-sha512-asm.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/armv8-sha512-asm.c + + + src/wolfcrypt/src/port/arm/armv8-sha512.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/armv8-sha512.c + + + src/wolfcrypt/src/port/arm/cryptoCell.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/cryptoCell.c + + + src/wolfcrypt/src/port/arm/cryptoCellHash.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/arm/cryptoCellHash.c + + + src/wolfcrypt/src/port/xilinx/xil-aesgcm.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/xilinx/xil-aesgcm.c + + + src/wolfcrypt/src/port/xilinx/xil-sha3.c + 1 + PARENT-4-PROJECT_LOC/wolfcrypt/src/port/xilinx/xil-sha3.c + + + diff --git a/IDE/XilinxSDK/2019_2/wolfCrypt_example/src/lscript.ld b/IDE/XilinxSDK/2019_2/wolfCrypt_example/src/lscript.ld new file mode 100644 index 000000000..b881c337a --- /dev/null +++ b/IDE/XilinxSDK/2019_2/wolfCrypt_example/src/lscript.ld @@ -0,0 +1,309 @@ + +/* Linker Script for Zynq MP */ + +/* Stack and Heap increased to 64KB */ +_STACK_SIZE = DEFINED(_STACK_SIZE) ? _STACK_SIZE : 0x10000; +_HEAP_SIZE = DEFINED(_HEAP_SIZE) ? _HEAP_SIZE : 0x10000; + +_EL0_STACK_SIZE = DEFINED(_EL0_STACK_SIZE) ? _EL0_STACK_SIZE : 1024; +_EL1_STACK_SIZE = DEFINED(_EL1_STACK_SIZE) ? _EL1_STACK_SIZE : 2048; +_EL2_STACK_SIZE = DEFINED(_EL2_STACK_SIZE) ? _EL2_STACK_SIZE : 1024; + +/* Define Memories in the system */ +MEMORY +{ + ddr4_ctrl_C0_DDR4_ADDRESS_BLOCK : ORIGIN = 0x500000000, LENGTH = 0x20000000 + psu_ddr_0_MEM_0 : ORIGIN = 0x0, LENGTH = 0x7FF00000 + psu_ddr_1_MEM_0 : ORIGIN = 0x800000000, LENGTH = 0x80000000 + psu_ocm_ram_0_MEM_0 : ORIGIN = 0xFFFC0000, LENGTH = 0x40000 + psu_qspi_linear_0_MEM_0 : ORIGIN = 0xC0000000, LENGTH = 0x20000000 +} + +/* Specify the default entry point to the program */ +ENTRY(_vector_table) + +/* Define the sections, and where they are mapped in memory */ +SECTIONS +{ +.text : { + KEEP (*(.vectors)) + *(.boot) + *(.text) + *(.text.*) + *(.gnu.linkonce.t.*) + *(.plt) + *(.gnu_warning) + *(.gcc_execpt_table) + *(.glue_7) + *(.glue_7t) + *(.ARM.extab) + *(.gnu.linkonce.armextab.*) +} > psu_ddr_0_MEM_0 + +.init (ALIGN(64)) : { + KEEP (*(.init)) +} > psu_ddr_0_MEM_0 + +.fini (ALIGN(64)) : { + KEEP (*(.fini)) +} > psu_ddr_0_MEM_0 + +.interp : { + KEEP (*(.interp)) +} > psu_ddr_0_MEM_0 + +.note-ABI-tag : { + KEEP (*(.note-ABI-tag)) +} > psu_ddr_0_MEM_0 + +.rodata : { + . = ALIGN(64); + __rodata_start = .; + *(.rodata) + *(.rodata.*) + *(.gnu.linkonce.r.*) + __rodata_end = .; +} > psu_ddr_0_MEM_0 + +.rodata1 : { + . = ALIGN(64); + __rodata1_start = .; + *(.rodata1) + *(.rodata1.*) + __rodata1_end = .; +} > psu_ddr_0_MEM_0 + +.sdata2 : { + . = ALIGN(64); + __sdata2_start = .; + *(.sdata2) + *(.sdata2.*) + *(.gnu.linkonce.s2.*) + __sdata2_end = .; +} > psu_ddr_0_MEM_0 + +.sbss2 : { + . = ALIGN(64); + __sbss2_start = .; + *(.sbss2) + *(.sbss2.*) + *(.gnu.linkonce.sb2.*) + __sbss2_end = .; +} > psu_ddr_0_MEM_0 + +.data : { + . = ALIGN(64); + __data_start = .; + *(.data) + *(.data.*) + *(.gnu.linkonce.d.*) + *(.jcr) + *(.got) + *(.got.plt) + __data_end = .; +} > psu_ddr_0_MEM_0 + +.data1 : { + . = ALIGN(64); + __data1_start = .; + *(.data1) + *(.data1.*) + __data1_end = .; +} > psu_ddr_0_MEM_0 + +.got : { + *(.got) +} > psu_ddr_0_MEM_0 + +.got1 : { + *(.got1) +} > psu_ddr_0_MEM_0 + +.got2 : { + *(.got2) +} > psu_ddr_0_MEM_0 + +.ctors : { + . = ALIGN(64); + __CTOR_LIST__ = .; + ___CTORS_LIST___ = .; + KEEP (*crtbegin.o(.ctors)) + KEEP (*(EXCLUDE_FILE(*crtend.o) .ctors)) + KEEP (*(SORT(.ctors.*))) + KEEP (*(.ctors)) + __CTOR_END__ = .; + ___CTORS_END___ = .; +} > psu_ddr_0_MEM_0 + +.dtors : { + . = ALIGN(64); + __DTOR_LIST__ = .; + ___DTORS_LIST___ = .; + KEEP (*crtbegin.o(.dtors)) + KEEP (*(EXCLUDE_FILE(*crtend.o) .dtors)) + KEEP (*(SORT(.dtors.*))) + KEEP (*(.dtors)) + __DTOR_END__ = .; + ___DTORS_END___ = .; +} > psu_ddr_0_MEM_0 + +.fixup : { + __fixup_start = .; + *(.fixup) + __fixup_end = .; +} > psu_ddr_0_MEM_0 + +.eh_frame : { + *(.eh_frame) +} > psu_ddr_0_MEM_0 + +.eh_framehdr : { + __eh_framehdr_start = .; + *(.eh_framehdr) + __eh_framehdr_end = .; +} > psu_ddr_0_MEM_0 + +.gcc_except_table : { + *(.gcc_except_table) +} > psu_ddr_0_MEM_0 + +.mmu_tbl0 (ALIGN(4096)) : { + __mmu_tbl0_start = .; + *(.mmu_tbl0) + __mmu_tbl0_end = .; +} > psu_ddr_0_MEM_0 + +.mmu_tbl1 (ALIGN(4096)) : { + __mmu_tbl1_start = .; + *(.mmu_tbl1) + __mmu_tbl1_end = .; +} > psu_ddr_0_MEM_0 + +.mmu_tbl2 (ALIGN(4096)) : { + __mmu_tbl2_start = .; + *(.mmu_tbl2) + __mmu_tbl2_end = .; +} > psu_ddr_0_MEM_0 + +.ARM.exidx : { + __exidx_start = .; + *(.ARM.exidx*) + *(.gnu.linkonce.armexidix.*.*) + __exidx_end = .; +} > psu_ddr_0_MEM_0 + +.preinit_array : { + . = ALIGN(64); + __preinit_array_start = .; + KEEP (*(SORT(.preinit_array.*))) + KEEP (*(.preinit_array)) + __preinit_array_end = .; +} > psu_ddr_0_MEM_0 + +.init_array : { + . = ALIGN(64); + __init_array_start = .; + KEEP (*(SORT(.init_array.*))) + KEEP (*(.init_array)) + __init_array_end = .; +} > psu_ddr_0_MEM_0 + +.fini_array : { + . = ALIGN(64); + __fini_array_start = .; + KEEP (*(SORT(.fini_array.*))) + KEEP (*(.fini_array)) + __fini_array_end = .; +} > psu_ddr_0_MEM_0 + +.ARM.attributes : { + __ARM.attributes_start = .; + *(.ARM.attributes) + __ARM.attributes_end = .; +} > psu_ddr_0_MEM_0 + +.sdata : { + . = ALIGN(64); + __sdata_start = .; + *(.sdata) + *(.sdata.*) + *(.gnu.linkonce.s.*) + __sdata_end = .; +} > psu_ddr_0_MEM_0 + +.sbss (NOLOAD) : { + . = ALIGN(64); + __sbss_start = .; + *(.sbss) + *(.sbss.*) + *(.gnu.linkonce.sb.*) + . = ALIGN(64); + __sbss_end = .; +} > psu_ddr_0_MEM_0 + +.tdata : { + . = ALIGN(64); + __tdata_start = .; + *(.tdata) + *(.tdata.*) + *(.gnu.linkonce.td.*) + __tdata_end = .; +} > psu_ddr_0_MEM_0 + +.tbss : { + . = ALIGN(64); + __tbss_start = .; + *(.tbss) + *(.tbss.*) + *(.gnu.linkonce.tb.*) + __tbss_end = .; +} > psu_ddr_0_MEM_0 + +.bss (NOLOAD) : { + . = ALIGN(64); + __bss_start__ = .; + *(.bss) + *(.bss.*) + *(.gnu.linkonce.b.*) + *(COMMON) + . = ALIGN(64); + __bss_end__ = .; +} > psu_ddr_0_MEM_0 + +_SDA_BASE_ = __sdata_start + ((__sbss_end - __sdata_start) / 2 ); + +_SDA2_BASE_ = __sdata2_start + ((__sbss2_end - __sdata2_start) / 2 ); + +/* Generate Stack and Heap definitions */ + +.heap (NOLOAD) : { + . = ALIGN(64); + _heap = .; + HeapBase = .; + _heap_start = .; + . += _HEAP_SIZE; + _heap_end = .; + HeapLimit = .; +} > psu_ddr_0_MEM_0 + +.stack (NOLOAD) : { + . = ALIGN(64); + _el3_stack_end = .; + . += _STACK_SIZE; + __el3_stack = .; + _el2_stack_end = .; + . += _EL2_STACK_SIZE; + . = ALIGN(64); + __el2_stack = .; + _el1_stack_end = .; + . += _EL1_STACK_SIZE; + . = ALIGN(64); + __el1_stack = .; + _el0_stack_end = .; + . += _EL0_STACK_SIZE; + . = ALIGN(64); + __el0_stack = .; +} > psu_ddr_0_MEM_0 + +_end = .; +} diff --git a/IDE/XilinxSDK/2019_2/wolfCrypt_example_system/.cproject b/IDE/XilinxSDK/2019_2/wolfCrypt_example_system/.cproject new file mode 100644 index 000000000..8e977275f --- /dev/null +++ b/IDE/XilinxSDK/2019_2/wolfCrypt_example_system/.cproject @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/IDE/XilinxSDK/2019_2/wolfCrypt_example_system/.project b/IDE/XilinxSDK/2019_2/wolfCrypt_example_system/.project new file mode 100644 index 000000000..004363c50 --- /dev/null +++ b/IDE/XilinxSDK/2019_2/wolfCrypt_example_system/.project @@ -0,0 +1,28 @@ + + + wolfCrypt_example_system + + + wolfCrypt_example + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + com.xilinx.sdx.system.systemprojectnature + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.core.ccnature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/IDE/XilinxSDK/README.md b/IDE/XilinxSDK/README.md index 7b131a070..bf923f1e1 100644 --- a/IDE/XilinxSDK/README.md +++ b/IDE/XilinxSDK/README.md @@ -1,58 +1,111 @@ -# Xilinx SDK wolfCrypt Project - -To use this example project: -1. Start a new workspace -2. Create a new BSP called `standalone_bsp_0`. -3. Copy `.cproject` and `.project` into the wolfSSL root. -4. From the Xilinx SDK Import wolfBoot using "Import" -> "Existing Projects into Workspace". - -## Platform - -Tested on the Zynq UltraScale+ MPSoC (ZUC102). - -This is a bare-metal example for wolfCrypt only with algorithm support for: -* RNG -* RSA -* ECC -* AES-GCM -* ChaCha20 -* Poly1305 -* SHA2 -* SHA3 -* PBKDF2 - -## Benchmark Results - -``` ------------------------------------------------------------------------------- - wolfSSL version 4.3.0 ------------------------------------------------------------------------------- -wolfCrypt Benchmark (block bytes 1024, min sec each) -RNG 72 MB took 1.000 seconds, 72.388 MB/s -AES-128-GCM-enc 370 MB took 1.000 seconds, 370.312 MB/s -AES-128-GCM-dec 187 MB took 1.000 seconds, 187.451 MB/s -AES-192-GCM-enc 341 MB took 1.000 seconds, 341.382 MB/s -AES-192-GCM-dec 180 MB took 1.000 seconds, 179.663 MB/s -AES-256-GCM-enc 316 MB took 1.000 seconds, 316.382 MB/s -AES-256-GCM-dec 172 MB took 1.000 seconds, 172.485 MB/s -CHACHA 256 MB took 1.000 seconds, 255.859 MB/s -CHA-POLY 98 MB took 1.000 seconds, 97.559 MB/s -POLY1305 517 MB took 1.000 seconds, 516.895 MB/s -SHA-256 535 MB took 1.000 seconds, 534.595 MB/s -SHA-384 123 MB took 1.000 seconds, 123.291 MB/s -SHA-512 124 MB took 1.000 seconds, 123.657 MB/s -SHA3-224 70 MB took 1.000 seconds, 70.337 MB/s -SHA3-256 67 MB took 1.000 seconds, 66.528 MB/s -SHA3-384 53 MB took 1.000 seconds, 52.710 MB/s -SHA3-512 38 MB took 1.000 seconds, 37.598 MB/s -HMAC-SHA256 520 MB took 1.000 seconds, 520.093 MB/s -HMAC-SHA384 121 MB took 1.000 seconds, 121.265 MB/s -HMAC-SHA512 121 MB took 1.000 seconds, 121.289 MB/s -PBKDF2 28 KB took 1.000 seconds, 28.375 KB/s -ECC 256 key gen 8518 ops took 1.000 sec, avg 0.117 ms, 8518.000 ops/sec -ECDHE 256 agree 1818 ops took 1.000 sec, avg 0.550 ms, 1818.000 ops/sec -ECDSA 256 sign 4448 ops took 1.000 sec, avg 0.225 ms, 4448.000 ops/sec -ECDSA 256 verify 1430 ops took 1.000 sec, avg 0.699 ms, 1430.000 ops/sec -Benchmark complete -Benchmark Test: Return code 0 -``` +# Common Gotcha's + +- If compiling all code togther (ie no sperate wolfssl library) than the -fPIC compiler flag should be used. Without using -fPIC in this build setup there could be unexpected failures. +- If building with ARMv8 crypto extensions then the compiler flags "-mstrict-align -mcpu=generic+crypto" must be used. +- Check that enough stack and heap memory is set for the operations if a crash or stall happens. + +# Xilinx SDK wolfCrypt Vitis 2018.2 Project + +To use this example project: +1. Start a new workspace +2. Create a new BSP called `standalone_bsp_0`. +3. Copy `.cproject` and `.project` from IDE/XilinxSDK/2018_2 into the wolfSSL root. +4. From the Xilinx SDK Import wolfBoot using "Import" -> "Existing Projects into Workspace". + + +# Detailed Instructions For Example Use With Vitis 2019.2 + +1. Create a new workspace located in the directory wolfssl/IDE/XilinxSDK/2019_2 +2. Create a new BSP, by selecting; + - File->New->Platform Project + - Setting "Project name" to standalone_bsp_0, then click "Next" + - Select the "Create from hardware specification" radius and click "Next" + - "Browse..." to the desired XSA file for the hardare + - (optional) change Processor to R5 now + - click "Finish" +3. (optional) If building for TLS support than expand the standalone_bsp_0 project, double click on platform_spr, Expand the cpu (i.e psu_cortexa53_0), click on Board Support Package, select the "Modify BSP Settings..." box and click on lwip211. Note that the api_mode should be changed from RAW API to SOCKET API. +4. Right click on the standalone_bsp_0 project and click on "Build Project" +5. Import the wolfcrypt example project "File->Import->Eclipse workspace or zip file" +6. Uncheck "Copy projects into workspace" +7. Select the root directory of wolfssl/IDE/XilinxSDK/2019_2, and select wolfCrypt_example and wolfCrypt_example_system. Then click "Finish" + + +# Steps For Creating Project From Scratch + +1. Create a new workspace +2. Create a new BSP, by selecting; + - File->New->Platform Project + - Setting "Project name" to standalone_bsp_0, then click "Next" + - Select the "Create from hardware specification" radius and click "Next" + - "Browse..." to the desired XSA file for the hardare + - (optional) change Processor to R5 now + - click "Finish" +3. (optional) If building for TLS support than expand the standalone_bsp_0 project, double click on platform_spr, Expand the cpu (i.e psu_cortexa53_0), click on Board Support Package, select the "Modify BSP Settings..." box and click on lwip211. Note that the api_mode should be changed from RAW API to SOCKET API. +4. Right click on the standalone_bsp_0 project and click on "Build Project" +5. Create wolfssl project File->New->Application Project +6. Name the project wolfCrypt_example, select "Next" +7. For the platform select standalone_bsp_0 and click next, then next once more on Domain. +8. Select "Empty Application" and click "Finish" +9. Expand the wolfCrypt_example project and right click on the folder "src". +10. Select "Import Sources" and set the "From directory" to be the wolfssl root directory. +11. Select the folders to import as ./src, ./IDE/XilinxSDK, ./wolfcrypt/benchmark, ./wolfcrypt/test, ./wolfcrypt/src +12. (optional) Expand the Advanced tabe and select "Create links in workspace" +13. Click on "Finish" +14. Expand the wolfcrypt/src directory and exlude all .S files from the build +15. Right click on the wolfCrypt_example project and got to Properties. Set the macro WOLFSSL_USER_SETTINGS in C/C++ Build->Settings->ARM v8 gcc compiler->Symbols +16. Set the include path for finding user_settings.h by going to the Properties and setting it in C/C++ Build->Settings->ARM v8 gcc compiler->Directories. This is to the directory wolfssl/IDE/XilinxSDK +17. Set the include path for finding wolfSSL headers. To the root directory wolfssl +18. Add compiler flags "-fPIC -mstrict-align -mcpu=generic+crypto" to the project properties. C/C++ Build->Settings->ARM v8 gcc compiler->Miscellaneous +19. Right click on wolfCrypt_example and "Build Project" + + +## Platform + +Tested on the Zynq UltraScale+ MPSoC (ZUC102). + +This is a bare-metal example for wolfCrypt only with algorithm support for: +* RNG +* RSA +* ECC +* AES-GCM +* ChaCha20 +* Poly1305 +* SHA2 +* SHA3 +* PBKDF2 + +## Benchmark Results + +``` +------------------------------------------------------------------------------ + wolfSSL version 4.3.0 +------------------------------------------------------------------------------ +wolfCrypt Benchmark (block bytes 1024, min sec each) +RNG 72 MB took 1.000 seconds, 72.388 MB/s +AES-128-GCM-enc 370 MB took 1.000 seconds, 370.312 MB/s +AES-128-GCM-dec 187 MB took 1.000 seconds, 187.451 MB/s +AES-192-GCM-enc 341 MB took 1.000 seconds, 341.382 MB/s +AES-192-GCM-dec 180 MB took 1.000 seconds, 179.663 MB/s +AES-256-GCM-enc 316 MB took 1.000 seconds, 316.382 MB/s +AES-256-GCM-dec 172 MB took 1.000 seconds, 172.485 MB/s +CHACHA 256 MB took 1.000 seconds, 255.859 MB/s +CHA-POLY 98 MB took 1.000 seconds, 97.559 MB/s +POLY1305 517 MB took 1.000 seconds, 516.895 MB/s +SHA-256 535 MB took 1.000 seconds, 534.595 MB/s +SHA-384 123 MB took 1.000 seconds, 123.291 MB/s +SHA-512 124 MB took 1.000 seconds, 123.657 MB/s +SHA3-224 70 MB took 1.000 seconds, 70.337 MB/s +SHA3-256 67 MB took 1.000 seconds, 66.528 MB/s +SHA3-384 53 MB took 1.000 seconds, 52.710 MB/s +SHA3-512 38 MB took 1.000 seconds, 37.598 MB/s +HMAC-SHA256 520 MB took 1.000 seconds, 520.093 MB/s +HMAC-SHA384 121 MB took 1.000 seconds, 121.265 MB/s +HMAC-SHA512 121 MB took 1.000 seconds, 121.289 MB/s +PBKDF2 28 KB took 1.000 seconds, 28.375 KB/s +ECC 256 key gen 8518 ops took 1.000 sec, avg 0.117 ms, 8518.000 ops/sec +ECDHE 256 agree 1818 ops took 1.000 sec, avg 0.550 ms, 1818.000 ops/sec +ECDSA 256 sign 4448 ops took 1.000 sec, avg 0.225 ms, 4448.000 ops/sec +ECDSA 256 verify 1430 ops took 1.000 sec, avg 0.699 ms, 1430.000 ops/sec +Benchmark complete +Benchmark Test: Return code 0 +``` diff --git a/IDE/XilinxSDK/include.am b/IDE/XilinxSDK/include.am index 26b136e86..e174daa84 100644 --- a/IDE/XilinxSDK/include.am +++ b/IDE/XilinxSDK/include.am @@ -5,6 +5,11 @@ EXTRA_DIST+= IDE/XilinxSDK/README.md EXTRA_DIST+= IDE/XilinxSDK/user_settings.h EXTRA_DIST+= IDE/XilinxSDK/wolfssl_example.c -EXTRA_DIST+= IDE/XilinxSDK/lscript.ld -EXTRA_DIST+= IDE/XilinxSDK/.cproject -EXTRA_DIST+= IDE/XilinxSDK/.project +EXTRA_DIST+= IDE/XilinxSDK/2018_2/lscript.ld +EXTRA_DIST+= IDE/XilinxSDK/2018_2/.cproject +EXTRA_DIST+= IDE/XilinxSDK/2018_2/.project +EXTRA_DIST+= IDE/XilinxSDK/2019_2/wolfCrypt_example/.cproject +EXTRA_DIST+= IDE/XilinxSDK/2019_2/wolfCrypt_example/.project +EXTRA_DIST+= IDE/XilinxSDK/2019_2/wolfCrypt_example/src/lscript.ld +EXTRA_DIST+= IDE/XilinxSDK/2019_2/wolfCrypt_example_system/.cproject +EXTRA_DIST+= IDE/XilinxSDK/2019_2/wolfCrypt_example_system/.project