summaryrefslogtreecommitdiff
path: root/libre/cgminer-libre/PKGBUILD
blob: 09608d1faa892cff4c305cf9f506dbbcdf1d2fdf (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
# $Id: PKGBUILD 100525 2013-11-05 13:41:39Z fyan $
# Maintainer: Felix Yan <felixonmars@gmail.com>
# Contributor: monson <holymonson@gmail.com>
# Contributor: Thomas Dziedzic < gostrc at gmail >
# Contributor: David Manouchehri <david@davidmanouchehri.com>
# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com>

_pkgname=cgminer
pkgname=cgminer-libre
pkgver=3.7.2
#_pkgver=3.6.6
_pkgver=$pkgver
pkgrel=1
pkgdesc="Multi-threaded multi-pool GPU, FPGA and ASIC miner for bitcoin and derivative coins, without nonfree OpenCL recommendation"
url='http://forum.bitcoin.org/index.php?topic=28402.0'
license=('GPL3')
arch=('i686' 'x86_64' 'mips64el')
depends=('curl' 'mesa-libcl' 'libusbx' 'jansson')
makedepends=('opencl-headers' 'git')
replaces=$_pkgname
conflicts=$_pkgname
provides=$_pkgname=$pkgver
source=("git+https://github.com/ckolivas/${_pkgname}.git#tag=v$_pkgver"
        "$_pkgname.conf.d"
        "$_pkgname.service")
backup=("etc/conf.d/$_pkgname" "etc/$_pkgname.conf")

[ "$CARCH" == "x86_64" ] && makedepends+=('yasm')

prepare() {
  cd $_pkgname
  # We have latest jansson and libusb - just use them

  sed -e 's|^AC_CONFIG_SUBDIRS.*compat/jansson-2\.5.*||' \
      -e 's|JANSSON_LIBS="compat/jansson-2\.5/src/\.libs/libjansson\.a"|JANSSON_LIBS=-ljansson|' \
      -e 's|compat/Makefile||' \
      -i ./configure.ac

  sed -e 's|^JANSSON_INCLUDES= .*||' \
      -e 's|^USBUTILS_INCLUDES = .*|USBUTILS_INCLUDES = -I/usr/include/libusb-1.0|' \
      -e 's|^SUBDIRS.*|SUBDIRS = lib ccan|' \
      -i ./Makefile.am

  #sed "s|ac_subdirs_all='compat/libusb\-1.0\ncompat/jansson-2.5'||" -i ./configure
  #sed 's|subdirs="$subdirs compat/libusb\-1.0"||' -i ./configure
  #sed 's|subdirs="$subdirs compat/jansson\-2.5"||' -i ./configure
  #sed 's|LIBUSB_LIBS="compat/libusb-1.0/libusb/.libs/libusb-1.0.a"|LIBUSB_LIBS=-lusb-1.0|' -i ./configure
  #sed 's|JANSSON_LIBS="compat/jansson-2.5/src/.libs/libjansson.a"|JANSSON_LIBS=-ljansson|' -i ./configure
  #sed 's|compat/Makefile ||' -i ./configure

  #sed 's|JANSSON_INCLUDES = .*||' -i ./Makefile.in
  #sed 's|USBUTILS_INCLUDES = .*|USBUTILS_INCLUDES = -I/usr/include/libusb-1.0|' -i ./Makefile.in
  #sed 's|SUBDIRS = lib compat ccan|SUBDIRS = lib ccan|' -i ./Makefile.in

  rm -r compat
}

build() {
  cd $_pkgname
  
  # Here you may want to use custom CFLAGS
  #export CFLAGS="-O2 -march=native -mtune=native -msse2"
  
  # ./configure \

  ./autogen.sh \
    --prefix=/usr \
    --enable-scrypt \
    --enable-opencl \
    --enable-bflsc \
    --enable-bitforce \
    --enable-icarus \
    --enable-modminer \
    --enable-avalon \
    --enable-klondike \
    --enable-bitfury \
    --enable-hashfast \
    --enable-knc \
    --with-system-libusb \
    --disable-adl # For license issues
  
  make
}

package() {
  cd $_pkgname

  make DESTDIR="$pkgdir" install

  install -d "$pkgdir/usr/share/$_pkgname"
  install -m755 miner.php api-example.* "$pkgdir/usr/share/$_pkgname"

  install -Dm644 "$srcdir"/$_pkgname.service "$pkgdir"/usr/lib/systemd/system/$_pkgname.service
  install -Dm644 "$srcdir"/$_pkgname.conf.d "$pkgdir"/etc/conf.d/$_pkgname
  sed 's#/usr/local/bin#/usr/bin#g' example.conf > $_pkgname.conf
  install -Dm644 $_pkgname.conf "$pkgdir"/etc/$_pkgname.conf
}

sha512sums=('SKIP'
            '99c38bc395848f9712ce172343d31f5c60f5d8ac1cfe2f48df8f3ec6c488fc275763a79c5ef36b99f32faa465b5a65284b38e8a63ef9b144075ee13971313b41'
            '3317b60c6b1f14c47d8ee636113ef40a4023ab14054129de80a37947b381fd2b647a7053f4e1bb639efa225a514e862fa531908714c34040dda2d6221dde7f5f')