This commit is contained in:
powturbo
2015-05-31 21:44:18 +02:00
parent 6c14d61954
commit 1ecdf15cc8

View File

@ -1,5 +1,7 @@
# powturbo (c) Copyright 2013-2015 # powturbo (c) Copyright 2013-2015
# Linux: "export CC=clang" windows mingw: "set CC=gcc" or uncomment one of following lines
# CC=clang
# CC=gcc
CFLAGS=-DNDEBUG -fstrict-aliasing -m64 -march=native CFLAGS=-DNDEBUG -fstrict-aliasing -m64 -march=native
UNAME := $(shell uname) UNAME := $(shell uname)
@ -12,37 +14,38 @@ BIT=./
all: icbench idxcr idxqry idxseg all: icbench idxcr idxqry idxseg
bitpack.o: $(BIT)bitpack.c $(BIT)bitpack.h $(BIT)bitpack64_.h bitpack.o: $(BIT)bitpack.c $(BIT)bitpack.h $(BIT)bitpack64_.h
gcc -O2 $(CFLAGS) -c $(BIT)bitpack.c $(CC) -O2 $(CFLAGS) -c $(BIT)bitpack.c
bitpackv.o: $(BIT)bitpackv.c $(BIT)bitpack.h $(BIT)bitpackv32_.h bitpackv.o: $(BIT)bitpackv.c $(BIT)bitpack.h $(BIT)bitpackv32_.h
gcc -O2 $(CFLAGS) -c $(BIT)bitpackv.c $(CC) -O2 $(CFLAGS) -c $(BIT)bitpackv.c
vp4dc.o: $(BIT)vp4dc.c vp4dc.o: $(BIT)vp4dc.c
gcc -O3 $(CFLAGS) -funroll-loops -c $(BIT)vp4dc.c $(CC) -O3 $(CFLAGS) -funroll-loops -c $(BIT)vp4dc.c
vp4dd.o: $(BIT)vp4dd.c vp4dd.o: $(BIT)vp4dd.c
gcc -O3 $(CFLAGS) -funroll-loops -c $(BIT)vp4dd.c $(CC) -O3 $(CFLAGS) -funroll-loops -c $(BIT)vp4dd.c
varintg8iu.o: $(BIT)ext/varintg8iu.c $(BIT)ext/varintg8iu.h varintg8iu.o: $(BIT)ext/varintg8iu.c $(BIT)ext/varintg8iu.h
gcc -O2 $(CFLAGS) -c -funroll-loops -std=c99 $(BIT)ext/varintg8iu.c $(CC) -O2 $(CFLAGS) -c -funroll-loops -std=c99 $(BIT)ext/varintg8iu.c
idxqryp.o: $(BIT)idxqry.c idxqryp.o: $(BIT)idxqry.c
gcc -O3 $(CFLAGS) -c $(BIT)idxqry.c -o idxqryp.o $(CC) -O3 $(CFLAGS) -c $(BIT)idxqry.c -o idxqryp.o
SIMDCOMPD=ext/simdcomp/ SIMDCOMPD=ext/simdcomp/
SIMDCOMP=$(SIMDCOMPD)bitpacka.o $(SIMDCOMPD)src/simdintegratedbitpacking.o $(SIMDCOMPD)src/simdcomputil.o $(SIMDCOMPD)src/simdbitpacking.o SIMDCOMP=$(SIMDCOMPD)bitpacka.o $(SIMDCOMPD)src/simdintegratedbitpacking.o $(SIMDCOMPD)src/simdcomputil.o $(SIMDCOMPD)src/simdbitpacking.o
#LZT=../lz/lz8c0.o ../lz/lz8d.o LZT=../lz/lz8c0.o ../lz/lz8d.o
LZTB=../lz/lzbc0.o ../lz/lzbd.o
LZ4=ext/lz4.o LZ4=ext/lz4.o
MVB=ext/MaskedVByte/src/varintencode.o ext/MaskedVByte/src/varintdecode.o MVB=ext/MaskedVByte/src/varintencode.o ext/MaskedVByte/src/varintdecode.o
OBJS=icbench.o bitutil.o vint.o bitpack.o bitunpack.o eliasfano.o vsimple.o vp4dd.o vp4dc.o varintg8iu.o bitpackv.o bitunpackv.o transpose.o ext/simple8b.o $(SIMDCOMP) $(MVB) $(LZT) $(LZ4) OBJS=icbench.o bitutil.o vint.o bitpack.o bitunpack.o eliasfano.o vsimple.o vp4dd.o vp4dc.o varintg8iu.o bitpackv.o bitunpackv.o transpose.o ext/simple8b.o $(SIMDCOMP) $(MVB) $(LZT) $(LZTB) $(LZ4)
icbench: $(OBJS) icbench: $(OBJS)
gcc $(OBJS) -lm -o icbench $(LFLAGS) $(CC) $(OBJS) -lm -o icbench $(LFLAGS)
idxseg: idxseg.o idxseg: idxseg.o
gcc idxseg.o -o idxseg $(CC) idxseg.o -o idxseg
ifeq ($(UNAME), Linux) ifeq ($(UNAME), Linux)
para: CFLAGS += -DTHREADMAX=32 para: CFLAGS += -DTHREADMAX=32
@ -50,19 +53,19 @@ para: idxqry
endif endif
idxcr: idxcr.o bitpack.o vp4dc.o bitutil.o idxcr: idxcr.o bitpack.o vp4dc.o bitutil.o
gcc idxcr.o bitpack.o bitpackv.o vp4dc.o bitutil.o -o idxcr $(LFLAGS) $(CC) idxcr.o bitpack.o bitpackv.o vp4dc.o bitutil.o -o idxcr $(LFLAGS)
idxqry: idxqry.o bitunpack.o vp4dd.o bitunpackv.o bitutil.o idxqry: idxqry.o bitunpack.o vp4dd.o bitunpackv.o bitutil.o
gcc idxqry.o bitunpack.o bitunpackv.o vp4dd.o bitutil.o $(LIBTHREAD) $(LIBRT) -o idxqry $(LFLAGS) $(CC) idxqry.o bitunpack.o bitunpackv.o vp4dd.o bitutil.o $(LIBTHREAD) $(LIBRT) -o idxqry $(LFLAGS)
.c.o: .c.o:
gcc -O3 $(CFLAGS) $< -c -o $@ $(CC) -O3 $(CFLAGS) $< -c -o $@
.cc.o: .cc.o:
g++ -O3 -DNDEBUG -std=c++11 $< -c -o $@ $(CXX) -O3 -DNDEBUG -std=c++11 $< -c -o $@
.cpp.o: .cpp.o:
g++ -O3 -DNDEBUG -std=c++11 $< -c -o $@ $(CXX) -O3 -DNDEBUG -std=c++11 $< -c -o $@
clean: clean:
@find . -type f -name "*\.o" -delete -or -name "*\~" -delete -or -name "core" -delete @find . -type f -name "*\.o" -delete -or -name "*\~" -delete -or -name "core" -delete