#include <stdlib.h>
#include <stdio.h>
#include <fontconfig/fontconfig.h>

int main(int argc, char** argv) {
        FcFontSet   *fs;
        FcPattern   *pat;
        FcPattern   *match;
        FcResult    result;
        if (!FcInit()) {
                fprintf(stderr, "Ouch, can't init font config library\n");
                exit(1);
        }

        pat = FcNameParse((unsigned char *)"sans");
        if (!pat) {
                fprintf(stderr, "Failed to parse pattern\n");
                exit(1);
        }

        FcConfigSubstitute(0, pat, FcMatchPattern);
        FcDefaultSubstitute(pat);
        fs = FcFontSetCreate();
        match = FcFontMatch(0, pat, &result);
        if (match)
            FcFontSetAdd (fs, match);
        FcPatternDestroy (pat);

        if (fs) {
                if (fs->nfont > 0) {
                        FcChar8 *file;
                        if (FcPatternGetString(fs->fonts[0], FC_FILE, 0, &file) == FcResultMatch) {
                                printf("found file: %s\n", file);
                        }
                }
                FcFontSetDestroy(fs);
        }

        return 0;
}

