forked from 10gic/vanitygen-plusplus
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Makefile.Win32
62 lines (45 loc) · 2.6 KB
/
Makefile.Win32
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
CC = cl
#### CUDA
#### From: https://developer.nvidia.com/cuda-10.0-download-archive
OPENCL_DIR = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0"
OPENCL_INCLUDE = $(OPENCL_DIR)\include
OPENCL_LIBS = $(OPENCL_DIR)\lib\Win32\OpenCL.lib
#### OpenSSL
#### From: https://kb.firedaemon.com/support/solutions/articles/4000121705
OPENSSL_INCLUDE = .\third_party\windows\openssl-1.1\x86\include
OPENSSL_LIBS = .\third_party\windows\openssl-1.1\x86\lib\libcrypto.lib
#### Pthread
#### From: http://sourceware.org/pthreads-win32/
#### ftp://sourceware.org/pub/pthreads-win32/pthreads-w32-2-9-1-release.zip
PTHREADS_INCLUDE = .\third_party\windows\pthread\Pre-built.2\include
PTHREADS_LIBS = .\third_party\windows\pthread\Pre-built.2\lib\x86\pthreadVC2.lib
#### PCRE
#### From: http://gnuwin32.sourceforge.net/packages/pcre.htm
PCRE_INCLUDE = .\third_party\windows\pcre-7.0-lib\include
PCRE_LIBS = .\third_party\windows\pcre-7.0-lib\lib\pcre.lib
#CURL_DIR = C:\curl-7.26.0-x86\builds\libcurl-release-static-ssl-static-ipv6-sspi
#CURL_INCLUDE = /I$(CURL_DIR)\include /DCURL_STATICLIB
#CURL_LIBS = $(CURL_DIR)\lib\libcurl_a.lib
CFLAGS_BASE = /D_WIN32 /DPTW32_STATIC_LIB /DHAVE_STRUCT_TIMESPEC /I$(PTHREADS_INCLUDE) /I$(PCRE_INCLUDE) /I$(OPENSSL_INCLUDE) /I$(OPENCL_INCLUDE) /Ox /Zi
CFLAGS = $(CFLAGS_BASE) /GL
LIBS = $(OPENSSL_LIBS) $(PTHREADS_LIBS) $(PCRE_LIBS) ws2_32.lib user32.lib advapi32.lib gdi32.lib /LTCG /DEBUG
OBJS = vanitygen.obj oclvanitygen.obj oclengine.obj oclvanityminer.obj keyconv.obj pattern.obj util.obj winglue.obj groestl.obj sha3.obj ed25519.obj stellar.o base32.o crc16.o
all: vanitygen++.exe oclvanitygen++.exe
vanitygen++.exe: vanitygen.obj pattern.obj util.obj winglue.obj groestl.obj sha3.obj ed25519.obj stellar.obj base32.obj crc16.obj
link /nologo /out:$@ $** $(LIBS)
oclvanitygen++.exe: oclvanitygen.obj oclengine.obj pattern.obj util.obj winglue.obj groestl.obj sha3.obj
link /nologo /out:$@ $** $(LIBS) $(OPENCL_LIBS)
oclvanityminer.exe: oclvanityminer.obj oclengine.obj pattern.obj util.obj winglue.obj groestl.obj sha3.obj
link /nologo /out:$@ $** $(LIBS) $(OPENCL_LIBS) $(CURL_LIBS)
keyconv.exe: keyconv.obj util.obj winglue.obj groestl.obj sha3.obj
link /nologo /out:$@ $** $(LIBS)
.c.obj:
@$(CC) /nologo $(CFLAGS) /c /Tp$< /Fo$@
oclengine.obj: oclengine.c
@$(CC) /nologo $(CFLAGS_BASE) /c /Tpoclengine.c /Fo$@
oclvanitygen.obj: oclvanitygen.c
@$(CC) /nologo $(CFLAGS_BASE) /c /Tpoclvanitygen.c /Fo$@
oclvanityminer.obj: oclvanityminer.c
@$(CC) /nologo $(CFLAGS_BASE) $(CURL_INCLUDE) /c /Tpoclvanityminer.c /Fo
clean:
del vanitygen++.exe oclvanitygen++.exe oclvanityminer.exe keyconv.exe $(OBJS)