Gentoo Archives: gentoo-commits

From: Alexey Shvetsov <alexxy@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] dev/alexxy:master commit in: net-misc/bfgminer/files/, net-misc/bfgminer/
Date: Sun, 29 Sep 2013 11:42:32
Message-Id: 1380454917.6155ee1e40acd718ca98ea6793017488540eae82.alexxy@gentoo
1 commit: 6155ee1e40acd718ca98ea6793017488540eae82
2 Author: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
3 AuthorDate: Sun Sep 29 11:41:57 2013 +0000
4 Commit: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
5 CommitDate: Sun Sep 29 11:41:57 2013 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=dev/alexxy.git;a=commit;h=6155ee1e
7
8 Add live bfgminer with bitfury support
9
10 Package-Manager: portage-2.2.7
11
12 ---
13 net-misc/bfgminer/bfgminer-9999.ebuild | 130 +++++++++++++++++++++
14 ...cl-Add-missing-include-for-fpgautils.h-ne.patch | 25 ++++
15 ...cl-Build-fpgautils-even-if-OpenCL-is-the-.patch | 26 +++++
16 ...ugfix-Fix-building-without-OpenCL-support.patch | 32 +++++
17 net-misc/bfgminer/metadata.xml | 38 ++++++
18 5 files changed, 251 insertions(+)
19
20 diff --git a/net-misc/bfgminer/bfgminer-9999.ebuild b/net-misc/bfgminer/bfgminer-9999.ebuild
21 new file mode 100644
22 index 0000000..9ddc66b
23 --- /dev/null
24 +++ b/net-misc/bfgminer/bfgminer-9999.ebuild
25 @@ -0,0 +1,130 @@
26 +# Copyright 1999-2013 Gentoo Foundation
27 +# Distributed under the terms of the GNU General Public License v2
28 +# $Header: /var/cvsroot/gentoo-x86/net-misc/bfgminer/bfgminer-3.2.1.ebuild,v 1.1 2013/09/19 16:25:45 blueness Exp $
29 +
30 +EAPI="5"
31 +
32 +if [[ $PV = *9999* ]]; then
33 + scm_eclass=git-3
34 + EGIT_REPO_URI="https://github.com/luke-jr/bfgminer
35 + git://github.com/luke-jr/bfgminer"
36 + # bitfury lives in separate branch
37 + if use bitfury; then
38 + EGIT_BRACNH="bitfury"
39 + fi
40 + SRC_URI=""
41 + KEYWORDS=""
42 +else
43 + SRC_URI="http://luke.dashjr.org/programs/bitcoin/files/${PN}/${PV}/${P}.tbz2"
44 + KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 ~x86"
45 +fi
46 +
47 +
48 +inherit eutils
49 +
50 +DESCRIPTION="Modular Bitcoin ASIC/FPGA/GPU/CPU miner in C"
51 +HOMEPAGE="https://bitcointalk.org/?topic=168174"
52 +
53 +LICENSE="GPL-3"
54 +SLOT="0"
55 +
56 +IUSE="+adl avalon bfsb bitforce bitfury bigpic cpumining examples hardened icarus lm_sensors littlefury modminer metabank ncurses +opencl proxy scrypt +udev unicode x6500 ztex"
57 +REQUIRED_USE="
58 + || ( avalon bitforce cpumining icarus modminer opencl proxy x6500 ztex )
59 + adl? ( opencl )
60 + bfsb? ( bitfury )
61 + bigpic? ( bitfury )
62 + littlefury? ( bitfury )
63 + metabank? ( bitfury )
64 + lm_sensors? ( opencl )
65 + scrypt? ( || ( cpumining opencl ) )
66 + unicode? ( ncurses )
67 +"
68 +
69 +DEPEND="
70 + net-misc/curl
71 + ncurses? (
72 + sys-libs/ncurses[unicode?]
73 + )
74 + >=dev-libs/jansson-2
75 + net-libs/libblkmaker
76 + udev? (
77 + virtual/udev
78 + )
79 + lm_sensors? (
80 + sys-apps/lm_sensors
81 + )
82 + proxy? (
83 + net-libs/libmicrohttpd
84 + )
85 + x6500? (
86 + virtual/libusb:1
87 + )
88 + ztex? (
89 + virtual/libusb:1
90 + )
91 +"
92 +RDEPEND="${DEPEND}
93 + opencl? (
94 + virtual/opencl
95 + )
96 +"
97 +DEPEND="${DEPEND}
98 + virtual/pkgconfig
99 + >=dev-libs/uthash-1.9.2
100 + sys-apps/sed
101 + cpumining? (
102 + amd64? (
103 + >=dev-lang/yasm-1.0.1
104 + )
105 + x86? (
106 + >=dev-lang/yasm-1.0.1
107 + )
108 + )
109 +"
110 +
111 +src_configure() {
112 + local CFLAGS="${CFLAGS}"
113 + local with_curses
114 + use hardened && CFLAGS="${CFLAGS} -nopie"
115 +
116 + if use ncurses; then
117 + if use unicode; then
118 + with_curses='--with-curses=ncursesw'
119 + else
120 + with_curses='--with-curses=ncurses'
121 + fi
122 + fi
123 +
124 + CFLAGS="${CFLAGS}" \
125 + econf \
126 + --docdir="/usr/share/doc/${PF}" \
127 + --with-system-libblkmaker \
128 + $with_curses \
129 + $(use_enable adl) \
130 + $(use_enable avalon) \
131 + $(use_enable bfsb) \
132 + $(use_enable bigpic) \
133 + $(use_enable bitfury) \
134 + $(use_enable bitforce) \
135 + $(use_enable cpumining) \
136 + $(use_enable icarus) \
137 + $(use_enable littlefury) \
138 + $(use_enable modminer) \
139 + $(use_enable metabank) \
140 + $(use_with ncurses curses) \
141 + $(use_enable opencl) \
142 + $(use_enable scrypt) \
143 + $(use_with udev libudev) \
144 + $(use_with lm_sensors sensors) \
145 + $(use_with proxy libmicrohttpd) \
146 + $(use_enable x6500) \
147 + $(use_enable ztex)
148 +}
149 +
150 +src_install() {
151 + emake install DESTDIR="$D"
152 + if ! use examples; then
153 + rm -r "${D}/usr/share/doc/${PF}/rpc-examples"
154 + fi
155 +}
156
157 diff --git a/net-misc/bfgminer/files/3.1.0-Bugfix-opencl-Add-missing-include-for-fpgautils.h-ne.patch b/net-misc/bfgminer/files/3.1.0-Bugfix-opencl-Add-missing-include-for-fpgautils.h-ne.patch
158 new file mode 100644
159 index 0000000..3c941f3
160 --- /dev/null
161 +++ b/net-misc/bfgminer/files/3.1.0-Bugfix-opencl-Add-missing-include-for-fpgautils.h-ne.patch
162 @@ -0,0 +1,25 @@
163 +From d65e37e05203a4e88b42680fd9504c54833f28a6 Mon Sep 17 00:00:00 2001
164 +From: Luke Dashjr <luke-jr+git@×××××××.org>
165 +Date: Fri, 14 Jun 2013 18:06:02 +0000
166 +Subject: [PATCH] Bugfix: opencl: Add missing include for fpgautils.h (needed
167 + for open_bitstream)
168 +
169 +---
170 + ocl.c | 1 +
171 + 1 file changed, 1 insertion(+)
172 +
173 +diff --git a/ocl.c b/ocl.c
174 +index 15bd86c..12a3d29 100644
175 +--- a/ocl.c
176 ++++ b/ocl.c
177 +@@ -34,6 +34,7 @@
178 + #define OMIT_OPENCL_API
179 +
180 + #include "findnonce.h"
181 ++#include "fpgautils.h"
182 + #include "ocl.h"
183 +
184 + /* Platform API */
185 +--
186 +1.8.1.5
187 +
188
189 diff --git a/net-misc/bfgminer/files/3.1.0-Bugfix-opencl-Build-fpgautils-even-if-OpenCL-is-the-.patch b/net-misc/bfgminer/files/3.1.0-Bugfix-opencl-Build-fpgautils-even-if-OpenCL-is-the-.patch
190 new file mode 100644
191 index 0000000..27eef4d
192 --- /dev/null
193 +++ b/net-misc/bfgminer/files/3.1.0-Bugfix-opencl-Build-fpgautils-even-if-OpenCL-is-the-.patch
194 @@ -0,0 +1,26 @@
195 +From fa2f27dbc7b1bffc77526a752824a7dc7cfa6a77 Mon Sep 17 00:00:00 2001
196 +From: Luke Dashjr <luke-jr+git@×××××××.org>
197 +Date: Sat, 15 Jun 2013 19:20:47 +0000
198 +Subject: [PATCH] Bugfix: opencl: Build fpgautils even if OpenCL is the only
199 + driver, now that it uses it for kernel-finding
200 +
201 +---
202 + configure.ac | 2 +-
203 + 1 file changed, 1 insertion(+), 1 deletion(-)
204 +
205 +diff --git a/configure.ac b/configure.ac
206 +index 97aa8c7..c69d01d 100644
207 +--- a/configure.ac
208 ++++ b/configure.ac
209 +@@ -525,7 +525,7 @@ AC_SUBST(libblkmaker_LIBS)
210 +
211 + AM_CONDITIONAL([NEED_LIBBLKMAKER], [test x$with_system_libblkmaker != xyes])
212 + AM_CONDITIONAL([NEED_DYNCLOCK], [test x$icarus$modminer$x6500$ztex != xnonono])
213 +-AM_CONDITIONAL([NEED_FPGAUTILS], [test x$avalon$icarus$bitforce$modminer$x6500$ztex != xnononononono])
214 ++AM_CONDITIONAL([NEED_FPGAUTILS], [test x$avalon$icarus$bitforce$modminer$opencl$x6500$ztex != xnonononononono])
215 + AM_CONDITIONAL([HAS_SCRYPT], [test x$scrypt = xyes])
216 + AM_CONDITIONAL([HAVE_CURSES], [test x$curses = xyes])
217 + AM_CONDITIONAL([HAVE_SENSORS], [test x$with_sensors = xyes])
218 +--
219 +1.8.1.5
220 +
221
222 diff --git a/net-misc/bfgminer/files/Bugfix-Fix-building-without-OpenCL-support.patch b/net-misc/bfgminer/files/Bugfix-Fix-building-without-OpenCL-support.patch
223 new file mode 100644
224 index 0000000..8d09aa3
225 --- /dev/null
226 +++ b/net-misc/bfgminer/files/Bugfix-Fix-building-without-OpenCL-support.patch
227 @@ -0,0 +1,32 @@
228 +From f7125dc965963bd9860dc92616e2499a02297587 Mon Sep 17 00:00:00 2001
229 +From: Luke Dashjr <luke-jr+git@×××××××.org>
230 +Date: Thu, 26 Apr 2012 21:25:32 -0400
231 +Subject: [PATCH] Bugfix: Fix building without OpenCL support
232 +
233 +---
234 + driver-opencl.c | 2 ++
235 + 1 files changed, 2 insertions(+), 0 deletions(-)
236 +
237 +diff --git a/driver-opencl.c b/driver-opencl.c
238 +index 82b8cf3..2e1d4cd 100644
239 +--- a/driver-opencl.c
240 ++++ b/driver-opencl.c
241 +@@ -44,6 +44,7 @@
242 + /* TODO: cleanup externals ********************/
243 +
244 +
245 ++#ifdef HAVE_OPENCL
246 + /* Platform API */
247 + CL_API_ENTRY cl_int CL_API_CALL
248 + (*clGetPlatformIDs)(cl_uint /* num_entries */,
249 +@@ -248,6 +249,7 @@ load_opencl_symbols() {
250 +
251 + return true;
252 + }
253 ++#endif
254 +
255 +
256 + #ifdef HAVE_CURSES
257 +--
258 +1.7.3.4
259 +
260
261 diff --git a/net-misc/bfgminer/metadata.xml b/net-misc/bfgminer/metadata.xml
262 new file mode 100644
263 index 0000000..97d3ca9
264 --- /dev/null
265 +++ b/net-misc/bfgminer/metadata.xml
266 @@ -0,0 +1,38 @@
267 +<?xml version="1.0" encoding="UTF-8"?>
268 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
269 +<pkgmetadata>
270 + <herd>proxy-maintainers</herd>
271 + <maintainer>
272 + <email>blueness@g.o</email>
273 + <name>Anthony G. Basile</name>
274 + </maintainer>
275 + <maintainer>
276 + <email>alexxy@g.o</email>
277 + <name>Alexey Shvetsov</name>
278 + </maintainer>
279 + <maintainer>
280 + <email>luke-jr+gentoobugs@×××××××.org</email>
281 + <name>Luke Dashjr</name>
282 + </maintainer>
283 + <use>
284 + <flag name='adl'>Enable support for controlling fans and overclocking on AMD cards with AMD Display Library</flag>
285 + <flag name='avalon'>Enable support for mining with Avalon ASIC modules</flag>
286 + <flag name='bigpic'>Enable support for mining with BigPic usb ASIC</flag>
287 + <flag name='bitforce'>Enable support for mining with ButterFly Labs BitFORCE ASICs and/or FPGAs</flag>
288 + <flag name='bitfury'>Enable support for generic bitfury chip ASICs</flag>
289 + <flag name='bfsb'>Enable support for mining with BitfuryStrikeBack ASICs</flag>
290 + <flag name='cpumining'>Enable support for mining with CPUs</flag>
291 + <flag name='icarus'>Enable support for mining with Icarus-compatible devices (including Block Erupter Sapphire ASICs)</flag>
292 + <flag name='littlefury'>Enable support for mining with LittleFury usb ASIC</flag>
293 + <flag name='modminer'>Enable support for mining with ModMiner FPGAs</flag>
294 + <flag name='metabank'>Enable support for mining with MetaBank ASIC</flag>
295 + <flag name='opencl'>Enable support for mining with OpenCL-capable devices (GPUs)</flag>
296 + <flag name='padlock'>Enable support for mining with VIA Padlock CPUs</flag>
297 + <flag name='proxy'>Enable support for getwork proxy device (often used with Block Erupter Blades)</flag>
298 + <flag name='scrypt'>Enable support for scrypt mining algorithm</flag>
299 + <flag name='sse2_4way'>Enable support for CPU SSE2 4way mining algorithm</flag>
300 + <flag name='sse4'>Enable support for CPU SSE4 mining algorithm</flag>
301 + <flag name='x6500'>Enable support for mining with X6500 FPGAs</flag>
302 + <flag name='ztex'>Enable support for mining with Ztex FPGAs</flag>
303 + </use>
304 +</pkgmetadata>