HOOK_ENGINE=old
endif
-# if USE_VALGRIND == 1
-ifeq (${USE_VALGRIND},1)
- CFLAGS+=-DUSE_VALGRIND
- SSTRING_ENGINE=valgrind
-
-## if SSTRING_NEW == 1
-ifeq (${SSTRING_NEW},1)
- IMPOSSIBLE="USE_VALGRIND and SSTRING_NEW"
-endif # SSTRING_NEW == 1
-
-## if SSTRING_MMAP == 1
-ifeq (${SSTRING_MMAP},1)
- IMPOSSIBLE="USE_VALGRIND and SSTRING_MMAP"
-endif ## SSTRING_MMAP == 1
-else # USE_VALGRIND == 1
-
-## if SSTRING_NEW == 1
-ifeq (${SSTRING_NEW},1)
- SSTRING_ENGINE=new
-else ## SSTRING_NEW == 1
- SSTRING_ENGINE=old
-
-### if SSTRING_MMAP == 1
-ifeq (${SSTRING_MMAP},1)
- IMPOSSIBLE="SSTRING_MMAP without SSTRING_NEW"
-endif ### SSTRING_MMAP == 1
-endif ## SSTRING_NEW == 1
-endif # USE_VALGRIND == 1
-
-ifdef IMPOSSIBLE
-$(error impossible combination of settings: ${IMPOSSIBLE})
-endif
-
ifndef BUILDID
BUILDID = $(shell (hg id || echo "unknown") | sed -e "s/[()]//g;s/+ /+/g;s/ /-/g" )
endif
MFLAGS+=BUILDID=$(BUILDID)
+default: all
+
.SUFFIXES: .so .y .l
+-include $(wildcard .deps/*.d)
+
+.c.o:
+ @if [ ! -d .deps ]; then mkdir .deps || true; fi
+ $(CC) $(CFLAGS) -MMD -MF .deps/$(subst .o,.d,$@) -fPIC -c -o $@ $<
+
.o.so:
- $(CC) -nostartfiles -shared -o $@ $^ $(LDFLAGS)
+ $(CC) -nostartfiles -Wl,--export-dynamic -shared -o $@ $^ $(LDFLAGS)
.y.c: ;
.l.c: ;
-default: all
-
-CFLAGS+=-I./ -DBUILDID=$(BUILDID) -fPIC
+CFLAGS+=-I. -I.. -DBUILDID=$(BUILDID)
CFLAGS+=-Wall -g -finline-functions -funroll-loops -Werror=format-security
+EXECFLAGS=
-ifndef CLANG
ifndef NOC99
CFLAGS+=-std=c99
endif
-CFLAGS+=-export-dynamic
-endif