Rename variable in code generator

This commit is contained in:
Douglas Stebila 2019-05-16 09:16:21 -04:00
parent 155dbe8820
commit 08f1c3e20e
12 changed files with 18 additions and 13 deletions

View File

@ -1,4 +1,4 @@
{% for family in families %}
{% for family in kems %}
if ENABLE_KEM_{{ family['name']|upper }}
liboqs_la_LIBADD += src/kem/{{ family['name'] }}/libkem{{ family['name'] }}.la
endif{% endfor %}

View File

@ -7,7 +7,7 @@ installheader_HEADERS= src/oqs.h \
src/crypto/sha3/sha3.h \
src/kem/kem.h \
src/kem/bike/kem_bike.h \
{%- for family in families %}
{%- for family in kems %}
src/kem/{{ family['name'] }}/kem_{{ family['name'] }}.h \{% endfor %}
src/kem/newhopenist/kem_newhopenist.h \
src/kem/sike/kem_sike.h \

View File

@ -1,3 +1,3 @@
{% for family in families %}
{% for family in kems %}
cp -f src/kem/{{ family['name'] }}/kem_{{ family['name'] }}.h include/oqs{% endfor %}

View File

@ -1,4 +1,4 @@
{% for family in families %}
{% for family in kems %}
AM_COND_IF([ENABLE_KEM_{{ family['name']|upper }}], [{% for scheme in family['schemes'] %}
AC_DEFINE(OQS_ENABLE_KEM_{{ family['name'] }}_{{ scheme['scheme'] }}, 1, "Define to 1 when {{ scheme['pretty_name_full'] }} enabled"){% endfor %}
]){% endfor %}

View File

@ -1,3 +1,3 @@
{% for family in families %}
{% for family in kems %}
ARG_DISBL_SET_WRAP([kem-{{ family['name'] }}], [kem_{{ family['name'] }}], [ENABLE_KEM_{{ family['name']|upper }}], [src/kem/{{ family['name'] }}]){% endfor %}

View File

@ -8,7 +8,7 @@ AC_CONFIG_FILES([Makefile
src/sig/picnic/Makefile
src/sig/qtesla/Makefile
src/kem/bike/Makefile
{%- for family in families %}
{%- for family in kems %}
src/kem/{{ family['name'] }}/Makefile{% endfor %}
src/kem/sike/Makefile
src/kem/newhopenist/Makefile

View File

@ -31,7 +31,12 @@ def generator(destination_filename, template_filename, family, scheme_desired):
assert(len(scheme['metadata']['implementations']) == 1)
file_put_contents(destination_filename, jinja2.Template(template).render(f))
def replacer(filename, families, delimiter):
def generator_all(filename, kems):
template = file_get_contents(os.path.join('scripts', 'copy_from_pqclean', filename))
contents = jinja2.Template(template).render({'kems': kems})
file_put_contents(filename, contents)
def replacer(filename, kems, delimiter):
fragments = glob.glob(os.path.join('scripts', 'copy_from_pqclean', filename, '*.fragment'))
contents = file_get_contents(filename)
for fragment in fragments:
@ -41,7 +46,7 @@ def replacer(filename, families, delimiter):
identifier_end = '{} OQS_COPY_FROM_PQCLEAN_FRAGMENT_{}_END'.format(delimiter, identifier.upper())
preamble = contents[:contents.find(identifier_start)]
postamble = contents[contents.find(identifier_end):]
contents = preamble + identifier_start + jinja2.Template(template).render({'families': families}) + postamble
contents = preamble + identifier_start + jinja2.Template(template).render({'kems': kems}) + postamble
file_put_contents(filename, contents)
def load_kems():

View File

@ -1,3 +1,3 @@
{% for family in families %}
{% for family in kems %}
{% for scheme in family['schemes'] %} OQS_KEM_alg_{{ family['name'] }}_{{ scheme['scheme'] }},{% endfor %}{% endfor %}

View File

@ -1,4 +1,4 @@
{% for family in families %}{% for scheme in family['schemes'] %}
{% for family in kems %}{% for scheme in family['schemes'] %}
} else if (0 == strcasecmp(method_name, OQS_KEM_alg_{{ family['name'] }}_{{ scheme['scheme'] }})) {
#ifdef OQS_ENABLE_KEM_{{ family['name'] }}_{{ scheme['scheme'] }}
return OQS_KEM_{{ family['name'] }}_{{ scheme['scheme'] }}_new();

View File

@ -1,4 +1,4 @@
{% for family in families %}{% for scheme in family['schemes'] %}
{% for family in kems %}{% for scheme in family['schemes'] %}
/** Algorithm identifier for {{ scheme['pretty_name_full'] }} KEM. */
#define OQS_KEM_alg_{{ family['name'] }}_{{ scheme['scheme'] }} "{{ scheme['pretty_name_full'] }}"{% endfor %}{% endfor %}

View File

@ -1,4 +1,4 @@
{% set unary %}{% for family in families %}{% for scheme in family['schemes'] %}1{% endfor %}{% endfor %}{% endset %}
{% set unary %}{% for family in kems %}{% for scheme in family['schemes'] %}1{% endfor %}{% endfor %}{% endset %}
/** Number of algorithm identifiers above. */
#define OQS_KEM_algs_length {{ unary|length + 16 }}

View File

@ -1,3 +1,3 @@
{% for family in families %}
{% for family in kems %}
#include <oqs/kem_{{ family['name'] }}.h>{% endfor %}