tf_fuzz: refactor directory structure
Move all C++ source and files related to the C++ tfz binary into a
tfz-cpp subdirectory, and create a new Python project for the suite
generator.
Change-Id: I15aa0ba20e83d6713d17d25b6d636f63ac14f229
Signed-off-by: Nik Dewally <Nik.Dewally@arm.com>
diff --git a/.gitignore b/.gitignore
index 0487503..c077ec3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,6 +8,8 @@
**/__pycache__
*.uvguix.*
*.uvmpw.uvgui.*
+.venv/
+*.egg-info/
# Eclipse
*.project
@@ -20,6 +22,7 @@
# build files
build*/
+bin/
*.o
# bison and flex generated files
@@ -27,7 +30,7 @@
*.tab.*
*.output
-# binarys
+# binaries
tfz
# clangd
diff --git a/docs/tf_fuzz/source_structure/asset_dir.rst b/docs/tf_fuzz/source_structure/asset_dir.rst
index 4eb358d..46d34d8 100644
--- a/docs/tf_fuzz/source_structure/asset_dir.rst
+++ b/docs/tf_fuzz/source_structure/asset_dir.rst
@@ -1,6 +1,6 @@
-########################
-'assets'-directory guide
-########################
+################################
+'tfz-cpp/assets'-directory guide
+################################
************
Introduction
@@ -11,9 +11,9 @@
during the Simulate phase, after Parse phase, which parses the test-template
file, and prior to writing out the generated C code.
-***********************************************
-``.../tools/tf_fuzz/assets`` directory contents
-***********************************************
+*********************************************
+``tf_fuzz/tfz-cpp/assets`` directory contents
+*********************************************
.. code-block:: bash
crypto_asset.cpp psa_asset.cpp sst_asset.cpp
diff --git a/docs/tf_fuzz/source_structure/boilerplate_dir.rst b/docs/tf_fuzz/source_structure/boilerplate_dir.rst
index d4aea0e..e21bfb3 100644
--- a/docs/tf_fuzz/source_structure/boilerplate_dir.rst
+++ b/docs/tf_fuzz/source_structure/boilerplate_dir.rst
@@ -1,19 +1,19 @@
-#############################
-'boilerplate'-directory guide
-#############################
+#####################################
+'tfz-cpp/boilerplate'-directory guide
+#####################################
************
Introduction
************
This directory contains the C++ header and code files to work with the
-customizable, "boilerplate" code snippets in the ``...tools/tf_fuzz/lib``
+customizable, "boilerplate" code snippets in the ``tf_fuzz/lib``
directory. Mostly what this code does is read these code snippets into an
STL ``vector`` of, essentially, named strings.
-****************************************************
-``.../tools/tf_fuzz/boilerplate`` directory contents
-****************************************************
+**************************************************
+``tf_fuzz/tfz-cpp/boilerplate`` directory contents
+**************************************************
.. code-block:: bash
boilerplate.cpp boilerplate.hpp
diff --git a/docs/tf_fuzz/source_structure/calls_dir.rst b/docs/tf_fuzz/source_structure/calls_dir.rst
index 17c2491..5eb0e63 100644
--- a/docs/tf_fuzz/source_structure/calls_dir.rst
+++ b/docs/tf_fuzz/source_structure/calls_dir.rst
@@ -1,6 +1,6 @@
-#######################
-'calls'-directory guide
-#######################
+###############################
+'tfz-cpp/calls'-directory guide
+###############################
************
Introduction
@@ -16,9 +16,9 @@
Each ``psa_call``-subclass object encapsulates the initial and expected data,
expected pass/fail results, and other information about the call.
-**********************************************
-``.../tools/tf_fuzz/calls`` directory contents
-**********************************************
+********************************************
+``tf_fuzz/tfz-cpp/calls`` directory contents
+********************************************
.. code-block:: bash
crypto_call.cpp psa_call.cpp security_call.cpp sst_call.cpp
diff --git a/docs/tf_fuzz/source_structure/demo_dir.rst b/docs/tf_fuzz/source_structure/demo_dir.rst
index fb49fe7..e137a87 100644
--- a/docs/tf_fuzz/source_structure/demo_dir.rst
+++ b/docs/tf_fuzz/source_structure/demo_dir.rst
@@ -25,9 +25,9 @@
that is, TF-Fuzz only provides a very-compact test-specification format. As
the test number increases, the TF-Fuzz tool infers for you more about test.
-*********************************************
-``.../tools/tf_fuzz/demo`` directory contents
-*********************************************
+***********************************
+``tf_fuzz/demo`` directory contents
+***********************************
.. code-block:: bash
1 10 11 12 13 14 15 16 17 18 19 2 3 4 5 6 7 8 9 r
diff --git a/docs/tf_fuzz/source_structure/lib_dir.rst b/docs/tf_fuzz/source_structure/lib_dir.rst
index fbc54dd..065ebe3 100644
--- a/docs/tf_fuzz/source_structure/lib_dir.rst
+++ b/docs/tf_fuzz/source_structure/lib_dir.rst
@@ -9,7 +9,7 @@
This directory contains the customizable "boilerplate" code snippets used to
write out C source code. The file in this directory currently, is that for
TF-M, but other comparable frameworks could be addressed with equivalent files
-taylored for the required syntax of that other framework.
+tailored for the required syntax of that other framework.
Which file to use for this process is selected by setting two environment
variables pointing to that file: One for the ``lib`` directory and one for the
@@ -21,9 +21,9 @@
export TF_FUZZ_BPLATE=tfm_boilerplate.txt
-********************************************
-``.../tools/tf_fuzz/lib`` directory contents
-********************************************
+**********************************
+``tf_fuzz/lib`` directory contents
+**********************************
.. code-block:: bash
tfm_boilerplate.txt
diff --git a/docs/tf_fuzz/source_structure/parser_dir.rst b/docs/tf_fuzz/source_structure/parser_dir.rst
index ddbca5a..c3403eb 100644
--- a/docs/tf_fuzz/source_structure/parser_dir.rst
+++ b/docs/tf_fuzz/source_structure/parser_dir.rst
@@ -1,6 +1,6 @@
-########################
-'parser'-directory guide
-########################
+################################
+'tfz-cpp/parser'-directory guide
+################################
************
Introduction
@@ -10,9 +10,9 @@
test-template language easily extensible. Much of the actual work is done in
helper functions, but the Lex/YACC grammar manages the process.
-***********************************************
-``.../tools/tf_fuzz/parser`` directory contents
-***********************************************
+*********************************************
+``tf_fuzz/tfz-cpp/parser`` directory contents
+*********************************************
.. code-block:: bash
tf_fuzz_grammar.l tf_fuzz_grammar.y
diff --git a/docs/tf_fuzz/source_structure/regression_dir.rst b/docs/tf_fuzz/source_structure/regression_dir.rst
index ec4ea6d..cda98fd 100644
--- a/docs/tf_fuzz/source_structure/regression_dir.rst
+++ b/docs/tf_fuzz/source_structure/regression_dir.rst
@@ -1,6 +1,6 @@
-############################
-'regression'-directory guide
-############################
+####################################
+'tfz-cpp/regression'-directory guide
+####################################
************
Introduction
@@ -13,9 +13,9 @@
``*active`` and ``*deleted``, nor ``shuffle`` and ``2 to 5 of {...}``
constructs.
-***************************************************
-``.../tools/tf_fuzz/regression`` directory contents
-***************************************************
+*************************************************
+``tf_fuzz/tfz-cpp/regression`` directory contents
+*************************************************
.. code-block:: bash
000001_set_sst_uid_data_expect_pass
diff --git a/docs/tf_fuzz/source_structure/template_dir.rst b/docs/tf_fuzz/source_structure/template_dir.rst
index 86dbbfa..e536098 100644
--- a/docs/tf_fuzz/source_structure/template_dir.rst
+++ b/docs/tf_fuzz/source_structure/template_dir.rst
@@ -1,6 +1,6 @@
-##########################
-'template'-directory guide
-##########################
+##################################
+'tfz-cpp/template'-directory guide
+##################################
************
Introduction
@@ -9,9 +9,9 @@
These classes describe "tracker" objects for parsing test templates, and for
generating PSA calls from them.
-*************************************************
-``.../tools/tf_fuzz/template`` directory contents
-*************************************************
+***********************************************
+``tf_fuzz/tfz-cpp/template`` directory contents
+***********************************************
.. code-block:: bash
crypto_template_line.cpp secure_template_line.hpp template_line.cpp
diff --git a/docs/tf_fuzz/source_structure/tests_dir.rst b/docs/tf_fuzz/source_structure/tests_dir.rst
index 8226451..ea20915 100644
--- a/docs/tf_fuzz/source_structure/tests_dir.rst
+++ b/docs/tf_fuzz/source_structure/tests_dir.rst
@@ -1,6 +1,6 @@
-#######################
-'tests'-directory guide
-#######################
+###############################
+'tfz-cpp/tests'-directory guide
+###############################
************
Introduction
@@ -9,9 +9,9 @@
These are just more examples of test-template-file content. They're not really
organized *tests* as such.
-**********************************************
-``.../tools/tf_fuzz/tests`` directory contents
-**********************************************
+********************************************
+``tf_fuzz/tfz-cpp/tests`` directory contents
+********************************************
.. code-block:: bash
example_template sstReads sstSets
diff --git a/docs/tf_fuzz/source_structure/utility_dir.rst b/docs/tf_fuzz/source_structure/utility_dir.rst
index 89ad060..2af3d66 100644
--- a/docs/tf_fuzz/source_structure/utility_dir.rst
+++ b/docs/tf_fuzz/source_structure/utility_dir.rst
@@ -1,17 +1,17 @@
-#########################
-'utility'-directory guide
-#########################
+#################################
+'tfz-cpp/utility'-directory guide
+#################################
************
Introduction
************
-As its name implies, this ``.../tf_fuzz/utility`` directory just contains
+As its name implies, this ``tf_fuzz/tfz-cpp/utility`` directory just contains
various utility-compute code.
-************************************************
-``.../tools/tf_fuzz/utility`` directory contents
-************************************************
+**********************************************
+``tf_fuzz/tfz-cpp/utility`` directory contents
+**********************************************
.. code-block:: bash
compute.cpp find_or_create_asset.hpp randomization.cpp string_ops.hpp
diff --git a/docs/tf_fuzz/source_structure/visualStudio_dir.rst b/docs/tf_fuzz/source_structure/visualStudio_dir.rst
index a70bbf8..be9894e 100644
--- a/docs/tf_fuzz/source_structure/visualStudio_dir.rst
+++ b/docs/tf_fuzz/source_structure/visualStudio_dir.rst
@@ -1,6 +1,6 @@
-##############################
-'visualStudio'-directory guide
-##############################
+######################################
+'tfz-cpp/visualStudio'-directory guide
+######################################
************
Introduction
@@ -14,9 +14,9 @@
up-coming "interactive mode" for interactively creating test templates may
need an actual working ``isatty()``, but that's not ready yet.
-*************************************************
-.../tools/tf_fuzz/visualStudio directory contents
-*************************************************
+***********************************************
+tf_fuzz/tfz-cpp/visualStudio directory contents
+***********************************************
.. code-block:: bash
unistd.c unistd.h
diff --git a/tf_fuzz/Makefile b/tf_fuzz/Makefile
index 0e98dc6..e8d24ec 100644
--- a/tf_fuzz/Makefile
+++ b/tf_fuzz/Makefile
@@ -1,231 +1,39 @@
-# Copyright (c) 2019-2020, Arm Limited. All rights reserved.
+# Copyright (c) 2024 Arm Limited. All Rights Reserved.
#
-# SPDX-License-Identifier: BSD-3-Clause
-#
+# SPDX-License-Identifier: BSD-3-Clause
-.PHONY: default
-default: tfz;
-edit:
- $(EDITOR) template/template_line.hpp \
- template/sst_template_line.hpp template/crypto_template_line.hpp \
- template/secure_template_line.hpp calls/psa_call.hpp calls/sst_call.hpp \
- calls/crypto_call.hpp calls/security_call.hpp assets/psa_asset.hpp \
- assets/sst_asset.hpp assets/crypto_asset.hpp utility/data_blocks.hpp \
- utility/variables.hpp utility/gibberish.hpp utility/randomization.hpp \
- utility/find_or_create_asset.hpp utility/string_ops.hpp \
- utility/compute.hpp boilerplate/boilerplate.hpp \
- utility/find_or_create_asset.hpp class_forwards.hpp tf_fuzz.hpp \
- parser/tf_fuzz_grammar.l parser/tf_fuzz_grammar.y \
- template/template_line.cpp \
- template/sst_template_line.cpp template/crypto_template_line.cpp \
- template/secure_template_line.cpp calls/psa_call.cpp calls/sst_call.cpp \
- calls/crypto_call.cpp calls/security_call.cpp assets/psa_asset.cpp \
- assets/sst_asset.cpp assets/crypto_asset.cpp utility/data_blocks.cpp \
- utility/gibberish.cpp utility/randomization.cpp utility/string_ops.cpp \
- utility/compute.cpp \
- boilerplate/boilerplate.cpp tf_fuzz.cpp \
- tests/example_template tests/sstSets tests/sstReads \
- lib/tfm_boilerplate.txt boilerplate/boilerplate.hpp \
- Makefile README assets/README \
- boilerplate/README calls/README demo/README lib/README parser/README \
- template/README tests/README regression/README utility/README \
- visualStudio/README &
+###############################
+# USER COMMANDS #
+###############################
-edit3:
- $(EDITOR) template/template_line.hpp \
- template/sst_template_line.hpp template/crypto_template_line.hpp \
- template/secure_template_line.hpp calls/psa_call.hpp calls/sst_call.hpp \
- calls/crypto_call.hpp calls/security_call.hpp assets/psa_asset.hpp \
- assets/sst_asset.hpp assets/crypto_asset.hpp utility/data_blocks.hpp \
- utility/variables.hpp utility/gibberish.hpp utility/randomization.hpp \
- utility/find_or_create_asset.hpp utility/string_ops.hpp \
- utility/compute.hpp boilerplate/boilerplate.hpp \
- utility/find_or_create_asset.hpp class_forwards.hpp tf_fuzz.hpp &
- $(EDITOR) parser/tf_fuzz_grammar.l parser/tf_fuzz_grammar.y \
- template/template_line.cpp \
- template/sst_template_line.cpp template/crypto_template_line.cpp \
- template/secure_template_line.cpp calls/psa_call.cpp calls/sst_call.cpp \
- calls/crypto_call.cpp calls/security_call.cpp assets/psa_asset.cpp \
- assets/sst_asset.cpp assets/crypto_asset.cpp utility/data_blocks.cpp \
- utility/variables.cpp utility/gibberish.cpp utility/randomization.cpp \
- utility/string_ops.cpp utility/compute.cpp boilerplate/boilerplate.cpp \
- tf_fuzz.cpp &
- $(EDITOR) tests/example_template Makefile tests/sstSets tests/sstReads \
- lib/tfm_boilerplate.txt boilerplate/boilerplate.hpp &
+## all: build all TF-Fuzz binaries.
+.PHONY: all
+all: tfz
-includes = -I . -I ./parser -I ./template -I ./assets -I ./calls -I ./boilerplate -I ./utility
+## tfz: build the tfz binary.
+.PHONY: tfz
+tfz: bin/tfz
-parser/tf_fuzz_grammar.tab.hpp: parser/tf_fuzz_grammar.y class_forwards.hpp \
-boilerplate/boilerplate.hpp utility/gibberish.hpp utility/string_ops.hpp \
-tf_fuzz.hpp utility/data_blocks.hpp utility/variables.hpp \
-utility/find_or_create_asset.hpp assets/psa_asset.hpp \
-assets/sst_asset.hpp assets/crypto_asset.hpp calls/psa_call.hpp \
-template/template_line.hpp Makefile
- rm -f parser/tf_fuzz_grammar.tab.hpp parser/tf_fuzz_grammar.tab.cpp \
- parser/tf_fuzz_grammar.tab.o
- bison --verbose -d parser/tf_fuzz_grammar.y -o \
- parser/tf_fuzz_grammar.tab.cpp
-
-parser/tf_fuzz_grammar.tab.cpp: parser/tf_fuzz_grammar.y class_forwards.hpp \
-boilerplate/boilerplate.hpp utility/gibberish.hpp utility/string_ops.hpp \
-tf_fuzz.hpp utility/data_blocks.hpp utility/variables.hpp \
-utility/find_or_create_asset.hpp assets/psa_asset.hpp \
-assets/sst_asset.hpp assets/crypto_asset.hpp calls/psa_call.hpp \
-template/template_line.hpp Makefile
- rm -f parser/tf_fuzz_grammar.tab.hpp parser/tf_fuzz_grammar.tab.cpp \
- parser/tf_fuzz_grammar.tab.o
- bison --verbose -d parser/tf_fuzz_grammar.y -o \
- parser/tf_fuzz_grammar.tab.cpp
-
-parser/tf_fuzz_grammar.lex.c: parser/tf_fuzz_grammar.l \
-parser/tf_fuzz_grammar.tab.hpp Makefile
- lex --outfile=parser/tf_fuzz_grammar.lex.c parser/tf_fuzz_grammar.l
-parser/tf_fuzz_grammar.lex.o: parser/tf_fuzz_grammar.lex.c Makefile
- g++ -std=gnu++11 -O0 -g -c -I /usr/include $(includes) -o parser/tf_fuzz_grammar.lex.o \
- parser/tf_fuzz_grammar.lex.c
-
-parser/tf_fuzz_grammar.tab.o: parser/tf_fuzz_grammar.lex.o \
-parser/tf_fuzz_grammar.tab.cpp parser/tf_fuzz_grammar.tab.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c -I /usr/include $(includes) -o \
- parser/tf_fuzz_grammar.tab.o parser/tf_fuzz_grammar.tab.cpp
-
-utility/data_blocks.o: utility/data_blocks.hpp utility/data_blocks.cpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o utility/data_blocks.o \
- utility/data_blocks.cpp
-
-utility/variables.o: utility/find_or_create_asset.hpp \
-utility/variables.hpp utility/variables.cpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o utility/variables.o \
- utility/variables.cpp
-
-template/template_line.o: utility/randomization.hpp template/template_line.cpp \
-class_forwards.hpp boilerplate/boilerplate.hpp tf_fuzz.hpp calls/psa_call.hpp \
-assets/psa_asset.hpp utility/data_blocks.hpp template/template_line.hpp \
-assets/sst_asset.hpp assets/crypto_asset.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o template/template_line.o \
- template/template_line.cpp
-
-template/sst_template_line.o: template/sst_template_line.cpp class_forwards.hpp \
-boilerplate/boilerplate.hpp tf_fuzz.hpp calls/psa_call.hpp assets/psa_asset.hpp \
-utility/data_blocks.hpp template/template_line.hpp template/sst_template_line.hpp \
-assets/sst_asset.hpp assets/crypto_asset.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o template/sst_template_line.o \
- template/sst_template_line.cpp
-
-template/crypto_template_line.o: template/crypto_template_line.cpp \
-class_forwards.hpp boilerplate/boilerplate.hpp tf_fuzz.hpp calls/psa_call.hpp \
-assets/psa_asset.hpp utility/data_blocks.hpp template/template_line.hpp \
-assets/sst_asset.hpp assets/crypto_asset.hpp template/crypto_template_line.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o template/crypto_template_line.o \
- template/crypto_template_line.cpp
-
-template/secure_template_line.o: utility/randomization.hpp class_forwards.hpp \
-boilerplate/boilerplate.hpp tf_fuzz.hpp calls/psa_call.hpp \
-assets/psa_asset.hpp utility/data_blocks.hpp template/secure_template_line.hpp \
-assets/sst_asset.hpp assets/crypto_asset.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o template/secure_template_line.o \
- template/secure_template_line.cpp
-
-assets/psa_asset.o: assets/psa_asset.cpp class_forwards.hpp \
-boilerplate/boilerplate.hpp tf_fuzz.hpp utility/data_blocks.hpp calls/psa_call.hpp \
-assets/psa_asset.hpp template/template_line.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o assets/psa_asset.o \
- assets/psa_asset.cpp
-
-assets/sst_asset.o: assets/sst_asset.cpp class_forwards.hpp \
-boilerplate/boilerplate.hpp utility/data_blocks.hpp tf_fuzz.hpp calls/psa_call.hpp \
-assets/psa_asset.hpp template/template_line.hpp assets/sst_asset.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o assets/sst_asset.o \
- assets/sst_asset.cpp
-
-assets/crypto_asset.o: utility/randomization.hpp assets/crypto_asset.cpp \
-class_forwards.hpp boilerplate/boilerplate.hpp tf_fuzz.hpp utility/data_blocks.hpp \
-calls/psa_call.hpp assets/psa_asset.hpp assets/crypto_asset.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o assets/crypto_asset.o \
- assets/crypto_asset.cpp
-
-calls/psa_call.o: calls/psa_call.cpp class_forwards.hpp \
-boilerplate/boilerplate.hpp utility/data_blocks.hpp utility/variables.hpp tf_fuzz.hpp \
-calls/psa_call.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o calls/psa_call.o calls/psa_call.cpp
-
-calls/sst_call.o: calls/sst_call.cpp class_forwards.hpp \
-boilerplate/boilerplate.hpp tf_fuzz.hpp calls/psa_call.hpp assets/psa_asset.hpp \
-template/template_line.hpp utility/data_blocks.hpp utility/variables.hpp \
-calls/sst_call.hpp assets/sst_asset.hpp assets/crypto_asset.hpp utility/string_ops.hpp \
-Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o calls/sst_call.o \
- calls/sst_call.cpp
-
-calls/crypto_call.o: utility/randomization.hpp calls/crypto_call.cpp \
-class_forwards.hpp boilerplate/boilerplate.hpp utility/string_ops.hpp \
-tf_fuzz.hpp calls/psa_call.hpp utility/data_blocks.hpp utility/variables.hpp \
-assets/psa_asset.hpp template/template_line.hpp \
-calls/crypto_call.hpp assets/sst_asset.hpp assets/crypto_asset.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o calls/crypto_call.o \
- calls/crypto_call.cpp
-
-calls/security_call.o: utility/randomization.hpp calls/security_call.hpp \
-calls/security_call.cpp class_forwards.hpp boilerplate/boilerplate.hpp \
-utility/string_ops.hpp utility/data_blocks.hpp utility/variables.hpp tf_fuzz.hpp \
-calls/psa_call.hpp assets/psa_asset.hpp template/template_line.hpp \
-calls/security_call.hpp assets/sst_asset.hpp \
-Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o calls/security_call.o \
- calls/security_call.cpp
-
-boilerplate/boilerplate.o: boilerplate/boilerplate.cpp class_forwards.hpp \
-boilerplate/boilerplate.hpp tf_fuzz.hpp calls/psa_call.hpp assets/psa_asset.hpp \
-template/template_line.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o boilerplate/boilerplate.o \
- boilerplate/boilerplate.cpp
-
-utility/gibberish.o: utility/gibberish.cpp class_forwards.hpp \
-utility/gibberish.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o utility/gibberish.o \
- utility/gibberish.cpp
-
-utility/string_ops.o: utility/string_ops.cpp utility/string_ops.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o utility/string_ops.o \
- utility/string_ops.cpp
-
-utility/randomization.o: utility/randomization.cpp utility/randomization.hpp \
-Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o utility/randomization.o \
- utility/randomization.cpp
-
-utility/compute.o: utility/compute.cpp utility/compute.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o utility/compute.o \
- utility/compute.cpp
-
-tf_fuzz.o: tf_fuzz.cpp class_forwards.hpp boilerplate/boilerplate.hpp tf_fuzz.hpp \
-calls/psa_call.hpp assets/psa_asset.hpp utility/data_blocks.hpp utility/variables.hpp \
-template/template_line.hpp parser/tf_fuzz_grammar.tab.hpp Makefile
- g++ -Wall -std=c++11 -O0 -g -c $(includes) -o tf_fuzz.o tf_fuzz.cpp
-
-tfz: parser/tf_fuzz_grammar.lex.o parser/tf_fuzz_grammar.tab.o \
-template/secure_template_line.o template/template_line.o \
-template/sst_template_line.o template/crypto_template_line.o utility/data_blocks.o \
-utility/variables.o assets/psa_asset.o assets/sst_asset.o assets/crypto_asset.o \
-utility/gibberish.o utility/string_ops.o calls/psa_call.o calls/sst_call.o \
-calls/crypto_call.o utility/randomization.o utility/compute.o boilerplate/boilerplate.o \
-calls/security_call.o tf_fuzz.o \
-Makefile
- g++ -Wall -std=c++11 -O0 -g -o tfz parser/tf_fuzz_grammar.lex.o \
- parser/tf_fuzz_grammar.tab.o template/secure_template_line.o \
- template/template_line.o template/sst_template_line.o utility/data_blocks.o \
- utility/variables.o template/crypto_template_line.o assets/psa_asset.o \
- assets/sst_asset.o assets/crypto_asset.o utility/gibberish.o \
- utility/string_ops.o utility/randomization.o utility/compute.o \
- calls/psa_call.o calls/sst_call.o calls/crypto_call.o calls/security_call.o \
- boilerplate/boilerplate.o tf_fuzz.o
-
+## clean: remove all build files.
+.PHONY: clean
clean:
- rm -f ./*.o parser/*.o assets/*.o calls/*.o template/*.o utility/*.o \
- boilerplate/*.o utility/gibberish.o tfz tfz.exe \
- parser/tf_fuzz_grammar.lex.* parser/tf_fuzz_grammar.tab.* \
- parser/tf_fuzz_grammar.output
- rm -f `find regression -name "stdout_stderr"`
- rm -f `find regression -name "test.c"`
- rm -f demo/tossThis*
+ rm -rf bin
+ $(MAKE) -C tfz-cpp clean
+
+## help: get help.
+.PHONY: help
+help: Makefile
+ @sed -n 's/^## //p' $<
+
+
+#############################
+# BUILD RULES #
+#############################
+bin:
+ mkdir -p bin
+
+.PHONY: bin/tfz
+bin/tfz: | bin
+ $(MAKE) -C tfz-cpp
+ cp -f tfz-cpp/tfz bin/tfz
diff --git a/tf_fuzz/tfz-cpp/Makefile b/tf_fuzz/tfz-cpp/Makefile
new file mode 100644
index 0000000..0e98dc6
--- /dev/null
+++ b/tf_fuzz/tfz-cpp/Makefile
@@ -0,0 +1,231 @@
+# Copyright (c) 2019-2020, Arm Limited. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+
+.PHONY: default
+default: tfz;
+
+edit:
+ $(EDITOR) template/template_line.hpp \
+ template/sst_template_line.hpp template/crypto_template_line.hpp \
+ template/secure_template_line.hpp calls/psa_call.hpp calls/sst_call.hpp \
+ calls/crypto_call.hpp calls/security_call.hpp assets/psa_asset.hpp \
+ assets/sst_asset.hpp assets/crypto_asset.hpp utility/data_blocks.hpp \
+ utility/variables.hpp utility/gibberish.hpp utility/randomization.hpp \
+ utility/find_or_create_asset.hpp utility/string_ops.hpp \
+ utility/compute.hpp boilerplate/boilerplate.hpp \
+ utility/find_or_create_asset.hpp class_forwards.hpp tf_fuzz.hpp \
+ parser/tf_fuzz_grammar.l parser/tf_fuzz_grammar.y \
+ template/template_line.cpp \
+ template/sst_template_line.cpp template/crypto_template_line.cpp \
+ template/secure_template_line.cpp calls/psa_call.cpp calls/sst_call.cpp \
+ calls/crypto_call.cpp calls/security_call.cpp assets/psa_asset.cpp \
+ assets/sst_asset.cpp assets/crypto_asset.cpp utility/data_blocks.cpp \
+ utility/gibberish.cpp utility/randomization.cpp utility/string_ops.cpp \
+ utility/compute.cpp \
+ boilerplate/boilerplate.cpp tf_fuzz.cpp \
+ tests/example_template tests/sstSets tests/sstReads \
+ lib/tfm_boilerplate.txt boilerplate/boilerplate.hpp \
+ Makefile README assets/README \
+ boilerplate/README calls/README demo/README lib/README parser/README \
+ template/README tests/README regression/README utility/README \
+ visualStudio/README &
+
+edit3:
+ $(EDITOR) template/template_line.hpp \
+ template/sst_template_line.hpp template/crypto_template_line.hpp \
+ template/secure_template_line.hpp calls/psa_call.hpp calls/sst_call.hpp \
+ calls/crypto_call.hpp calls/security_call.hpp assets/psa_asset.hpp \
+ assets/sst_asset.hpp assets/crypto_asset.hpp utility/data_blocks.hpp \
+ utility/variables.hpp utility/gibberish.hpp utility/randomization.hpp \
+ utility/find_or_create_asset.hpp utility/string_ops.hpp \
+ utility/compute.hpp boilerplate/boilerplate.hpp \
+ utility/find_or_create_asset.hpp class_forwards.hpp tf_fuzz.hpp &
+ $(EDITOR) parser/tf_fuzz_grammar.l parser/tf_fuzz_grammar.y \
+ template/template_line.cpp \
+ template/sst_template_line.cpp template/crypto_template_line.cpp \
+ template/secure_template_line.cpp calls/psa_call.cpp calls/sst_call.cpp \
+ calls/crypto_call.cpp calls/security_call.cpp assets/psa_asset.cpp \
+ assets/sst_asset.cpp assets/crypto_asset.cpp utility/data_blocks.cpp \
+ utility/variables.cpp utility/gibberish.cpp utility/randomization.cpp \
+ utility/string_ops.cpp utility/compute.cpp boilerplate/boilerplate.cpp \
+ tf_fuzz.cpp &
+ $(EDITOR) tests/example_template Makefile tests/sstSets tests/sstReads \
+ lib/tfm_boilerplate.txt boilerplate/boilerplate.hpp &
+
+includes = -I . -I ./parser -I ./template -I ./assets -I ./calls -I ./boilerplate -I ./utility
+
+parser/tf_fuzz_grammar.tab.hpp: parser/tf_fuzz_grammar.y class_forwards.hpp \
+boilerplate/boilerplate.hpp utility/gibberish.hpp utility/string_ops.hpp \
+tf_fuzz.hpp utility/data_blocks.hpp utility/variables.hpp \
+utility/find_or_create_asset.hpp assets/psa_asset.hpp \
+assets/sst_asset.hpp assets/crypto_asset.hpp calls/psa_call.hpp \
+template/template_line.hpp Makefile
+ rm -f parser/tf_fuzz_grammar.tab.hpp parser/tf_fuzz_grammar.tab.cpp \
+ parser/tf_fuzz_grammar.tab.o
+ bison --verbose -d parser/tf_fuzz_grammar.y -o \
+ parser/tf_fuzz_grammar.tab.cpp
+
+parser/tf_fuzz_grammar.tab.cpp: parser/tf_fuzz_grammar.y class_forwards.hpp \
+boilerplate/boilerplate.hpp utility/gibberish.hpp utility/string_ops.hpp \
+tf_fuzz.hpp utility/data_blocks.hpp utility/variables.hpp \
+utility/find_or_create_asset.hpp assets/psa_asset.hpp \
+assets/sst_asset.hpp assets/crypto_asset.hpp calls/psa_call.hpp \
+template/template_line.hpp Makefile
+ rm -f parser/tf_fuzz_grammar.tab.hpp parser/tf_fuzz_grammar.tab.cpp \
+ parser/tf_fuzz_grammar.tab.o
+ bison --verbose -d parser/tf_fuzz_grammar.y -o \
+ parser/tf_fuzz_grammar.tab.cpp
+
+parser/tf_fuzz_grammar.lex.c: parser/tf_fuzz_grammar.l \
+parser/tf_fuzz_grammar.tab.hpp Makefile
+ lex --outfile=parser/tf_fuzz_grammar.lex.c parser/tf_fuzz_grammar.l
+parser/tf_fuzz_grammar.lex.o: parser/tf_fuzz_grammar.lex.c Makefile
+ g++ -std=gnu++11 -O0 -g -c -I /usr/include $(includes) -o parser/tf_fuzz_grammar.lex.o \
+ parser/tf_fuzz_grammar.lex.c
+
+parser/tf_fuzz_grammar.tab.o: parser/tf_fuzz_grammar.lex.o \
+parser/tf_fuzz_grammar.tab.cpp parser/tf_fuzz_grammar.tab.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c -I /usr/include $(includes) -o \
+ parser/tf_fuzz_grammar.tab.o parser/tf_fuzz_grammar.tab.cpp
+
+utility/data_blocks.o: utility/data_blocks.hpp utility/data_blocks.cpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o utility/data_blocks.o \
+ utility/data_blocks.cpp
+
+utility/variables.o: utility/find_or_create_asset.hpp \
+utility/variables.hpp utility/variables.cpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o utility/variables.o \
+ utility/variables.cpp
+
+template/template_line.o: utility/randomization.hpp template/template_line.cpp \
+class_forwards.hpp boilerplate/boilerplate.hpp tf_fuzz.hpp calls/psa_call.hpp \
+assets/psa_asset.hpp utility/data_blocks.hpp template/template_line.hpp \
+assets/sst_asset.hpp assets/crypto_asset.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o template/template_line.o \
+ template/template_line.cpp
+
+template/sst_template_line.o: template/sst_template_line.cpp class_forwards.hpp \
+boilerplate/boilerplate.hpp tf_fuzz.hpp calls/psa_call.hpp assets/psa_asset.hpp \
+utility/data_blocks.hpp template/template_line.hpp template/sst_template_line.hpp \
+assets/sst_asset.hpp assets/crypto_asset.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o template/sst_template_line.o \
+ template/sst_template_line.cpp
+
+template/crypto_template_line.o: template/crypto_template_line.cpp \
+class_forwards.hpp boilerplate/boilerplate.hpp tf_fuzz.hpp calls/psa_call.hpp \
+assets/psa_asset.hpp utility/data_blocks.hpp template/template_line.hpp \
+assets/sst_asset.hpp assets/crypto_asset.hpp template/crypto_template_line.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o template/crypto_template_line.o \
+ template/crypto_template_line.cpp
+
+template/secure_template_line.o: utility/randomization.hpp class_forwards.hpp \
+boilerplate/boilerplate.hpp tf_fuzz.hpp calls/psa_call.hpp \
+assets/psa_asset.hpp utility/data_blocks.hpp template/secure_template_line.hpp \
+assets/sst_asset.hpp assets/crypto_asset.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o template/secure_template_line.o \
+ template/secure_template_line.cpp
+
+assets/psa_asset.o: assets/psa_asset.cpp class_forwards.hpp \
+boilerplate/boilerplate.hpp tf_fuzz.hpp utility/data_blocks.hpp calls/psa_call.hpp \
+assets/psa_asset.hpp template/template_line.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o assets/psa_asset.o \
+ assets/psa_asset.cpp
+
+assets/sst_asset.o: assets/sst_asset.cpp class_forwards.hpp \
+boilerplate/boilerplate.hpp utility/data_blocks.hpp tf_fuzz.hpp calls/psa_call.hpp \
+assets/psa_asset.hpp template/template_line.hpp assets/sst_asset.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o assets/sst_asset.o \
+ assets/sst_asset.cpp
+
+assets/crypto_asset.o: utility/randomization.hpp assets/crypto_asset.cpp \
+class_forwards.hpp boilerplate/boilerplate.hpp tf_fuzz.hpp utility/data_blocks.hpp \
+calls/psa_call.hpp assets/psa_asset.hpp assets/crypto_asset.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o assets/crypto_asset.o \
+ assets/crypto_asset.cpp
+
+calls/psa_call.o: calls/psa_call.cpp class_forwards.hpp \
+boilerplate/boilerplate.hpp utility/data_blocks.hpp utility/variables.hpp tf_fuzz.hpp \
+calls/psa_call.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o calls/psa_call.o calls/psa_call.cpp
+
+calls/sst_call.o: calls/sst_call.cpp class_forwards.hpp \
+boilerplate/boilerplate.hpp tf_fuzz.hpp calls/psa_call.hpp assets/psa_asset.hpp \
+template/template_line.hpp utility/data_blocks.hpp utility/variables.hpp \
+calls/sst_call.hpp assets/sst_asset.hpp assets/crypto_asset.hpp utility/string_ops.hpp \
+Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o calls/sst_call.o \
+ calls/sst_call.cpp
+
+calls/crypto_call.o: utility/randomization.hpp calls/crypto_call.cpp \
+class_forwards.hpp boilerplate/boilerplate.hpp utility/string_ops.hpp \
+tf_fuzz.hpp calls/psa_call.hpp utility/data_blocks.hpp utility/variables.hpp \
+assets/psa_asset.hpp template/template_line.hpp \
+calls/crypto_call.hpp assets/sst_asset.hpp assets/crypto_asset.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o calls/crypto_call.o \
+ calls/crypto_call.cpp
+
+calls/security_call.o: utility/randomization.hpp calls/security_call.hpp \
+calls/security_call.cpp class_forwards.hpp boilerplate/boilerplate.hpp \
+utility/string_ops.hpp utility/data_blocks.hpp utility/variables.hpp tf_fuzz.hpp \
+calls/psa_call.hpp assets/psa_asset.hpp template/template_line.hpp \
+calls/security_call.hpp assets/sst_asset.hpp \
+Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o calls/security_call.o \
+ calls/security_call.cpp
+
+boilerplate/boilerplate.o: boilerplate/boilerplate.cpp class_forwards.hpp \
+boilerplate/boilerplate.hpp tf_fuzz.hpp calls/psa_call.hpp assets/psa_asset.hpp \
+template/template_line.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o boilerplate/boilerplate.o \
+ boilerplate/boilerplate.cpp
+
+utility/gibberish.o: utility/gibberish.cpp class_forwards.hpp \
+utility/gibberish.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o utility/gibberish.o \
+ utility/gibberish.cpp
+
+utility/string_ops.o: utility/string_ops.cpp utility/string_ops.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o utility/string_ops.o \
+ utility/string_ops.cpp
+
+utility/randomization.o: utility/randomization.cpp utility/randomization.hpp \
+Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o utility/randomization.o \
+ utility/randomization.cpp
+
+utility/compute.o: utility/compute.cpp utility/compute.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o utility/compute.o \
+ utility/compute.cpp
+
+tf_fuzz.o: tf_fuzz.cpp class_forwards.hpp boilerplate/boilerplate.hpp tf_fuzz.hpp \
+calls/psa_call.hpp assets/psa_asset.hpp utility/data_blocks.hpp utility/variables.hpp \
+template/template_line.hpp parser/tf_fuzz_grammar.tab.hpp Makefile
+ g++ -Wall -std=c++11 -O0 -g -c $(includes) -o tf_fuzz.o tf_fuzz.cpp
+
+tfz: parser/tf_fuzz_grammar.lex.o parser/tf_fuzz_grammar.tab.o \
+template/secure_template_line.o template/template_line.o \
+template/sst_template_line.o template/crypto_template_line.o utility/data_blocks.o \
+utility/variables.o assets/psa_asset.o assets/sst_asset.o assets/crypto_asset.o \
+utility/gibberish.o utility/string_ops.o calls/psa_call.o calls/sst_call.o \
+calls/crypto_call.o utility/randomization.o utility/compute.o boilerplate/boilerplate.o \
+calls/security_call.o tf_fuzz.o \
+Makefile
+ g++ -Wall -std=c++11 -O0 -g -o tfz parser/tf_fuzz_grammar.lex.o \
+ parser/tf_fuzz_grammar.tab.o template/secure_template_line.o \
+ template/template_line.o template/sst_template_line.o utility/data_blocks.o \
+ utility/variables.o template/crypto_template_line.o assets/psa_asset.o \
+ assets/sst_asset.o assets/crypto_asset.o utility/gibberish.o \
+ utility/string_ops.o utility/randomization.o utility/compute.o \
+ calls/psa_call.o calls/sst_call.o calls/crypto_call.o calls/security_call.o \
+ boilerplate/boilerplate.o tf_fuzz.o
+
+clean:
+ rm -f ./*.o parser/*.o assets/*.o calls/*.o template/*.o utility/*.o \
+ boilerplate/*.o utility/gibberish.o tfz tfz.exe \
+ parser/tf_fuzz_grammar.lex.* parser/tf_fuzz_grammar.tab.* \
+ parser/tf_fuzz_grammar.output
+ rm -f `find regression -name "stdout_stderr"`
+ rm -f `find regression -name "test.c"`
+ rm -f demo/tossThis*
diff --git a/tf_fuzz/assets/README b/tf_fuzz/tfz-cpp/assets/README
similarity index 100%
rename from tf_fuzz/assets/README
rename to tf_fuzz/tfz-cpp/assets/README
diff --git a/tf_fuzz/assets/crypto_asset.cpp b/tf_fuzz/tfz-cpp/assets/crypto_asset.cpp
similarity index 100%
rename from tf_fuzz/assets/crypto_asset.cpp
rename to tf_fuzz/tfz-cpp/assets/crypto_asset.cpp
diff --git a/tf_fuzz/assets/crypto_asset.hpp b/tf_fuzz/tfz-cpp/assets/crypto_asset.hpp
similarity index 100%
rename from tf_fuzz/assets/crypto_asset.hpp
rename to tf_fuzz/tfz-cpp/assets/crypto_asset.hpp
diff --git a/tf_fuzz/assets/psa_asset.cpp b/tf_fuzz/tfz-cpp/assets/psa_asset.cpp
similarity index 100%
rename from tf_fuzz/assets/psa_asset.cpp
rename to tf_fuzz/tfz-cpp/assets/psa_asset.cpp
diff --git a/tf_fuzz/assets/psa_asset.hpp b/tf_fuzz/tfz-cpp/assets/psa_asset.hpp
similarity index 100%
rename from tf_fuzz/assets/psa_asset.hpp
rename to tf_fuzz/tfz-cpp/assets/psa_asset.hpp
diff --git a/tf_fuzz/assets/sst_asset.cpp b/tf_fuzz/tfz-cpp/assets/sst_asset.cpp
similarity index 100%
rename from tf_fuzz/assets/sst_asset.cpp
rename to tf_fuzz/tfz-cpp/assets/sst_asset.cpp
diff --git a/tf_fuzz/assets/sst_asset.hpp b/tf_fuzz/tfz-cpp/assets/sst_asset.hpp
similarity index 100%
rename from tf_fuzz/assets/sst_asset.hpp
rename to tf_fuzz/tfz-cpp/assets/sst_asset.hpp
diff --git a/tf_fuzz/boilerplate/README b/tf_fuzz/tfz-cpp/boilerplate/README
similarity index 100%
rename from tf_fuzz/boilerplate/README
rename to tf_fuzz/tfz-cpp/boilerplate/README
diff --git a/tf_fuzz/boilerplate/boilerplate.cpp b/tf_fuzz/tfz-cpp/boilerplate/boilerplate.cpp
similarity index 100%
rename from tf_fuzz/boilerplate/boilerplate.cpp
rename to tf_fuzz/tfz-cpp/boilerplate/boilerplate.cpp
diff --git a/tf_fuzz/boilerplate/boilerplate.hpp b/tf_fuzz/tfz-cpp/boilerplate/boilerplate.hpp
similarity index 100%
rename from tf_fuzz/boilerplate/boilerplate.hpp
rename to tf_fuzz/tfz-cpp/boilerplate/boilerplate.hpp
diff --git a/tf_fuzz/calls/README b/tf_fuzz/tfz-cpp/calls/README
similarity index 100%
rename from tf_fuzz/calls/README
rename to tf_fuzz/tfz-cpp/calls/README
diff --git a/tf_fuzz/calls/crypto_call.cpp b/tf_fuzz/tfz-cpp/calls/crypto_call.cpp
similarity index 100%
rename from tf_fuzz/calls/crypto_call.cpp
rename to tf_fuzz/tfz-cpp/calls/crypto_call.cpp
diff --git a/tf_fuzz/calls/crypto_call.hpp b/tf_fuzz/tfz-cpp/calls/crypto_call.hpp
similarity index 100%
rename from tf_fuzz/calls/crypto_call.hpp
rename to tf_fuzz/tfz-cpp/calls/crypto_call.hpp
diff --git a/tf_fuzz/calls/psa_call.cpp b/tf_fuzz/tfz-cpp/calls/psa_call.cpp
similarity index 100%
rename from tf_fuzz/calls/psa_call.cpp
rename to tf_fuzz/tfz-cpp/calls/psa_call.cpp
diff --git a/tf_fuzz/calls/psa_call.hpp b/tf_fuzz/tfz-cpp/calls/psa_call.hpp
similarity index 100%
rename from tf_fuzz/calls/psa_call.hpp
rename to tf_fuzz/tfz-cpp/calls/psa_call.hpp
diff --git a/tf_fuzz/calls/security_call.cpp b/tf_fuzz/tfz-cpp/calls/security_call.cpp
similarity index 100%
rename from tf_fuzz/calls/security_call.cpp
rename to tf_fuzz/tfz-cpp/calls/security_call.cpp
diff --git a/tf_fuzz/calls/security_call.hpp b/tf_fuzz/tfz-cpp/calls/security_call.hpp
similarity index 100%
rename from tf_fuzz/calls/security_call.hpp
rename to tf_fuzz/tfz-cpp/calls/security_call.hpp
diff --git a/tf_fuzz/calls/sst_call.cpp b/tf_fuzz/tfz-cpp/calls/sst_call.cpp
similarity index 100%
rename from tf_fuzz/calls/sst_call.cpp
rename to tf_fuzz/tfz-cpp/calls/sst_call.cpp
diff --git a/tf_fuzz/calls/sst_call.hpp b/tf_fuzz/tfz-cpp/calls/sst_call.hpp
similarity index 100%
rename from tf_fuzz/calls/sst_call.hpp
rename to tf_fuzz/tfz-cpp/calls/sst_call.hpp
diff --git a/tf_fuzz/class_forwards.hpp b/tf_fuzz/tfz-cpp/class_forwards.hpp
similarity index 100%
rename from tf_fuzz/class_forwards.hpp
rename to tf_fuzz/tfz-cpp/class_forwards.hpp
diff --git a/tf_fuzz/parser/README b/tf_fuzz/tfz-cpp/parser/README
similarity index 100%
rename from tf_fuzz/parser/README
rename to tf_fuzz/tfz-cpp/parser/README
diff --git a/tf_fuzz/parser/tf_fuzz_grammar.l b/tf_fuzz/tfz-cpp/parser/tf_fuzz_grammar.l
similarity index 100%
rename from tf_fuzz/parser/tf_fuzz_grammar.l
rename to tf_fuzz/tfz-cpp/parser/tf_fuzz_grammar.l
diff --git a/tf_fuzz/parser/tf_fuzz_grammar.y b/tf_fuzz/tfz-cpp/parser/tf_fuzz_grammar.y
similarity index 100%
rename from tf_fuzz/parser/tf_fuzz_grammar.y
rename to tf_fuzz/tfz-cpp/parser/tf_fuzz_grammar.y
diff --git a/tf_fuzz/regression/000001_set_sst_uid_data_expect_pass/check.py b/tf_fuzz/tfz-cpp/regression/000001_set_sst_uid_data_expect_pass/check.py
similarity index 100%
rename from tf_fuzz/regression/000001_set_sst_uid_data_expect_pass/check.py
rename to tf_fuzz/tfz-cpp/regression/000001_set_sst_uid_data_expect_pass/check.py
diff --git a/tf_fuzz/regression/000001_set_sst_uid_data_expect_pass/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000001_set_sst_uid_data_expect_pass/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000001_set_sst_uid_data_expect_pass/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000001_set_sst_uid_data_expect_pass/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000001_set_sst_uid_data_expect_pass/exp_test.c b/tf_fuzz/tfz-cpp/regression/000001_set_sst_uid_data_expect_pass/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000001_set_sst_uid_data_expect_pass/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000001_set_sst_uid_data_expect_pass/exp_test.c
diff --git a/tf_fuzz/regression/000001_set_sst_uid_data_expect_pass/template b/tf_fuzz/tfz-cpp/regression/000001_set_sst_uid_data_expect_pass/template
similarity index 100%
rename from tf_fuzz/regression/000001_set_sst_uid_data_expect_pass/template
rename to tf_fuzz/tfz-cpp/regression/000001_set_sst_uid_data_expect_pass/template
diff --git a/tf_fuzz/regression/000002_set_sst_name_data_expect_nothing/check.py b/tf_fuzz/tfz-cpp/regression/000002_set_sst_name_data_expect_nothing/check.py
similarity index 100%
rename from tf_fuzz/regression/000002_set_sst_name_data_expect_nothing/check.py
rename to tf_fuzz/tfz-cpp/regression/000002_set_sst_name_data_expect_nothing/check.py
diff --git a/tf_fuzz/regression/000002_set_sst_name_data_expect_nothing/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000002_set_sst_name_data_expect_nothing/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000002_set_sst_name_data_expect_nothing/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000002_set_sst_name_data_expect_nothing/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000002_set_sst_name_data_expect_nothing/exp_test.c b/tf_fuzz/tfz-cpp/regression/000002_set_sst_name_data_expect_nothing/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000002_set_sst_name_data_expect_nothing/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000002_set_sst_name_data_expect_nothing/exp_test.c
diff --git a/tf_fuzz/regression/000002_set_sst_name_data_expect_nothing/template b/tf_fuzz/tfz-cpp/regression/000002_set_sst_name_data_expect_nothing/template
similarity index 100%
rename from tf_fuzz/regression/000002_set_sst_name_data_expect_nothing/template
rename to tf_fuzz/tfz-cpp/regression/000002_set_sst_name_data_expect_nothing/template
diff --git a/tf_fuzz/regression/000003_set_sst_name_data/check.py b/tf_fuzz/tfz-cpp/regression/000003_set_sst_name_data/check.py
similarity index 100%
rename from tf_fuzz/regression/000003_set_sst_name_data/check.py
rename to tf_fuzz/tfz-cpp/regression/000003_set_sst_name_data/check.py
diff --git a/tf_fuzz/regression/000003_set_sst_name_data/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000003_set_sst_name_data/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000003_set_sst_name_data/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000003_set_sst_name_data/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000003_set_sst_name_data/exp_test.c b/tf_fuzz/tfz-cpp/regression/000003_set_sst_name_data/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000003_set_sst_name_data/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000003_set_sst_name_data/exp_test.c
diff --git a/tf_fuzz/regression/000003_set_sst_name_data/template b/tf_fuzz/tfz-cpp/regression/000003_set_sst_name_data/template
similarity index 100%
rename from tf_fuzz/regression/000003_set_sst_name_data/template
rename to tf_fuzz/tfz-cpp/regression/000003_set_sst_name_data/template
diff --git a/tf_fuzz/regression/000004_set_sst_name_rand_data/check.py b/tf_fuzz/tfz-cpp/regression/000004_set_sst_name_rand_data/check.py
similarity index 100%
rename from tf_fuzz/regression/000004_set_sst_name_rand_data/check.py
rename to tf_fuzz/tfz-cpp/regression/000004_set_sst_name_rand_data/check.py
diff --git a/tf_fuzz/regression/000004_set_sst_name_rand_data/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000004_set_sst_name_rand_data/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000004_set_sst_name_rand_data/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000004_set_sst_name_rand_data/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000004_set_sst_name_rand_data/exp_test.c b/tf_fuzz/tfz-cpp/regression/000004_set_sst_name_rand_data/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000004_set_sst_name_rand_data/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000004_set_sst_name_rand_data/exp_test.c
diff --git a/tf_fuzz/regression/000004_set_sst_name_rand_data/template b/tf_fuzz/tfz-cpp/regression/000004_set_sst_name_rand_data/template
similarity index 100%
rename from tf_fuzz/regression/000004_set_sst_name_rand_data/template
rename to tf_fuzz/tfz-cpp/regression/000004_set_sst_name_rand_data/template
diff --git a/tf_fuzz/regression/000005_set_sst_rand_name_rand_data/check.py b/tf_fuzz/tfz-cpp/regression/000005_set_sst_rand_name_rand_data/check.py
similarity index 100%
rename from tf_fuzz/regression/000005_set_sst_rand_name_rand_data/check.py
rename to tf_fuzz/tfz-cpp/regression/000005_set_sst_rand_name_rand_data/check.py
diff --git a/tf_fuzz/regression/000005_set_sst_rand_name_rand_data/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000005_set_sst_rand_name_rand_data/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000005_set_sst_rand_name_rand_data/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000005_set_sst_rand_name_rand_data/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000005_set_sst_rand_name_rand_data/exp_test.c b/tf_fuzz/tfz-cpp/regression/000005_set_sst_rand_name_rand_data/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000005_set_sst_rand_name_rand_data/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000005_set_sst_rand_name_rand_data/exp_test.c
diff --git a/tf_fuzz/regression/000005_set_sst_rand_name_rand_data/template b/tf_fuzz/tfz-cpp/regression/000005_set_sst_rand_name_rand_data/template
similarity index 100%
rename from tf_fuzz/regression/000005_set_sst_rand_name_rand_data/template
rename to tf_fuzz/tfz-cpp/regression/000005_set_sst_rand_name_rand_data/template
diff --git a/tf_fuzz/regression/000006_set_sst_multi_name_rand_data/check.py b/tf_fuzz/tfz-cpp/regression/000006_set_sst_multi_name_rand_data/check.py
similarity index 100%
rename from tf_fuzz/regression/000006_set_sst_multi_name_rand_data/check.py
rename to tf_fuzz/tfz-cpp/regression/000006_set_sst_multi_name_rand_data/check.py
diff --git a/tf_fuzz/regression/000006_set_sst_multi_name_rand_data/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000006_set_sst_multi_name_rand_data/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000006_set_sst_multi_name_rand_data/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000006_set_sst_multi_name_rand_data/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000006_set_sst_multi_name_rand_data/exp_test.c b/tf_fuzz/tfz-cpp/regression/000006_set_sst_multi_name_rand_data/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000006_set_sst_multi_name_rand_data/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000006_set_sst_multi_name_rand_data/exp_test.c
diff --git a/tf_fuzz/regression/000006_set_sst_multi_name_rand_data/template b/tf_fuzz/tfz-cpp/regression/000006_set_sst_multi_name_rand_data/template
similarity index 100%
rename from tf_fuzz/regression/000006_set_sst_multi_name_rand_data/template
rename to tf_fuzz/tfz-cpp/regression/000006_set_sst_multi_name_rand_data/template
diff --git a/tf_fuzz/regression/000007_set_sst_multi_uid_rand_data/check.py b/tf_fuzz/tfz-cpp/regression/000007_set_sst_multi_uid_rand_data/check.py
similarity index 100%
rename from tf_fuzz/regression/000007_set_sst_multi_uid_rand_data/check.py
rename to tf_fuzz/tfz-cpp/regression/000007_set_sst_multi_uid_rand_data/check.py
diff --git a/tf_fuzz/regression/000007_set_sst_multi_uid_rand_data/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000007_set_sst_multi_uid_rand_data/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000007_set_sst_multi_uid_rand_data/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000007_set_sst_multi_uid_rand_data/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000007_set_sst_multi_uid_rand_data/exp_test.c b/tf_fuzz/tfz-cpp/regression/000007_set_sst_multi_uid_rand_data/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000007_set_sst_multi_uid_rand_data/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000007_set_sst_multi_uid_rand_data/exp_test.c
diff --git a/tf_fuzz/regression/000007_set_sst_multi_uid_rand_data/template b/tf_fuzz/tfz-cpp/regression/000007_set_sst_multi_uid_rand_data/template
similarity index 100%
rename from tf_fuzz/regression/000007_set_sst_multi_uid_rand_data/template
rename to tf_fuzz/tfz-cpp/regression/000007_set_sst_multi_uid_rand_data/template
diff --git a/tf_fuzz/regression/000008_set_sst_name_rand_data_read_check_wrong/check.py b/tf_fuzz/tfz-cpp/regression/000008_set_sst_name_rand_data_read_check_wrong/check.py
similarity index 100%
rename from tf_fuzz/regression/000008_set_sst_name_rand_data_read_check_wrong/check.py
rename to tf_fuzz/tfz-cpp/regression/000008_set_sst_name_rand_data_read_check_wrong/check.py
diff --git a/tf_fuzz/regression/000008_set_sst_name_rand_data_read_check_wrong/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000008_set_sst_name_rand_data_read_check_wrong/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000008_set_sst_name_rand_data_read_check_wrong/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000008_set_sst_name_rand_data_read_check_wrong/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000008_set_sst_name_rand_data_read_check_wrong/exp_test.c b/tf_fuzz/tfz-cpp/regression/000008_set_sst_name_rand_data_read_check_wrong/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000008_set_sst_name_rand_data_read_check_wrong/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000008_set_sst_name_rand_data_read_check_wrong/exp_test.c
diff --git a/tf_fuzz/regression/000008_set_sst_name_rand_data_read_check_wrong/template b/tf_fuzz/tfz-cpp/regression/000008_set_sst_name_rand_data_read_check_wrong/template
similarity index 100%
rename from tf_fuzz/regression/000008_set_sst_name_rand_data_read_check_wrong/template
rename to tf_fuzz/tfz-cpp/regression/000008_set_sst_name_rand_data_read_check_wrong/template
diff --git a/tf_fuzz/regression/000009_set_sst_name_rand_data_read_check_var_read_print/check.py b/tf_fuzz/tfz-cpp/regression/000009_set_sst_name_rand_data_read_check_var_read_print/check.py
similarity index 100%
rename from tf_fuzz/regression/000009_set_sst_name_rand_data_read_check_var_read_print/check.py
rename to tf_fuzz/tfz-cpp/regression/000009_set_sst_name_rand_data_read_check_var_read_print/check.py
diff --git a/tf_fuzz/regression/000009_set_sst_name_rand_data_read_check_var_read_print/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000009_set_sst_name_rand_data_read_check_var_read_print/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000009_set_sst_name_rand_data_read_check_var_read_print/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000009_set_sst_name_rand_data_read_check_var_read_print/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000009_set_sst_name_rand_data_read_check_var_read_print/exp_test.c b/tf_fuzz/tfz-cpp/regression/000009_set_sst_name_rand_data_read_check_var_read_print/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000009_set_sst_name_rand_data_read_check_var_read_print/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000009_set_sst_name_rand_data_read_check_var_read_print/exp_test.c
diff --git a/tf_fuzz/regression/000009_set_sst_name_rand_data_read_check_var_read_print/template b/tf_fuzz/tfz-cpp/regression/000009_set_sst_name_rand_data_read_check_var_read_print/template
similarity index 100%
rename from tf_fuzz/regression/000009_set_sst_name_rand_data_read_check_var_read_print/template
rename to tf_fuzz/tfz-cpp/regression/000009_set_sst_name_rand_data_read_check_var_read_print/template
diff --git a/tf_fuzz/regression/000010_read_nonexistent_sst_check_string/check.py b/tf_fuzz/tfz-cpp/regression/000010_read_nonexistent_sst_check_string/check.py
similarity index 100%
rename from tf_fuzz/regression/000010_read_nonexistent_sst_check_string/check.py
rename to tf_fuzz/tfz-cpp/regression/000010_read_nonexistent_sst_check_string/check.py
diff --git a/tf_fuzz/regression/000010_read_nonexistent_sst_check_string/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000010_read_nonexistent_sst_check_string/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000010_read_nonexistent_sst_check_string/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000010_read_nonexistent_sst_check_string/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000010_read_nonexistent_sst_check_string/exp_test.c b/tf_fuzz/tfz-cpp/regression/000010_read_nonexistent_sst_check_string/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000010_read_nonexistent_sst_check_string/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000010_read_nonexistent_sst_check_string/exp_test.c
diff --git a/tf_fuzz/regression/000010_read_nonexistent_sst_check_string/template b/tf_fuzz/tfz-cpp/regression/000010_read_nonexistent_sst_check_string/template
similarity index 100%
rename from tf_fuzz/regression/000010_read_nonexistent_sst_check_string/template
rename to tf_fuzz/tfz-cpp/regression/000010_read_nonexistent_sst_check_string/template
diff --git a/tf_fuzz/regression/000011_read_nonexistent_sst_check_string_expect_pass/check.py b/tf_fuzz/tfz-cpp/regression/000011_read_nonexistent_sst_check_string_expect_pass/check.py
similarity index 100%
rename from tf_fuzz/regression/000011_read_nonexistent_sst_check_string_expect_pass/check.py
rename to tf_fuzz/tfz-cpp/regression/000011_read_nonexistent_sst_check_string_expect_pass/check.py
diff --git a/tf_fuzz/regression/000011_read_nonexistent_sst_check_string_expect_pass/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000011_read_nonexistent_sst_check_string_expect_pass/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000011_read_nonexistent_sst_check_string_expect_pass/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000011_read_nonexistent_sst_check_string_expect_pass/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000011_read_nonexistent_sst_check_string_expect_pass/exp_test.c b/tf_fuzz/tfz-cpp/regression/000011_read_nonexistent_sst_check_string_expect_pass/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000011_read_nonexistent_sst_check_string_expect_pass/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000011_read_nonexistent_sst_check_string_expect_pass/exp_test.c
diff --git a/tf_fuzz/regression/000011_read_nonexistent_sst_check_string_expect_pass/template b/tf_fuzz/tfz-cpp/regression/000011_read_nonexistent_sst_check_string_expect_pass/template
similarity index 100%
rename from tf_fuzz/regression/000011_read_nonexistent_sst_check_string_expect_pass/template
rename to tf_fuzz/tfz-cpp/regression/000011_read_nonexistent_sst_check_string_expect_pass/template
diff --git a/tf_fuzz/regression/000012_read_nonexistent_sst_check_string_expect_other/check.py b/tf_fuzz/tfz-cpp/regression/000012_read_nonexistent_sst_check_string_expect_other/check.py
similarity index 100%
rename from tf_fuzz/regression/000012_read_nonexistent_sst_check_string_expect_other/check.py
rename to tf_fuzz/tfz-cpp/regression/000012_read_nonexistent_sst_check_string_expect_other/check.py
diff --git a/tf_fuzz/regression/000012_read_nonexistent_sst_check_string_expect_other/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000012_read_nonexistent_sst_check_string_expect_other/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000012_read_nonexistent_sst_check_string_expect_other/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000012_read_nonexistent_sst_check_string_expect_other/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000012_read_nonexistent_sst_check_string_expect_other/exp_test.c b/tf_fuzz/tfz-cpp/regression/000012_read_nonexistent_sst_check_string_expect_other/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000012_read_nonexistent_sst_check_string_expect_other/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000012_read_nonexistent_sst_check_string_expect_other/exp_test.c
diff --git a/tf_fuzz/regression/000012_read_nonexistent_sst_check_string_expect_other/template b/tf_fuzz/tfz-cpp/regression/000012_read_nonexistent_sst_check_string_expect_other/template
similarity index 100%
rename from tf_fuzz/regression/000012_read_nonexistent_sst_check_string_expect_other/template
rename to tf_fuzz/tfz-cpp/regression/000012_read_nonexistent_sst_check_string_expect_other/template
diff --git a/tf_fuzz/regression/000013_set_sst_name_rand_data_remove_twice/check.py b/tf_fuzz/tfz-cpp/regression/000013_set_sst_name_rand_data_remove_twice/check.py
similarity index 100%
rename from tf_fuzz/regression/000013_set_sst_name_rand_data_remove_twice/check.py
rename to tf_fuzz/tfz-cpp/regression/000013_set_sst_name_rand_data_remove_twice/check.py
diff --git a/tf_fuzz/regression/000013_set_sst_name_rand_data_remove_twice/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000013_set_sst_name_rand_data_remove_twice/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000013_set_sst_name_rand_data_remove_twice/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000013_set_sst_name_rand_data_remove_twice/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000013_set_sst_name_rand_data_remove_twice/exp_test.c b/tf_fuzz/tfz-cpp/regression/000013_set_sst_name_rand_data_remove_twice/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000013_set_sst_name_rand_data_remove_twice/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000013_set_sst_name_rand_data_remove_twice/exp_test.c
diff --git a/tf_fuzz/regression/000013_set_sst_name_rand_data_remove_twice/template b/tf_fuzz/tfz-cpp/regression/000013_set_sst_name_rand_data_remove_twice/template
similarity index 100%
rename from tf_fuzz/regression/000013_set_sst_name_rand_data_remove_twice/template
rename to tf_fuzz/tfz-cpp/regression/000013_set_sst_name_rand_data_remove_twice/template
diff --git a/tf_fuzz/regression/000014_set_sst_name_rand_data_remove_other/check.py b/tf_fuzz/tfz-cpp/regression/000014_set_sst_name_rand_data_remove_other/check.py
similarity index 100%
rename from tf_fuzz/regression/000014_set_sst_name_rand_data_remove_other/check.py
rename to tf_fuzz/tfz-cpp/regression/000014_set_sst_name_rand_data_remove_other/check.py
diff --git a/tf_fuzz/regression/000014_set_sst_name_rand_data_remove_other/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000014_set_sst_name_rand_data_remove_other/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000014_set_sst_name_rand_data_remove_other/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000014_set_sst_name_rand_data_remove_other/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000014_set_sst_name_rand_data_remove_other/exp_test.c b/tf_fuzz/tfz-cpp/regression/000014_set_sst_name_rand_data_remove_other/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000014_set_sst_name_rand_data_remove_other/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000014_set_sst_name_rand_data_remove_other/exp_test.c
diff --git a/tf_fuzz/regression/000014_set_sst_name_rand_data_remove_other/template b/tf_fuzz/tfz-cpp/regression/000014_set_sst_name_rand_data_remove_other/template
similarity index 100%
rename from tf_fuzz/regression/000014_set_sst_name_rand_data_remove_other/template
rename to tf_fuzz/tfz-cpp/regression/000014_set_sst_name_rand_data_remove_other/template
diff --git a/tf_fuzz/regression/000015_set_sst_name_only/check.py b/tf_fuzz/tfz-cpp/regression/000015_set_sst_name_only/check.py
similarity index 100%
rename from tf_fuzz/regression/000015_set_sst_name_only/check.py
rename to tf_fuzz/tfz-cpp/regression/000015_set_sst_name_only/check.py
diff --git a/tf_fuzz/regression/000015_set_sst_name_only/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000015_set_sst_name_only/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000015_set_sst_name_only/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000015_set_sst_name_only/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000015_set_sst_name_only/exp_test.c b/tf_fuzz/tfz-cpp/regression/000015_set_sst_name_only/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000015_set_sst_name_only/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000015_set_sst_name_only/exp_test.c
diff --git a/tf_fuzz/regression/000015_set_sst_name_only/template b/tf_fuzz/tfz-cpp/regression/000015_set_sst_name_only/template
similarity index 100%
rename from tf_fuzz/regression/000015_set_sst_name_only/template
rename to tf_fuzz/tfz-cpp/regression/000015_set_sst_name_only/template
diff --git a/tf_fuzz/regression/000016_set_sst_single_asset_set_multiple_times/check.py b/tf_fuzz/tfz-cpp/regression/000016_set_sst_single_asset_set_multiple_times/check.py
similarity index 100%
rename from tf_fuzz/regression/000016_set_sst_single_asset_set_multiple_times/check.py
rename to tf_fuzz/tfz-cpp/regression/000016_set_sst_single_asset_set_multiple_times/check.py
diff --git a/tf_fuzz/regression/000016_set_sst_single_asset_set_multiple_times/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000016_set_sst_single_asset_set_multiple_times/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000016_set_sst_single_asset_set_multiple_times/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000016_set_sst_single_asset_set_multiple_times/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000016_set_sst_single_asset_set_multiple_times/exp_test.c b/tf_fuzz/tfz-cpp/regression/000016_set_sst_single_asset_set_multiple_times/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000016_set_sst_single_asset_set_multiple_times/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000016_set_sst_single_asset_set_multiple_times/exp_test.c
diff --git a/tf_fuzz/regression/000016_set_sst_single_asset_set_multiple_times/template b/tf_fuzz/tfz-cpp/regression/000016_set_sst_single_asset_set_multiple_times/template
similarity index 100%
rename from tf_fuzz/regression/000016_set_sst_single_asset_set_multiple_times/template
rename to tf_fuzz/tfz-cpp/regression/000016_set_sst_single_asset_set_multiple_times/template
diff --git a/tf_fuzz/regression/000017_read_sst_check_single_asset_multiple_times/check.py b/tf_fuzz/tfz-cpp/regression/000017_read_sst_check_single_asset_multiple_times/check.py
similarity index 100%
rename from tf_fuzz/regression/000017_read_sst_check_single_asset_multiple_times/check.py
rename to tf_fuzz/tfz-cpp/regression/000017_read_sst_check_single_asset_multiple_times/check.py
diff --git a/tf_fuzz/regression/000017_read_sst_check_single_asset_multiple_times/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000017_read_sst_check_single_asset_multiple_times/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000017_read_sst_check_single_asset_multiple_times/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000017_read_sst_check_single_asset_multiple_times/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000017_read_sst_check_single_asset_multiple_times/exp_test.c b/tf_fuzz/tfz-cpp/regression/000017_read_sst_check_single_asset_multiple_times/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000017_read_sst_check_single_asset_multiple_times/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000017_read_sst_check_single_asset_multiple_times/exp_test.c
diff --git a/tf_fuzz/regression/000017_read_sst_check_single_asset_multiple_times/template b/tf_fuzz/tfz-cpp/regression/000017_read_sst_check_single_asset_multiple_times/template
similarity index 100%
rename from tf_fuzz/regression/000017_read_sst_check_single_asset_multiple_times/template
rename to tf_fuzz/tfz-cpp/regression/000017_read_sst_check_single_asset_multiple_times/template
diff --git a/tf_fuzz/regression/000018_000016_and_000017/check.py b/tf_fuzz/tfz-cpp/regression/000018_000016_and_000017/check.py
similarity index 100%
rename from tf_fuzz/regression/000018_000016_and_000017/check.py
rename to tf_fuzz/tfz-cpp/regression/000018_000016_and_000017/check.py
diff --git a/tf_fuzz/regression/000018_000016_and_000017/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000018_000016_and_000017/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000018_000016_and_000017/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000018_000016_and_000017/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000018_000016_and_000017/exp_test.c b/tf_fuzz/tfz-cpp/regression/000018_000016_and_000017/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000018_000016_and_000017/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000018_000016_and_000017/exp_test.c
diff --git a/tf_fuzz/regression/000018_000016_and_000017/template b/tf_fuzz/tfz-cpp/regression/000018_000016_and_000017/template
similarity index 100%
rename from tf_fuzz/regression/000018_000016_and_000017/template
rename to tf_fuzz/tfz-cpp/regression/000018_000016_and_000017/template
diff --git a/tf_fuzz/regression/000019_read_asset_to_variable_set_other_asset/check.py b/tf_fuzz/tfz-cpp/regression/000019_read_asset_to_variable_set_other_asset/check.py
similarity index 100%
rename from tf_fuzz/regression/000019_read_asset_to_variable_set_other_asset/check.py
rename to tf_fuzz/tfz-cpp/regression/000019_read_asset_to_variable_set_other_asset/check.py
diff --git a/tf_fuzz/regression/000019_read_asset_to_variable_set_other_asset/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000019_read_asset_to_variable_set_other_asset/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000019_read_asset_to_variable_set_other_asset/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000019_read_asset_to_variable_set_other_asset/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000019_read_asset_to_variable_set_other_asset/exp_test.c b/tf_fuzz/tfz-cpp/regression/000019_read_asset_to_variable_set_other_asset/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000019_read_asset_to_variable_set_other_asset/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000019_read_asset_to_variable_set_other_asset/exp_test.c
diff --git a/tf_fuzz/regression/000019_read_asset_to_variable_set_other_asset/template b/tf_fuzz/tfz-cpp/regression/000019_read_asset_to_variable_set_other_asset/template
similarity index 100%
rename from tf_fuzz/regression/000019_read_asset_to_variable_set_other_asset/template
rename to tf_fuzz/tfz-cpp/regression/000019_read_asset_to_variable_set_other_asset/template
diff --git a/tf_fuzz/regression/000020_no_purpose/check.py b/tf_fuzz/tfz-cpp/regression/000020_no_purpose/check.py
similarity index 100%
rename from tf_fuzz/regression/000020_no_purpose/check.py
rename to tf_fuzz/tfz-cpp/regression/000020_no_purpose/check.py
diff --git a/tf_fuzz/regression/000020_no_purpose/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000020_no_purpose/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000020_no_purpose/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000020_no_purpose/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000020_no_purpose/exp_test.c b/tf_fuzz/tfz-cpp/regression/000020_no_purpose/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000020_no_purpose/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000020_no_purpose/exp_test.c
diff --git a/tf_fuzz/regression/000020_no_purpose/template b/tf_fuzz/tfz-cpp/regression/000020_no_purpose/template
similarity index 100%
rename from tf_fuzz/regression/000020_no_purpose/template
rename to tf_fuzz/tfz-cpp/regression/000020_no_purpose/template
diff --git a/tf_fuzz/regression/000021_abbreviated_result_codes/check.py b/tf_fuzz/tfz-cpp/regression/000021_abbreviated_result_codes/check.py
similarity index 100%
rename from tf_fuzz/regression/000021_abbreviated_result_codes/check.py
rename to tf_fuzz/tfz-cpp/regression/000021_abbreviated_result_codes/check.py
diff --git a/tf_fuzz/regression/000021_abbreviated_result_codes/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000021_abbreviated_result_codes/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000021_abbreviated_result_codes/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000021_abbreviated_result_codes/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000021_abbreviated_result_codes/exp_test.c b/tf_fuzz/tfz-cpp/regression/000021_abbreviated_result_codes/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000021_abbreviated_result_codes/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000021_abbreviated_result_codes/exp_test.c
diff --git a/tf_fuzz/regression/000021_abbreviated_result_codes/template b/tf_fuzz/tfz-cpp/regression/000021_abbreviated_result_codes/template
similarity index 100%
rename from tf_fuzz/regression/000021_abbreviated_result_codes/template
rename to tf_fuzz/tfz-cpp/regression/000021_abbreviated_result_codes/template
diff --git a/tf_fuzz/regression/000022_SST_offset/check.py b/tf_fuzz/tfz-cpp/regression/000022_SST_offset/check.py
similarity index 100%
rename from tf_fuzz/regression/000022_SST_offset/check.py
rename to tf_fuzz/tfz-cpp/regression/000022_SST_offset/check.py
diff --git a/tf_fuzz/regression/000022_SST_offset/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000022_SST_offset/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000022_SST_offset/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000022_SST_offset/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000022_SST_offset/exp_test.c b/tf_fuzz/tfz-cpp/regression/000022_SST_offset/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000022_SST_offset/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000022_SST_offset/exp_test.c
diff --git a/tf_fuzz/regression/000022_SST_offset/template b/tf_fuzz/tfz-cpp/regression/000022_SST_offset/template
similarity index 100%
rename from tf_fuzz/regression/000022_SST_offset/template
rename to tf_fuzz/tfz-cpp/regression/000022_SST_offset/template
diff --git a/tf_fuzz/regression/000023_SST_creation_flags/check.py b/tf_fuzz/tfz-cpp/regression/000023_SST_creation_flags/check.py
similarity index 100%
rename from tf_fuzz/regression/000023_SST_creation_flags/check.py
rename to tf_fuzz/tfz-cpp/regression/000023_SST_creation_flags/check.py
diff --git a/tf_fuzz/regression/000023_SST_creation_flags/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000023_SST_creation_flags/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000023_SST_creation_flags/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000023_SST_creation_flags/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000023_SST_creation_flags/exp_test.c b/tf_fuzz/tfz-cpp/regression/000023_SST_creation_flags/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000023_SST_creation_flags/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000023_SST_creation_flags/exp_test.c
diff --git a/tf_fuzz/regression/000023_SST_creation_flags/template b/tf_fuzz/tfz-cpp/regression/000023_SST_creation_flags/template
similarity index 100%
rename from tf_fuzz/regression/000023_SST_creation_flags/template
rename to tf_fuzz/tfz-cpp/regression/000023_SST_creation_flags/template
diff --git a/tf_fuzz/regression/000024_SST_write_once/check.py b/tf_fuzz/tfz-cpp/regression/000024_SST_write_once/check.py
similarity index 100%
rename from tf_fuzz/regression/000024_SST_write_once/check.py
rename to tf_fuzz/tfz-cpp/regression/000024_SST_write_once/check.py
diff --git a/tf_fuzz/regression/000024_SST_write_once/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/000024_SST_write_once/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/000024_SST_write_once/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/000024_SST_write_once/exp_stdout_stderr
diff --git a/tf_fuzz/regression/000024_SST_write_once/exp_test.c b/tf_fuzz/tfz-cpp/regression/000024_SST_write_once/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/000024_SST_write_once/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/000024_SST_write_once/exp_test.c
diff --git a/tf_fuzz/regression/000024_SST_write_once/template b/tf_fuzz/tfz-cpp/regression/000024_SST_write_once/template
similarity index 100%
rename from tf_fuzz/regression/000024_SST_write_once/template
rename to tf_fuzz/tfz-cpp/regression/000024_SST_write_once/template
diff --git a/tf_fuzz/regression/README b/tf_fuzz/tfz-cpp/regression/README
similarity index 100%
rename from tf_fuzz/regression/README
rename to tf_fuzz/tfz-cpp/regression/README
diff --git a/tf_fuzz/regression/add_these_tests/000015_set_sst_multi_name_remove_rand_active/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/add_these_tests/000015_set_sst_multi_name_remove_rand_active/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/add_these_tests/000015_set_sst_multi_name_remove_rand_active/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/add_these_tests/000015_set_sst_multi_name_remove_rand_active/exp_stdout_stderr
diff --git a/tf_fuzz/regression/add_these_tests/000015_set_sst_multi_name_remove_rand_active/exp_test.c b/tf_fuzz/tfz-cpp/regression/add_these_tests/000015_set_sst_multi_name_remove_rand_active/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/add_these_tests/000015_set_sst_multi_name_remove_rand_active/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/add_these_tests/000015_set_sst_multi_name_remove_rand_active/exp_test.c
diff --git a/tf_fuzz/regression/add_these_tests/000015_set_sst_multi_name_remove_rand_active/template b/tf_fuzz/tfz-cpp/regression/add_these_tests/000015_set_sst_multi_name_remove_rand_active/template
similarity index 100%
rename from tf_fuzz/regression/add_these_tests/000015_set_sst_multi_name_remove_rand_active/template
rename to tf_fuzz/tfz-cpp/regression/add_these_tests/000015_set_sst_multi_name_remove_rand_active/template
diff --git a/tf_fuzz/regression/add_these_tests/000016_set_sst_multi_name_remove_multi_rand_active_remove_rand_deleted/exp_stdout_stderr b/tf_fuzz/tfz-cpp/regression/add_these_tests/000016_set_sst_multi_name_remove_multi_rand_active_remove_rand_deleted/exp_stdout_stderr
similarity index 100%
rename from tf_fuzz/regression/add_these_tests/000016_set_sst_multi_name_remove_multi_rand_active_remove_rand_deleted/exp_stdout_stderr
rename to tf_fuzz/tfz-cpp/regression/add_these_tests/000016_set_sst_multi_name_remove_multi_rand_active_remove_rand_deleted/exp_stdout_stderr
diff --git a/tf_fuzz/regression/add_these_tests/000016_set_sst_multi_name_remove_multi_rand_active_remove_rand_deleted/exp_test.c b/tf_fuzz/tfz-cpp/regression/add_these_tests/000016_set_sst_multi_name_remove_multi_rand_active_remove_rand_deleted/exp_test.c
similarity index 100%
rename from tf_fuzz/regression/add_these_tests/000016_set_sst_multi_name_remove_multi_rand_active_remove_rand_deleted/exp_test.c
rename to tf_fuzz/tfz-cpp/regression/add_these_tests/000016_set_sst_multi_name_remove_multi_rand_active_remove_rand_deleted/exp_test.c
diff --git a/tf_fuzz/regression/add_these_tests/000016_set_sst_multi_name_remove_multi_rand_active_remove_rand_deleted/template b/tf_fuzz/tfz-cpp/regression/add_these_tests/000016_set_sst_multi_name_remove_multi_rand_active_remove_rand_deleted/template
similarity index 100%
rename from tf_fuzz/regression/add_these_tests/000016_set_sst_multi_name_remove_multi_rand_active_remove_rand_deleted/template
rename to tf_fuzz/tfz-cpp/regression/add_these_tests/000016_set_sst_multi_name_remove_multi_rand_active_remove_rand_deleted/template
diff --git a/tf_fuzz/regression/regress b/tf_fuzz/tfz-cpp/regression/regress
similarity index 100%
rename from tf_fuzz/regression/regress
rename to tf_fuzz/tfz-cpp/regression/regress
diff --git a/tf_fuzz/regression/regress_lib/line_by_line.py b/tf_fuzz/tfz-cpp/regression/regress_lib/line_by_line.py
similarity index 100%
rename from tf_fuzz/regression/regress_lib/line_by_line.py
rename to tf_fuzz/tfz-cpp/regression/regress_lib/line_by_line.py
diff --git a/tf_fuzz/template/README b/tf_fuzz/tfz-cpp/template/README
similarity index 100%
rename from tf_fuzz/template/README
rename to tf_fuzz/tfz-cpp/template/README
diff --git a/tf_fuzz/template/crypto_template_line.cpp b/tf_fuzz/tfz-cpp/template/crypto_template_line.cpp
similarity index 100%
rename from tf_fuzz/template/crypto_template_line.cpp
rename to tf_fuzz/tfz-cpp/template/crypto_template_line.cpp
diff --git a/tf_fuzz/template/crypto_template_line.hpp b/tf_fuzz/tfz-cpp/template/crypto_template_line.hpp
similarity index 100%
rename from tf_fuzz/template/crypto_template_line.hpp
rename to tf_fuzz/tfz-cpp/template/crypto_template_line.hpp
diff --git a/tf_fuzz/template/secure_template_line.cpp b/tf_fuzz/tfz-cpp/template/secure_template_line.cpp
similarity index 100%
rename from tf_fuzz/template/secure_template_line.cpp
rename to tf_fuzz/tfz-cpp/template/secure_template_line.cpp
diff --git a/tf_fuzz/template/secure_template_line.hpp b/tf_fuzz/tfz-cpp/template/secure_template_line.hpp
similarity index 100%
rename from tf_fuzz/template/secure_template_line.hpp
rename to tf_fuzz/tfz-cpp/template/secure_template_line.hpp
diff --git a/tf_fuzz/template/sst_template_line.cpp b/tf_fuzz/tfz-cpp/template/sst_template_line.cpp
similarity index 100%
rename from tf_fuzz/template/sst_template_line.cpp
rename to tf_fuzz/tfz-cpp/template/sst_template_line.cpp
diff --git a/tf_fuzz/template/sst_template_line.hpp b/tf_fuzz/tfz-cpp/template/sst_template_line.hpp
similarity index 100%
rename from tf_fuzz/template/sst_template_line.hpp
rename to tf_fuzz/tfz-cpp/template/sst_template_line.hpp
diff --git a/tf_fuzz/template/template_line.cpp b/tf_fuzz/tfz-cpp/template/template_line.cpp
similarity index 100%
rename from tf_fuzz/template/template_line.cpp
rename to tf_fuzz/tfz-cpp/template/template_line.cpp
diff --git a/tf_fuzz/template/template_line.hpp b/tf_fuzz/tfz-cpp/template/template_line.hpp
similarity index 100%
rename from tf_fuzz/template/template_line.hpp
rename to tf_fuzz/tfz-cpp/template/template_line.hpp
diff --git a/tf_fuzz/tests/example_template b/tf_fuzz/tfz-cpp/tests/example_template
similarity index 100%
rename from tf_fuzz/tests/example_template
rename to tf_fuzz/tfz-cpp/tests/example_template
diff --git a/tf_fuzz/tests/sstReads b/tf_fuzz/tfz-cpp/tests/sstReads
similarity index 100%
rename from tf_fuzz/tests/sstReads
rename to tf_fuzz/tfz-cpp/tests/sstReads
diff --git a/tf_fuzz/tests/sstSets b/tf_fuzz/tfz-cpp/tests/sstSets
similarity index 100%
rename from tf_fuzz/tests/sstSets
rename to tf_fuzz/tfz-cpp/tests/sstSets
diff --git a/tf_fuzz/tf_fuzz.cpp b/tf_fuzz/tfz-cpp/tf_fuzz.cpp
similarity index 100%
rename from tf_fuzz/tf_fuzz.cpp
rename to tf_fuzz/tfz-cpp/tf_fuzz.cpp
diff --git a/tf_fuzz/tf_fuzz.hpp b/tf_fuzz/tfz-cpp/tf_fuzz.hpp
similarity index 100%
rename from tf_fuzz/tf_fuzz.hpp
rename to tf_fuzz/tfz-cpp/tf_fuzz.hpp
diff --git a/tf_fuzz/utility/README b/tf_fuzz/tfz-cpp/utility/README
similarity index 100%
rename from tf_fuzz/utility/README
rename to tf_fuzz/tfz-cpp/utility/README
diff --git a/tf_fuzz/utility/compute.cpp b/tf_fuzz/tfz-cpp/utility/compute.cpp
similarity index 100%
rename from tf_fuzz/utility/compute.cpp
rename to tf_fuzz/tfz-cpp/utility/compute.cpp
diff --git a/tf_fuzz/utility/compute.hpp b/tf_fuzz/tfz-cpp/utility/compute.hpp
similarity index 100%
rename from tf_fuzz/utility/compute.hpp
rename to tf_fuzz/tfz-cpp/utility/compute.hpp
diff --git a/tf_fuzz/utility/data_blocks.cpp b/tf_fuzz/tfz-cpp/utility/data_blocks.cpp
similarity index 100%
rename from tf_fuzz/utility/data_blocks.cpp
rename to tf_fuzz/tfz-cpp/utility/data_blocks.cpp
diff --git a/tf_fuzz/utility/data_blocks.hpp b/tf_fuzz/tfz-cpp/utility/data_blocks.hpp
similarity index 100%
rename from tf_fuzz/utility/data_blocks.hpp
rename to tf_fuzz/tfz-cpp/utility/data_blocks.hpp
diff --git a/tf_fuzz/utility/find_or_create_asset.hpp b/tf_fuzz/tfz-cpp/utility/find_or_create_asset.hpp
similarity index 100%
rename from tf_fuzz/utility/find_or_create_asset.hpp
rename to tf_fuzz/tfz-cpp/utility/find_or_create_asset.hpp
diff --git a/tf_fuzz/utility/gibberish.cpp b/tf_fuzz/tfz-cpp/utility/gibberish.cpp
similarity index 100%
rename from tf_fuzz/utility/gibberish.cpp
rename to tf_fuzz/tfz-cpp/utility/gibberish.cpp
diff --git a/tf_fuzz/utility/gibberish.hpp b/tf_fuzz/tfz-cpp/utility/gibberish.hpp
similarity index 100%
rename from tf_fuzz/utility/gibberish.hpp
rename to tf_fuzz/tfz-cpp/utility/gibberish.hpp
diff --git a/tf_fuzz/utility/randomization.cpp b/tf_fuzz/tfz-cpp/utility/randomization.cpp
similarity index 100%
rename from tf_fuzz/utility/randomization.cpp
rename to tf_fuzz/tfz-cpp/utility/randomization.cpp
diff --git a/tf_fuzz/utility/randomization.hpp b/tf_fuzz/tfz-cpp/utility/randomization.hpp
similarity index 100%
rename from tf_fuzz/utility/randomization.hpp
rename to tf_fuzz/tfz-cpp/utility/randomization.hpp
diff --git a/tf_fuzz/utility/string_ops.cpp b/tf_fuzz/tfz-cpp/utility/string_ops.cpp
similarity index 100%
rename from tf_fuzz/utility/string_ops.cpp
rename to tf_fuzz/tfz-cpp/utility/string_ops.cpp
diff --git a/tf_fuzz/utility/string_ops.hpp b/tf_fuzz/tfz-cpp/utility/string_ops.hpp
similarity index 100%
rename from tf_fuzz/utility/string_ops.hpp
rename to tf_fuzz/tfz-cpp/utility/string_ops.hpp
diff --git a/tf_fuzz/utility/variables.cpp b/tf_fuzz/tfz-cpp/utility/variables.cpp
similarity index 100%
rename from tf_fuzz/utility/variables.cpp
rename to tf_fuzz/tfz-cpp/utility/variables.cpp
diff --git a/tf_fuzz/utility/variables.hpp b/tf_fuzz/tfz-cpp/utility/variables.hpp
similarity index 100%
rename from tf_fuzz/utility/variables.hpp
rename to tf_fuzz/tfz-cpp/utility/variables.hpp
diff --git a/tf_fuzz/visualStudio/README b/tf_fuzz/tfz-cpp/visualStudio/README
similarity index 100%
rename from tf_fuzz/visualStudio/README
rename to tf_fuzz/tfz-cpp/visualStudio/README
diff --git a/tf_fuzz/visualStudio/unistd.c b/tf_fuzz/tfz-cpp/visualStudio/unistd.c
similarity index 100%
rename from tf_fuzz/visualStudio/unistd.c
rename to tf_fuzz/tfz-cpp/visualStudio/unistd.c
diff --git a/tf_fuzz/visualStudio/unistd.h b/tf_fuzz/tfz-cpp/visualStudio/unistd.h
similarity index 100%
rename from tf_fuzz/visualStudio/unistd.h
rename to tf_fuzz/tfz-cpp/visualStudio/unistd.h
diff --git a/tf_fuzz/tfz-suitegen/pyproject.toml b/tf_fuzz/tfz-suitegen/pyproject.toml
new file mode 100644
index 0000000..0a872d5
--- /dev/null
+++ b/tf_fuzz/tfz-suitegen/pyproject.toml
@@ -0,0 +1,13 @@
+# Copyright (c) 2024 Arm Limited. All Rights Reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+
+[build-system]
+requires = ["setuptools>=61.0"]
+build-backend = "setuptools.build_meta"
+[project]
+name = "tfz-suitegen"
+version = "0.0.1"
+description = "Suite generator for the TF-Fuzz tool"
+requires-python = ">=3.8"
+dependencies = ["jinja2>=3.1"]
diff --git a/tf_fuzz/tfz-suitegen/src/tfz-suitegen/__init__.py b/tf_fuzz/tfz-suitegen/src/tfz-suitegen/__init__.py
new file mode 100644
index 0000000..3511107
--- /dev/null
+++ b/tf_fuzz/tfz-suitegen/src/tfz-suitegen/__init__.py
@@ -0,0 +1,3 @@
+# Copyright (c) 2024 Arm Limited. All Rights Reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
diff --git a/tf_fuzz/tfz-suitegen/src/tfz-suitegen/__main__.py b/tf_fuzz/tfz-suitegen/src/tfz-suitegen/__main__.py
new file mode 100644
index 0000000..3511107
--- /dev/null
+++ b/tf_fuzz/tfz-suitegen/src/tfz-suitegen/__main__.py
@@ -0,0 +1,3 @@
+# Copyright (c) 2024 Arm Limited. All Rights Reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause