1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
|
#!/usr/bin/bash
SILENT=0
generate_csource()
{
TEST=$1
FORMAT_ID=$2
FORMAT_EXT=$3
cat <<EOF > $TEST.c
#include <gr.h>
#include <gks.h>
#define MYWORKSTATION_ID 1
#define MYWORKSTATION_TYPE $FORMAT_ID /* $FORMAT_EXT */
int main(void) {
gr_opengks();
gr_openws(MYWORKSTATION_ID, "$TEST.$FORMAT_EXT", MYWORKSTATION_TYPE);
gr_activatews(MYWORKSTATION_ID);
gr_drawrect(0, 0, 100, 100);
gr_updatews();
gr_emergencyclosegks();
return 0;
}
EOF
}
run_test()
{
PLUGIN=$1
FORMAT_ID=$2
FORMAT_EXT=$3
TEST="test-plugin-${PLUGIN}-${FORMAT_EXT}"
generate_csource $TEST $FORMAT_ID $FORMAT_EXT
if [ $SILENT -ne 1 ]; then
cat $TEST.c
fi
gcc -o $TEST $TEST.c `pkg-config --cflags --libs gr` `pkg-config --cflags --libs gks`
./$TEST
test -f $TEST.$FORMAT_EXT
if [ $SILENT -ne 1 ]; then
mediainfo $TEST.$FORMAT_EXT
fi
echo "Using $PLUGIN plugin to generate $FORMAT_EXT: OK"
rm -f $TEST*
}
generate_csource_font()
{
TEST=$1
FONT_NAME=$2
FONT_ID=$3
cat <<EOF > $TEST.c
#include <gr.h>
#include <gks.h>
#define MYWORKSTATION_ID 1
#define MYWORKSTATION_TYPE 140 /* png */
int main(void) {
gr_opengks();
gr_openws(MYWORKSTATION_ID, "$TEST.png", MYWORKSTATION_TYPE);
gr_setwswindow(0, 500, 0, 500);
gr_activatews(MYWORKSTATION_ID);
gr_drawrect(0, 0, 100, 100);
gr_settextfontprec(${FONT_ID}, 3);
gr_text(0, 0, "Hello GR");
gr_updatews();
gr_emergencyclosegks();
return 0;
}
EOF
}
run_font_test()
{
TEST=$1
FONT_NAME=$2
FONT_ID=$3
generate_csource_font $TEST $FONT_NAME $FONT_ID
if [ $SILENT -ne 1 ]; then
cat $TEST.c
fi
gcc -o $TEST $TEST.c `pkg-config --cflags --libs gr` `pkg-config --cflags --libs gks`
./$TEST
test -f $TEST.png
if [ $SILENT -ne 1 ]; then
mediainfo $TEST.png
fi
echo "Using $font to generate $TEST.png: OK"
rm -f $TEST*
}
|