1 |
commit: 3d1db1186049820984f67831069ff16be3d42e5b |
2 |
Author: Conrad Kostecki <conikost <AT> gentoo <DOT> org> |
3 |
AuthorDate: Tue Apr 27 20:49:42 2021 +0000 |
4 |
Commit: Conrad Kostecki <conikost <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Apr 28 20:53:16 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3d1db118 |
7 |
|
8 |
app-benchmarks/bonnie++: bump to version 2.00a |
9 |
|
10 |
Closes: https://bugs.gentoo.org/768402 |
11 |
Package-Manager: Portage-3.0.18, Repoman-3.0.3 |
12 |
Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org> |
13 |
|
14 |
app-benchmarks/bonnie++/Manifest | 1 + |
15 |
app-benchmarks/bonnie++/bonnie++-2.00a.ebuild | 39 +++++ |
16 |
.../bonnie++/files/bonnie++-2.00a-gcc11.patch | 177 +++++++++++++++++++++ |
17 |
.../bonnie++/files/bonnie++-2.00a-makefile.patch | 47 ++++++ |
18 |
4 files changed, 264 insertions(+) |
19 |
|
20 |
diff --git a/app-benchmarks/bonnie++/Manifest b/app-benchmarks/bonnie++/Manifest |
21 |
index 16e4fa97abd..6fdb435854d 100644 |
22 |
--- a/app-benchmarks/bonnie++/Manifest |
23 |
+++ b/app-benchmarks/bonnie++/Manifest |
24 |
@@ -1,3 +1,4 @@ |
25 |
DIST bonnie++-1.97.2.tgz 102533 BLAKE2B 019182c08b9ff7ba60e421f94039c09d27855f9e5b313f451721afdaedc9dc694b468bb30e78a04b655ec9a358ace3d68b13fc8f4d80ca3c48e0ff9387525b57 SHA512 e8303720be9a4ebcc454dbc8906a6843d63909c5101d66524a126ce0db3db7113d01edb7ed2f292bf9d08a6799579c4960f0ee4595019fbacda1601eba52a170 |
26 |
DIST bonnie++-1.97.3.tgz 100166 BLAKE2B 30feca43a2ec37b795168d37bb941241777718222d7e0681dc85a34f8691e76b4306850e41dc6bbfb3f0ad34123ecd1c12396efea99e2ade12206aa6e78708e8 SHA512 44de20b5e46aeaf7f7214766b3c555b8799138f6fd92f87fe9b7dfa6f19815c629d6122c2ef4e4d98a5528dbfcd4c70b3b850eeba05739f6dd20251bf8d7c893 |
27 |
DIST bonnie++-1.98.tgz 100339 BLAKE2B 2a75cbeb881fd12727b5edf4e67789e64bd624b1885cdaf83fe3fc920fb2346e98faea2d9ce5da6fac8a84318a9cbda013afa2c9809892b23d3cf85c5a70982b SHA512 3cf70be4a20c58c80e29a140ec6d3c3884f1b4101e0fb63da0ea831fe4a5eb4e275bda2ce4eaf7d9c2bfb65742e985249b491cda8bdad85984a62f2fc19756c0 |
28 |
+DIST bonnie++-2.00a.tgz 100502 BLAKE2B 8bf9105dbbb1137485d8f24d4b911ca6787d09e3926181b460c18ceb52aea11ddff8f8edfefd1b2577fb1b59e658f4835cc865755faf739389f78fa855d13815 SHA512 1776f8406ccd0341f13bd952830f063e7df8fc2bd6d5c837de875dd5f817e29982b2a6358049221bffcae8faa7489560d2a1af46d79d8eb221d515d797236bdc |
29 |
|
30 |
diff --git a/app-benchmarks/bonnie++/bonnie++-2.00a.ebuild b/app-benchmarks/bonnie++/bonnie++-2.00a.ebuild |
31 |
new file mode 100644 |
32 |
index 00000000000..f78476d70b6 |
33 |
--- /dev/null |
34 |
+++ b/app-benchmarks/bonnie++/bonnie++-2.00a.ebuild |
35 |
@@ -0,0 +1,39 @@ |
36 |
+# Copyright 1999-2021 Gentoo Authors |
37 |
+# Distributed under the terms of the GNU General Public License v2 |
38 |
+ |
39 |
+EAPI=7 |
40 |
+ |
41 |
+DESCRIPTION="Hard drive bottleneck testing benchmark suite" |
42 |
+HOMEPAGE="https://www.coker.com.au/bonnie++/" |
43 |
+SRC_URI="https://www.coker.com.au/${PN}/${P}.tgz" |
44 |
+S="${WORKDIR}/${P}" |
45 |
+ |
46 |
+LICENSE="GPL-2" |
47 |
+SLOT="0" |
48 |
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" |
49 |
+IUSE="debug" |
50 |
+ |
51 |
+PATCHES=( |
52 |
+ "${FILESDIR}/${PN}-1.97-zcav-array-indexing-fix.patch" #309319 |
53 |
+ "${FILESDIR}/${PN}-2.00a-gcc11.patch" #768402 |
54 |
+ "${FILESDIR}/${PN}-2.00a-makefile.patch" #426788 |
55 |
+) |
56 |
+ |
57 |
+DOCS=( "credits.txt" "README.txt" "README-2.00" "debian/changelog" ) |
58 |
+HTML_DOCS=( "readme.html" ) |
59 |
+ |
60 |
+src_prepare() { |
61 |
+ default |
62 |
+ |
63 |
+ # Fix path in manpage #431684 |
64 |
+ sed -e "/readme.html/s/bonnie++/${PF}\/html/" -i bonnie++.8 || die |
65 |
+} |
66 |
+ |
67 |
+src_configure() { |
68 |
+ local myeconfargs=( |
69 |
+ --disable-stripping |
70 |
+ $(usex debug "--enable-debug" "") |
71 |
+ ) |
72 |
+ |
73 |
+ econf "${myeconfargs[@]}" |
74 |
+} |
75 |
|
76 |
diff --git a/app-benchmarks/bonnie++/files/bonnie++-2.00a-gcc11.patch b/app-benchmarks/bonnie++/files/bonnie++-2.00a-gcc11.patch |
77 |
new file mode 100644 |
78 |
index 00000000000..3bf224f34b5 |
79 |
--- /dev/null |
80 |
+++ b/app-benchmarks/bonnie++/files/bonnie++-2.00a-gcc11.patch |
81 |
@@ -0,0 +1,177 @@ |
82 |
+--- a/bon_csv2html.cpp |
83 |
++++ b/bon_csv2html.cpp |
84 |
+@@ -10,7 +10,7 @@ |
85 |
+ using namespace std; |
86 |
+ typedef vector<PCCHAR> STR_VEC; |
87 |
+ |
88 |
+-vector<STR_VEC> data; |
89 |
++vector<STR_VEC> stddata; |
90 |
+ typedef PCCHAR * PPCCHAR; |
91 |
+ PPCCHAR * props; |
92 |
+ |
93 |
+@@ -87,8 +87,8 @@ |
94 |
+ read_in(buf); |
95 |
+ } |
96 |
+ |
97 |
+- props = new PPCCHAR[data.size()]; |
98 |
+- for(i = 0; i < data.size(); i++) |
99 |
++ props = new PPCCHAR[stddata.size()]; |
100 |
++ for(i = 0; i < stddata.size(); i++) |
101 |
+ { |
102 |
+ props[i] = new PCCHAR[MAX_ITEMS]; |
103 |
+ props[i][0] = NULL; |
104 |
+@@ -109,7 +109,7 @@ |
105 |
+ } |
106 |
+ calc_vals(); |
107 |
+ int mid_width = header(); |
108 |
+- for(i = 0; i < data.size(); i++) |
109 |
++ for(i = 0; i < stddata.size(); i++) |
110 |
+ { |
111 |
+ // First print the average speed line |
112 |
+ printf("<tr>"); |
113 |
+@@ -171,23 +171,23 @@ |
114 |
+ |
115 |
+ void calc_vals() |
116 |
+ { |
117 |
+- ITEM *arr = new ITEM[data.size()]; |
118 |
++ ITEM *arr = new ITEM[stddata.size()]; |
119 |
+ for(unsigned int column_ind = 0; column_ind < MAX_ITEMS; column_ind++) |
120 |
+ { |
121 |
+ switch(vals[column_ind]) |
122 |
+ { |
123 |
+ case eNoCols: |
124 |
+ { |
125 |
+- for(unsigned int row_ind = 0; row_ind < data.size(); row_ind++) |
126 |
++ for(unsigned int row_ind = 0; row_ind < stddata.size(); row_ind++) |
127 |
+ { |
128 |
+ if(column_ind == COL_CONCURRENCY) |
129 |
+ { |
130 |
+- if(data[row_ind][column_ind] && strcmp("1", data[row_ind][column_ind])) |
131 |
++ if(stddata[row_ind][column_ind] && strcmp("1", stddata[row_ind][column_ind])) |
132 |
+ col_used[column_ind] = true; |
133 |
+ } |
134 |
+ else |
135 |
+ { |
136 |
+- if(data[row_ind][column_ind] && strlen(data[row_ind][column_ind])) |
137 |
++ if(stddata[row_ind][column_ind] && strlen(stddata[row_ind][column_ind])) |
138 |
+ col_used[column_ind] = true; |
139 |
+ } |
140 |
+ } |
141 |
+@@ -195,22 +195,22 @@ |
142 |
+ break; |
143 |
+ case eCPU: |
144 |
+ { |
145 |
+- for(unsigned int row_ind = 0; row_ind < data.size(); row_ind++) |
146 |
++ for(unsigned int row_ind = 0; row_ind < stddata.size(); row_ind++) |
147 |
+ { |
148 |
+ double work, cpu; |
149 |
+ arr[row_ind].val = 0.0; |
150 |
+- if(data[row_ind].size() > column_ind |
151 |
+- && sscanf(data[row_ind][column_ind - 1], "%lf", &work) == 1 |
152 |
+- && sscanf(data[row_ind][column_ind], "%lf", &cpu) == 1) |
153 |
++ if(stddata[row_ind].size() > column_ind |
154 |
++ && sscanf(stddata[row_ind][column_ind - 1], "%lf", &work) == 1 |
155 |
++ && sscanf(stddata[row_ind][column_ind], "%lf", &cpu) == 1) |
156 |
+ { |
157 |
+ arr[row_ind].val = cpu / work; |
158 |
+ } |
159 |
+ arr[row_ind].pos = row_ind; |
160 |
+ } |
161 |
+- qsort(arr, data.size(), sizeof(ITEM), compar); |
162 |
++ qsort(arr, stddata.size(), sizeof(ITEM), compar); |
163 |
+ int col_count = -1; |
164 |
+ double min_col = -1.0, max_col = -1.0; |
165 |
+- for(unsigned int sort_ind = 0; sort_ind < data.size(); sort_ind++) |
166 |
++ for(unsigned int sort_ind = 0; sort_ind < stddata.size(); sort_ind++) |
167 |
+ { |
168 |
+ // if item is different from previous or if the first row |
169 |
+ // (sort_ind == 0) then increment col count |
170 |
+@@ -239,7 +239,7 @@ |
171 |
+ min_col /= mult; |
172 |
+ } |
173 |
+ double range_col = max_col - min_col; |
174 |
+- for(unsigned int sort_ind = 0; sort_ind < data.size(); sort_ind++) |
175 |
++ for(unsigned int sort_ind = 0; sort_ind < stddata.size(); sort_ind++) |
176 |
+ { |
177 |
+ if(arr[sort_ind].col_ind > -1) |
178 |
+ { |
179 |
+@@ -250,7 +250,7 @@ |
180 |
+ } |
181 |
+ else |
182 |
+ { |
183 |
+- for(unsigned int sort_ind = 0; sort_ind < data.size(); sort_ind++) |
184 |
++ for(unsigned int sort_ind = 0; sort_ind < stddata.size(); sort_ind++) |
185 |
+ { |
186 |
+ if(vals[column_ind] == eLatency) |
187 |
+ { |
188 |
+@@ -263,25 +263,25 @@ |
189 |
+ case eSpeed: |
190 |
+ case eLatency: |
191 |
+ { |
192 |
+- for(unsigned int row_ind = 0; row_ind < data.size(); row_ind++) |
193 |
++ for(unsigned int row_ind = 0; row_ind < stddata.size(); row_ind++) |
194 |
+ { |
195 |
+ arr[row_ind].val = 0.0; |
196 |
+- if(data[row_ind].size() <= column_ind |
197 |
+- || sscanf(data[row_ind][column_ind], "%lf", &arr[row_ind].val) == 0) |
198 |
++ if(stddata[row_ind].size() <= column_ind |
199 |
++ || sscanf(stddata[row_ind][column_ind], "%lf", &arr[row_ind].val) == 0) |
200 |
+ arr[row_ind].val = 0.0; |
201 |
+ if(vals[column_ind] == eLatency && arr[row_ind].val != 0.0) |
202 |
+ { |
203 |
+- if(strstr(data[row_ind][column_ind], "ms")) |
204 |
++ if(strstr(stddata[row_ind][column_ind], "ms")) |
205 |
+ arr[row_ind].val *= 1000.0; |
206 |
+- else if(!strstr(data[row_ind][column_ind], "us")) |
207 |
++ else if(!strstr(stddata[row_ind][column_ind], "us")) |
208 |
+ arr[row_ind].val *= 1000000.0; // is !us && !ms then secs! |
209 |
+ } |
210 |
+ arr[row_ind].pos = row_ind; |
211 |
+ } |
212 |
+- qsort(arr, data.size(), sizeof(ITEM), compar); |
213 |
++ qsort(arr, stddata.size(), sizeof(ITEM), compar); |
214 |
+ int col_count = -1; |
215 |
+ double min_col = -1.0, max_col = -1.0; |
216 |
+- for(unsigned int sort_ind = 0; sort_ind < data.size(); sort_ind++) |
217 |
++ for(unsigned int sort_ind = 0; sort_ind < stddata.size(); sort_ind++) |
218 |
+ { |
219 |
+ // if item is different from previous or if the first row |
220 |
+ // (sort_ind == 0) then increment col count |
221 |
+@@ -310,7 +310,7 @@ |
222 |
+ min_col /= mult; |
223 |
+ } |
224 |
+ double range_col = max_col - min_col; |
225 |
+- for(unsigned int sort_ind = 0; sort_ind < data.size(); sort_ind++) |
226 |
++ for(unsigned int sort_ind = 0; sort_ind < stddata.size(); sort_ind++) |
227 |
+ { |
228 |
+ if(arr[sort_ind].col_ind > -1) |
229 |
+ { |
230 |
+@@ -332,7 +332,7 @@ |
231 |
+ } |
232 |
+ else |
233 |
+ { |
234 |
+- for(unsigned int sort_ind = 0; sort_ind < data.size(); sort_ind++) |
235 |
++ for(unsigned int sort_ind = 0; sort_ind < stddata.size(); sort_ind++) |
236 |
+ { |
237 |
+ if(vals[column_ind] == eLatency) |
238 |
+ { |
239 |
+@@ -481,16 +481,16 @@ |
240 |
+ free((void *)arr[0]); |
241 |
+ return; |
242 |
+ } |
243 |
+- data.push_back(arr); |
244 |
++ stddata.push_back(arr); |
245 |
+ } |
246 |
+ |
247 |
+ void print_item(int num, int item, CPCCHAR extra) |
248 |
+ { |
249 |
+ PCCHAR line_data; |
250 |
+ char buf[1024]; |
251 |
+- if(int(data[num].size()) > item) |
252 |
++ if(int(stddata[num].size()) > item) |
253 |
+ { |
254 |
+- line_data = data[num][item]; |
255 |
++ line_data = stddata[num][item]; |
256 |
+ switch(item) |
257 |
+ { |
258 |
+ case COL_PUT_BLOCK: |
259 |
|
260 |
diff --git a/app-benchmarks/bonnie++/files/bonnie++-2.00a-makefile.patch b/app-benchmarks/bonnie++/files/bonnie++-2.00a-makefile.patch |
261 |
new file mode 100644 |
262 |
index 00000000000..2fd48e9ff85 |
263 |
--- /dev/null |
264 |
+++ b/app-benchmarks/bonnie++/files/bonnie++-2.00a-makefile.patch |
265 |
@@ -0,0 +1,47 @@ |
266 |
+--- a/Makefile.in |
267 |
++++ b/Makefile.in |
268 |
+@@ -9,9 +9,9 @@ |
269 |
+ eprefix=@exec_prefix@ |
270 |
+ #MORE_WARNINGS=-Weffc++ |
271 |
+ WFLAGS=-Wall -W -Wshadow -Wpointer-arith -Wwrite-strings -pedantic -ffor-scope -Wcast-align -Wsign-compare -Wpointer-arith -Wwrite-strings -Wformat-security -Wswitch-enum -Winit-self $(MORE_WARNINGS) |
272 |
+-CFLAGS=-O2 @debug@ -DNDEBUG $(WFLAGS) $(MORECFLAGS) |
273 |
+-CXX=@CXX@ $(CFLAGS) |
274 |
+-LINK=@CXX@ |
275 |
++CXXFLAGS += @debug@ -DNDEBUG $(WFLAGS) |
276 |
++CXX=@CXX@ $(CXXFLAGS) |
277 |
++LINK=@CXX@ $(LDFLAGS) |
278 |
+ THREAD_LFLAGS=@thread_ldflags@ |
279 |
+ |
280 |
+ INSTALL=@INSTALL@ |
281 |
+@@ -43,7 +43,7 @@ |
282 |
+ $(LINK) -o getc_putc $(GETCOBJS) $(THREAD_LFLAGS) |
283 |
+ |
284 |
+ getc_putc_helper: $(GETCHOBJS) |
285 |
+- $(CXX) -o getc_putc_helper $(GETCHOBJS) |
286 |
++ $(CXX) $(LDFLAGS) -o getc_putc_helper $(GETCHOBJS) |
287 |
+ |
288 |
+ bon_csv2html: bon_csv2html.o |
289 |
+ $(LINK) bon_csv2html.o -o bon_csv2html |
290 |
+@@ -52,15 +52,15 @@ |
291 |
+ $(LINK) generate_randfile.o -o generate_randfile |
292 |
+ |
293 |
+ install-bin: $(EXE) $(EXES) |
294 |
+- mkdir -p $(eprefix)/bin $(eprefix)/sbin |
295 |
+- @INSTALL_PROGRAM@ @stripping@ $(EXES) $(eprefix)/sbin |
296 |
+- @INSTALL_PROGRAM@ @stripping@ $(EXE) $(eprefix)/bin |
297 |
+- @INSTALL_SCRIPT@ $(SCRIPTS) $(eprefix)/bin |
298 |
++ mkdir -p $(DESTDIR)/$(eprefix)/bin $(DESTDIR)/$(eprefix)/sbin |
299 |
++ @INSTALL_PROGRAM@ @stripping@ $(EXES) $(DESTDIR)/$(eprefix)/sbin |
300 |
++ @INSTALL_PROGRAM@ @stripping@ $(EXE) $(DESTDIR)/$(eprefix)/bin |
301 |
++ @INSTALL_SCRIPT@ $(SCRIPTS) $(DESTDIR)/$(eprefix)/bin |
302 |
+ |
303 |
+ install: install-bin |
304 |
+- mkdir -p @mandir@/man1 @mandir@/man8 |
305 |
+- @INSTALL_DATA@ $(MAN1) @mandir@/man1 |
306 |
+- @INSTALL_DATA@ $(MAN8) @mandir@/man8 |
307 |
++ mkdir -p $(DESTDIR)/@mandir@/man1 $(DESTDIR)/@mandir@/man8 |
308 |
++ @INSTALL_DATA@ $(MAN1) $(DESTDIR)/@mandir@/man1 |
309 |
++ @INSTALL_DATA@ $(MAN8) $(DESTDIR)/@mandir@/man8 |
310 |
+ |
311 |
+ %.o: %.cpp |
312 |
+ $(CXX) -c $< |