-
Notifications
You must be signed in to change notification settings - Fork 59
/
makefile.vc
55 lines (41 loc) · 1.56 KB
/
makefile.vc
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
!IFNDEF DEBUG
DEBUG=no
!ENDIF
!IFNDEF CC
CC=cl.exe
!ENDIF
!IFNDEF AR
AR=lib.exe
!ENDIF
!IFNDEF LINK
LINK=link.exe
!ENDIF
INC = /Iinclude
!IF "$(DEBUG)"=="yes"
CFLAGS = /nologo /MDd /LDd /Od /Zi /D_DEBUG /D__SSSE3__ /RTC1 /W3 /wd"4141" /GS /Gm /arch:AVX /EHsc
ARFLAGS = /nologo
LDFLAGS = /nologo /debug /nodefaultlib:msvcrt
!ELSE
CFLAGS = /nologo /MD /O2 /Zi /DNDEBUG /D__SSSE3__ /W3 /wd"4141" /Gm- /GS /Gy /Oi /GL /MP /arch:AVX /EHsc
ARFLAGS = /nologo /LTCG
LDFLAGS = /nologo /LTCG /DYNAMICBASE /incremental:no /debug /opt:ref,icf
!ENDIF
LIB_OBJS = codecfactory.obj bitpacking.obj integratedbitpacking.obj simdbitpacking.obj usimdbitpacking.obj simdintegratedbitpacking.obj intersection.obj varintdecode.obj streamvbyte.obj simdpackedsearch.obj simdpackedselect.obj frameofreference.obj for.obj
all: lib unit example
$(LIB_OBJS):
$(CC) $(INC) $(CFLAGS) /c src/codecfactory.cpp src/bitpacking.cpp src/integratedbitpacking.cpp src/simdbitpacking.cpp src/usimdbitpacking.cpp src/simdintegratedbitpacking.cpp src/intersection.cpp src/varintdecode.c src/streamvbyte.c src/simdpackedsearch.c src/simdpackedselect.c src/frameofreference.cpp src/for.c
lib: $(LIB_OBJS)
$(AR) $(ARFLAGS) /OUT:simdcomp_a.lib $(LIB_OBJS)
unit: lib
$(CC) $(INC) $(CFLAGS) /c src/unit.cpp
$(LINK) $(LDFLAGS) /OUT:unit.exe unit.obj simdcomp_a.lib
example: lib
$(CC) $(INC) $(CFLAGS) /c example.cpp
$(LINK) $(LDFLAGS) /OUT:example.exe example.obj simdcomp_a.lib
clean:
del /Q *.obj
del /Q *.lib
del /Q *.exe
del /Q *.dll
del /Q *.idb
del /Q *.pdb