blob: d5ea932dcdc40608ae3a2318a4edd1c5a35a424a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
############################################################################
# CMakeLists.txt
#
# Released under the MIT License. See LICENSE.txt for license information.
#
############################################################################
# p448 field
add_custom_command(
COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/generator/template.py --per=field --guard=p448/f_field.h --item=p448 -o ${GSOURCE_PATH}/c/p448/f_field.h ${PROJECT_SOURCE_DIR}/src/per_field/f_field.tmpl.h
DEPENDS ${PROJECT_SOURCE_DIR}/src/generator/template.py ${PROJECT_SOURCE_DIR}/src/per_field/f_field.tmpl.h
OUTPUT ${GSOURCE_PATH}/c/p448/f_field.h
COMMENT "Generating code for p448/f_field.h"
)
add_custom_command(
COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/generator/template.py --per=field --guard=p448/f_generic.c --item=p448 -o ${GSOURCE_PATH}/c/p448/f_generic.c ${PROJECT_SOURCE_DIR}/src/per_field/f_generic.tmpl.c
DEPENDS ${PROJECT_SOURCE_DIR}/src/generator/template.py ${PROJECT_SOURCE_DIR}/src/per_field/f_generic.tmpl.c
OUTPUT ${GSOURCE_PATH}/c/p448/f_generic.c
COMMENT "Generating code for p448/f_generic.c"
)
add_custom_target(generatorP448 DEPENDS
generatorCommonCode
${GSOURCE_PATH}/c/p448/f_field.h
${GSOURCE_PATH}/c/p448/f_generic.c
)
# ed448goldilocks
add_custom_command(
COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/generator/template.py --per=curve --item=ed448goldilocks --guard=ed448goldilocks/scalar.c -o ${GSOURCE_PATH}/c/ed448goldilocks/scalar.c ${PROJECT_SOURCE_DIR}/src/per_curve/scalar.tmpl.c
DEPENDS ${PROJECT_SOURCE_DIR}/src/generator/template.py ${PROJECT_SOURCE_DIR}/src/per_curve/scalar.tmpl.c
OUTPUT ${GSOURCE_PATH}/c/ed448goldilocks/scalar.c
COMMENT "Generating code for ed448goldilocks/scalar.c"
)
add_custom_command(
COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/generator/template.py --per=curve --item=ed448goldilocks --guard=ed448goldilocks/decaf.c -o ${GSOURCE_PATH}/c/ed448goldilocks/decaf.c ${PROJECT_SOURCE_DIR}/src/per_curve/decaf.tmpl.c
DEPENDS ${PROJECT_SOURCE_DIR}/src/generator/template.py ${PROJECT_SOURCE_DIR}/src/per_curve/decaf.tmpl.c
OUTPUT ${GSOURCE_PATH}/c/ed448goldilocks/decaf.c
COMMENT "Generating code for ed448goldilocks/decaf.c"
)
add_custom_command(
COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/generator/template.py --per=curve --item=ed448goldilocks --guard=ed448goldilocks/elligator.c -o ${GSOURCE_PATH}/c/ed448goldilocks/elligator.c ${PROJECT_SOURCE_DIR}/src/per_curve/elligator.tmpl.c
DEPENDS ${PROJECT_SOURCE_DIR}/src/generator/template.py ${PROJECT_SOURCE_DIR}/src/per_curve/elligator.tmpl.c
OUTPUT ${GSOURCE_PATH}/c/ed448goldilocks/elligator.c
COMMENT "Generating code for ed448goldilocks/elligator.c"
)
add_custom_command(
COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/generator/template.py --per=curve --item=ed448goldilocks --guard=ed448goldilocks/eddsa.c -o ${GSOURCE_PATH}/c/ed448goldilocks/eddsa.c ${PROJECT_SOURCE_DIR}/src/per_curve/eddsa.tmpl.c
DEPENDS ${PROJECT_SOURCE_DIR}/src/generator/template.py ${PROJECT_SOURCE_DIR}/src/per_curve/eddsa.tmpl.c
OUTPUT ${GSOURCE_PATH}/c/ed448goldilocks/eddsa.c
COMMENT "Generating code for ed448goldilocks/eddsa.c"
)
add_custom_command(
COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/generator/template.py --per=curve --item=ed448goldilocks --guard=ed448goldilocks/decaf_gen_tables.c -o ${GSOURCE_PATH}/c/ed448goldilocks/decaf_gen_tables.c ${PROJECT_SOURCE_DIR}/src/per_curve/decaf_gen_tables.tmpl.c
DEPENDS ${PROJECT_SOURCE_DIR}/src/generator/template.py ${PROJECT_SOURCE_DIR}/src/per_curve/decaf_gen_tables.tmpl.c
OUTPUT ${GSOURCE_PATH}/c/ed448goldilocks/decaf_gen_tables.c
COMMENT "Generating code for ed448goldilocks/decaf_gen_tables.c"
)
add_custom_command(
COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/generator/template.py --per=curve --item=ed448goldilocks --guard=decaf/point_448.hxx -o ${GSOURCE_PATH}/include/decaf/point_448.hxx ${PROJECT_SOURCE_DIR}/src/per_curve/point.tmpl.hxx
DEPENDS ${PROJECT_SOURCE_DIR}/src/generator/template.py ${PROJECT_SOURCE_DIR}/src/per_curve/point.tmpl.hxx
OUTPUT ${GSOURCE_PATH}/include/decaf/point_448.hxx
COMMENT "Generating code for include/decaf/point_448.hxx"
)
add_custom_command(
COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/generator/template.py --per=curve --item=ed448goldilocks --guard=decaf/ed448.hxx -o ${GSOURCE_PATH}/include/decaf/ed448.hxx ${PROJECT_SOURCE_DIR}/src/per_curve/eddsa.tmpl.hxx
DEPENDS ${PROJECT_SOURCE_DIR}/src/generator/template.py ${PROJECT_SOURCE_DIR}/src/per_curve/eddsa.tmpl.hxx
OUTPUT ${GSOURCE_PATH}/include/decaf/ed448.hxx
COMMENT "Generating code for include/decaf/ed448.hxx"
)
add_custom_target(generatorEd448AndGenTablesCommon DEPENDS
${GSOURCE_PATH}/c/ed448goldilocks/scalar.c
${GSOURCE_PATH}/c/ed448goldilocks/decaf.c
)
add_custom_target(generatorEd448goldilocks DEPENDS
generatorP448
generatorEd448AndGenTablesCommon
${GSOURCE_PATH}/c/ed448goldilocks/elligator.c
${GSOURCE_PATH}/c/ed448goldilocks/eddsa.c
${GSOURCE_PATH}/include/decaf/point_448.hxx
${GSOURCE_PATH}/include/decaf/ed448.hxx
)
include_directories(
${PROJECT_SOURCE_DIR}/src/p448
${GSOURCE_PATH}/c/p448
${PROJECT_SOURCE_DIR}/src/p448/${TARGET_ARCH_DIR_P448}
)
add_executable(decaf_gen_tables_ed448goldilocks EXCLUDE_FROM_ALL ${GSOURCE_PATH}/c/ed448goldilocks/decaf_gen_tables.c
${GSOURCE_PATH}/c/ed448goldilocks/decaf.c
${GSOURCE_PATH}/c/ed448goldilocks/scalar.c
${PROJECT_SOURCE_DIR}/src/utils.c
$<TARGET_OBJECTS:p448>)
add_dependencies(decaf_gen_tables_ed448goldilocks generatorEd448AndGenTablesCommon)
add_custom_target(decaf_tables_ed448goldilocks
COMMAND decaf_gen_tables_ed448goldilocks > ${PROJECT_SOURCE_DIR}/src/ed448goldilocks/decaf_tables.c
DEPENDS decaf_gen_tables_ed448goldilocks
COMMENT "Generating code for ed448goldilocks/decaf_tables.c"
)
|