Add support for generating taler_signatures.h.

* contrib/sigp/: New dir.
* contrib/sigp/Makefile: New file.
* contrib/sigp/README: New file.
* contrib/sigp/h.footer: New file.
* contrib/sigp/h.header: New file.
* contrib/sigp/h.template: New file.
This commit is contained in:
Thien-Thi Nguyen 2022-06-04 09:20:52 -04:00
parent baf00c0262
commit 6512456dc2
No known key found for this signature in database
GPG Key ID: 670322244C807502
5 changed files with 65 additions and 0 deletions

21
contrib/sigp/Makefile Normal file
View File

@ -0,0 +1,21 @@
FILES = taler_signatures.h
gana = ../gana
all: check $(FILES)
check: registry.rec
recfix --check registry.rec
registry.rec:
ln -s $(gana)/gnunet-signatures/registry.rec
distclean:
rm -f *.tmp
clean:
rm -f $(FILES) *.tmp registry.rec
taler_signatures.h.tmp: registry.rec h.template
$(gana)/format.sh h.template 'Package = "GNU Taler"' < registry.rec > $@
taler_signatures.h: h.header taler_signatures.h.tmp h.footer
cat h.header taler_signatures.h.tmp h.footer > $@
.PHONY: check clean distclean

3
contrib/sigp/README Normal file
View File

@ -0,0 +1,3 @@
This directory contains bootstrap code to extract info from the
Signature Purposes database (registry) and format it in various ways.
It is a peer of ${top_srcdir}/contrib/gana/ (q.v.).

3
contrib/sigp/h.footer Normal file
View File

@ -0,0 +1,3 @@
#endif

32
contrib/sigp/h.header Normal file
View File

@ -0,0 +1,32 @@
/*
This file is part of TALER
Copyright (C) 2014-2022 Taler Systems SA
TALER is free software; you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation; either version 3, or (at your option) any later version.
TALER is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
TALER; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
*/
/**
* @file taler_signatures.h
* @brief message formats and signature constants used to define
* the binary formats of signatures in Taler
* @author Florian Dold
* @author Benedikt Mueller
*
* This file should define the constants and C structs that one needs
* to know to implement Taler clients (wallets or merchants or
* auditor) that need to produce or verify Taler signatures.
*/
#ifndef TALER_SIGNATURES_H
#define TALER_SIGNATURES_H
#include <gnunet/gnunet_util_lib.h>
#include "taler_amount_lib.h"
#include "taler_crypto_lib.h"

6
contrib/sigp/h.template Normal file
View File

@ -0,0 +1,6 @@
/**
* {{Comment}}
*/
#define TALER_SIGNATURE_{{Name}} {{Number}}