cairo/boilerplate/make-cairo-boilerplate-constructors.sh
Mathieu Duponchelle 596a82f2d1 Add meson build definitions
Co-Authored by:
Nirbheek Chauhan <nirbheek@centricular.com>
lb90 <luca.bacci982@gmail.com>
Tim-Philipp Müller <tim@centricular.com>
2020-07-31 12:21:50 +01:00

31 lines
586 B
Bash

#! /bin/sh
#
# IMPORTANT: Keep in sync with make-cairo-boilerplate-constructors.py!
if test $# -eq 0; then
echo "$0: no input files." >&2
exit 0
fi
cat <<HERE
/* WARNING: Autogenerated file - see $0! */
#include "cairo-boilerplate-private.h"
void _cairo_boilerplate_register_all (void);
HERE
cat "$@" | sed '/^CAIRO_BOILERPLATE/!d; s/CAIRO_BOILERPLATE.*(\(.*\),.*/extern void _register_\1 (void);/'
cat <<HERE
void
_cairo_boilerplate_register_all (void)
{
HERE
cat "$@" | sed '/^CAIRO_BOILERPLATE/!d; s/CAIRO_BOILERPLATE.*(\(.*\),.*/ _register_\1 ();/'
echo "}"