summaryrefslogtreecommitdiffstats
path: root/pts/test-resources/gtkperf/install.sh
blob: 9a0154ccf2bd166f08b0087c68a8ee4adff37887 (plain)
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
#!/bin/sh

THIS_DIR=$(pwd)
mkdir $THIS_DIR/gtkperf_env

tar -xvf gtkperf_0.40.tar.gz
cd gtkperf/

patch -p1 <<'EOT'
--- gtkperf/src/callbacks.c	2005-10-30 11:33:42.000000000 +0000
+++ gtkperf-patched/src/callbacks.c	2008-05-23 23:41:17.000000000 +0100
@@ -219,6 +219,13 @@
 }


+void
+on_cmdline_test(char *optarg)
+{
+	appdata->test_type = atoi(optarg);
+}
+
+
 /* Initialize appdata */
 void
 setup_appdata(AppData * appdata_in)
@@ -398,7 +405,7 @@
 	appdata->pixbuf_drawing = gdk_pixbuf_new_from_file (filename, NULL);

 	gtk_combo_box_set_active (GTK_COMBO_BOX (appdata->combobox_testtype),
-				  0);
+				  appdata->test_type);

 	/* create end mark to info textview */
 	GtkTextIter iter;
--- gtkperf/src/callbacks.h	2005-10-30 10:21:23.000000000 +0000
+++ gtkperf-patched/src/callbacks.h	2008-05-23 23:22:30.000000000 +0100
@@ -13,6 +13,7 @@
 void on_cmdline_run_all ();
 void on_cmdline_help () ;
 void on_cmdline_count (char *optarg) ;
+void on_cmdline_test (char *optarg) ;
 void on_window_main_show (AppData * data);

 gboolean
--- gtkperf/src/main.c	2005-10-30 11:26:42.000000000 +0000
+++ gtkperf-patched/src/main.c	2008-05-23 23:44:02.000000000 +0100
@@ -65,9 +65,10 @@
 			{"help", 0, 0, 0},
 			{"automatic", 0, 0, 0},
 			{"count", 1, 0, 0},
+			{"test", 1, 0, 0},
 			{0, 0, 0, 0}
 		};
-		c = getopt_long (argc, argv, "hac:",
+		c = getopt_long (argc, argv, "hac:t:",
 			long_options, &option_index);
 		if (c == -1)
 			break;
@@ -104,6 +105,10 @@
 				on_cmdline_count(optarg);
 				break;

+			case 't':
+				on_cmdline_test(optarg);
+				break;
+
 			default:
 			case 'h':
 				on_cmdline_help ();

EOT

./configure --prefix=$THIS_DIR/gtkperf_env
make -j $NUM_CPU_JOBS
make install
cd ..
rm -rf gtkperf/

cat > gtkperf <<'EOT'
#!/bin/sh

case "$1" in
"COMBOBOX")
	test=2
	;;
"COMBOBOX_ENTRY")
	test=3
	;;
"TOGGLE_BUTTON")
	test=6
	;;
"CHECK_BUTTON")
	test=7
	;;
"RADIO_BUTTON")
	test=8
	;;
"TEXTVIEW_ADD")
	test=9
	;;
"TEXTVIEW_SCROLL")
	test=10
	;;
"DRAWING_CIRCLES")
	test=12
	;;
"DRAWING_PIXBUFS")
	test=14
	;;
"TOTAL_TIME")
	test=0
	;;
esac

./gtkperf_env/bin/gtkperf -a -c 5000 -t $test > $LOG_FILE

EOT

chmod +x gtkperf