# $Id$ CC = @CC@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ ZLIB_CFLAGS = @ZLIB_CFLAGS@ ZLIB_LIBS = @ZLIB_LIBS@ ERLANG_CFLAGS = @ERLANG_CFLAGS@ ERLANG_LIBS = @ERLANG_LIBS@ # Assume Linux-style dynamic library flags DYNAMIC_LIB_CFLAGS = -fpic -shared ifeq ($(shell uname),Darwin) DYNAMIC_LIB_CFLAGS = -fPIC -bundle -flat_namespace -undefined suppress endif ifeq ($(shell uname),SunOs) DYNAMIC_LIB_CFLAGS = -KPIC -G -z text endif EFLAGS += -I .. EFLAGS += -pz .. # make debug=true to compile Erlang module with debug informations. ifdef debug EFLAGS+=+debug_info endif ERLSHLIBS = ../ejabberd_zlib_drv.so OUTDIR = .. SOURCES = $(wildcard *.erl) BEAMS = $(addprefix $(OUTDIR)/,$(SOURCES:.erl=.beam)) all: $(BEAMS) $(ERLSHLIBS) $(OUTDIR)/%.beam: %.erl @ERLC@ -W $(EFLAGS) -o $(OUTDIR) $< #all: $(ERLSHLIBS) # erl -s make all report "{outdir, \"..\"}" -noinput -s erlang halt $(ERLSHLIBS): ../%.so: %.c $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) \ $(subst ../,,$(subst .so,.c,$@)) \ $(LIBS) \ $(ZLIB_LIBS) \ $(ZLIB_CFLAGS) \ $(ERLANG_LIBS) \ $(ERLANG_CFLAGS) \ -o $@ \ $(DYNAMIC_LIB_CFLAGS) clean: rm -f $(BEAMS) $(ERLSHLIBS) distclean: clean rm -f Makefile TAGS: etags *.erl