#!/usr/bin/awk -f
#   Copyright (C)2024 @BABOLO http://www.babolo.ru/
#   PKG = cipalib
#   All rights reserved.
#
#   Redistribution and use in source and binary forms, with or without
#   modification, are permitted provided that the following conditions
#   are met:
#   1. Redistributions of source code must retain the above copyright
#      notice, this list of conditions and the following disclaimer.
#   2. Redistributions in binary form must reproduce the above copyright
#      notice, this list of conditions and the following disclaimer in the
#      documentation and/or other materials provided with the distribution.
#
#   THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
#   ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
#   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
#   ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
#   FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
#   DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
#   OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
#   HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
#   LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
#   OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
#   SUCH DAMAGE.
#
#   $Id: ciparestyle,v 1.1 2024/06/12 17:54:42 babolo Exp $
#

BEGIN{
    f = "";
    c = 0;
    t = "";
}

/^#[_a-zA-Z0-9]+ /{
    if  (comm != "" && $1 == ("#" comm) && (style == "" || $2 == style)) {
        if  (!!c) print(t ": Multiple comments @" n);
        c = 1;
    } else {
        f = $1;
        sub(/^#/, "", f);
        a[$2] = a[$2] " " f;
        c = 0;
        printf "%s", t >>(f);
}   }

{
    if  (!!c) {
        t = t $0 "\n";
    } else if (f != "") {
        print($0) >>(f);
}   }

END{
    for (i in a) print(i " =" a[i]);
}
