summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorJoshua Haberman <joshua@reverberate.org>2011-02-27 13:55:47 -0800
committerJoshua Haberman <joshua@reverberate.org>2011-02-27 13:55:47 -0800
commit26264c25a5d22865ab459ef26f86f7d8dfe88f1e (patch)
tree3125eebd9ff1bc75f75f9940e9dfbbb2929c9247 /Makefile
parent6f6a2937bfcb69a1ba74e8b5736c34ca915c4863 (diff)
Don't require NASM to build unless using the x64 decoder.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile14
1 files changed, 11 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index 008cc85..68c56b6 100644
--- a/Makefile
+++ b/Makefile
@@ -24,12 +24,14 @@
# Default rule: just build libupb.
all: lib
+# User-specified CFLAGS.
+USER_CFLAGS=$(strip $(shell test -f perf-cppflags && cat perf-cppflags))
+
# Basic compiler/flag setup.
CC=gcc
CXX=g++
CFLAGS=-std=c99
INCLUDE=-Isrc -Itests -I.
-USER_CFLAGS=$(strip $(shell test -f perf-cppflags && cat perf-cppflags))
CPPFLAGS=$(INCLUDE) -Wall -Wextra -Wno-missing-field-initializers $(USER_CFLAGS)
LDLIBS=-lpthread src/libupb.a
@@ -117,8 +119,14 @@ LIBUPB=src/libupb.a
LIBUPB_PIC=src/libupb_pic.a
lib: $(LIBUPB)
-OBJ=$(patsubst %.c,%.o,$(SRC)) src/upb_decoder_x64.o
-PICOBJ=$(patsubst %.c,%.lo,$(SRC)) src/upb_decoder_x64.lo
+
+OBJ=$(patsubst %.c,%.o,$(SRC))
+PICOBJ=$(patsubst %.c,%.lo,$(SRC))
+
+ifneq (, $(findstring DUSE_X64_FASTPATH, $(USER_CFLAGS)))
+ OBJ += src/upb_decoder_x64.o
+ PICOBJ += src/upb_decoder_x64.o
+endif
$(LIBUPB): $(OBJ)
$(E) AR $(LIBUPB)
$(Q) ar rcs $(LIBUPB) $(OBJ)
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback