-
Notifications
You must be signed in to change notification settings - Fork 104
/
Copy pathMakefile.Win32
62 lines (44 loc) · 2.73 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
#### Build command: nmake -f Makefile.Win32
CC = cl
#### OpenCL
#### From: https://github.com/KhronosGroup/OpenCL-SDK/releases/download/v2023.12.14/OpenCL-SDK-v2023.12.14-Win-x64.zip
OPENCL_INCLUDE = .\third_party\windows\OpenCL-SDK-v2023.12.14-Win-x64\include
OPENCL_LIBS =.\third_party\windows\OpenCL-SDK-v2023.12.14-Win-x64\lib\OpenCL.lib
#### OpenSSL
#### From: https://kb.firedaemon.com/support/solutions/articles/4000121705
OPENSSL_INCLUDE = .\third_party\windows\openssl-3.0\x64\include
OPENSSL_LIBS = .\third_party\windows\openssl-3.0\x64\lib\libcrypto.lib
#### Pthread
#### From: https://sourceforge.net/projects/pthreads4w/files/
PTHREADS_INCLUDE = .\third_party\windows\pthread\Pre-built.2\include
PTHREADS_LIBS = .\third_party\windows\pthread\Pre-built.2\lib\x64\pthreadVC2.lib
#### PCRE
#### From: https://freeswitch.org/bamboo/browse/SP-PW-1/artifact/shared/pcre-windows-binaries-zip/
PCRE_INCLUDE = .\third_party\windows\pcre-8.34\include
PCRE_LIBS = .\third_party\windows\pcre-8.34\binaries\x64\Release\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 simplevanitygen.obj bech32.obj segwit_addr.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)