// ${CC} test-cairo.c -o ${ROOT}/root/test-cairo -I ${ROOT}/usr/include/cairo/ -L${ROOT}/usr/lib -lcairo -lpng -lpixman-1 -lfreetype -lz -lfontconfig -lexpat -ldirectfb -ldirect -lfusion

#include <cairo.h>
#include <stdio.h>

void test_func()
{
    unsigned char dummy_surface_data;
    cairo_t *cr;
    cairo_surface_t *dummy_surface=NULL;
    dummy_surface = cairo_image_surface_create_for_data(&dummy_surface_data, CAIRO_FORMAT_ARGB32, 1, 1, 4);
    cr = cairo_create(dummy_surface);

    cairo_save(cr);cairo_restore(cr);
    cairo_new_path(cr);

    cairo_move_to(cr, 10, 10);
    cairo_rel_line_to(cr, 10 , 0);
    cairo_rel_line_to(cr, 0, 10);
    cairo_rel_line_to(cr, -10, 0);
    cairo_rel_line_to(cr, 0, -10);

    cairo_close_path(cr);
    cairo_set_line_width(cr, 1);

    cairo_destroy(cr);
    cairo_surface_destroy(dummy_surface);
}

void main()
{
    int i;
    for(i=0; i< 1000000; i++)
    {
        if(!(i%1000))
            printf("run %d\n", i);
        test_func();
    }
}

