1# Makefile 2# This file holds the make rules for the libyasn 3 4DEBUG := 5 6CXX := @CXX@ -Wall 7AR := ar 8DEFS := 9INCLUDES := -I@top_srcdir@ -I../.. -I@srcdir@ 10CFLAGS := @CFLAGS@ @MODULE_CPPFLAGS@ @INLINE_FLAGS@ 11LDFLAGS:= @LDFLAGS@ -L../.. -lyate 12SONAME_OPT := @SONAME_OPT@ 13YATELIBS := -L../.. -lyate @LIBS@ 14INCFILES := @top_srcdir@/yateclass.h @srcdir@/yateasn.h 15 16PROGS= 17LIBS = libyasn.a 18OBJS = asn.o 19LIBD_DEV:= libyateasn.so 20LIBD_VER:= $(LIBD_DEV).@PACKAGE_VERSION@ 21LIBD:= ../../$(LIBD_VER) ../../$(LIBD_DEV) 22 23LOCALFLAGS = 24LOCALLIBS = 25COMPILE = $(CXX) $(DEFS) $(DEBUG) $(INCLUDES) $(CFLAGS) 26LINK = $(CXX) $(LDFLAGS) 27 28prefix = @prefix@ 29exec_prefix = @exec_prefix@ 30 31# include optional local make rules 32-include YateLocal.mak 33 34.PHONY: all debug ddebug xdebug 35all: $(LIBS) $(LIBD) $(PROGS) 36 37debug: 38 $(MAKE) all DEBUG=-g3 MODSTRIP= 39 40ddebug: 41 $(MAKE) all DEBUG='-g3 -DDEBUG' MODSTRIP= 42 43xdebug: 44 $(MAKE) all DEBUG='-g3 -DXDEBUG' MODSTRIP= 45 46.PHONY: strip 47strip: all 48 strip --strip-debug --discard-locals $(PROGS) 49 50.PHONY: clean 51clean: 52 @-$(RM) $(PROGS) $(LIBS) $(LIBD) $(OBJS) core 2>/dev/null 53 54%.o: @srcdir@/%.cpp $(INCFILES) 55 $(COMPILE) -c $< 56 57Makefile: @srcdir@/Makefile.in ../../config.status 58 cd ../.. && ./config.status 59 60../../$(LIBD_VER): $(OBJS) 61 $(LINK) -o $@ $(SONAME_OPT)$(LIBD_VER) $^ $(YATELIBS) 62 63../../$(LIBD_DEV): ../../$(LIBD_VER) 64 cd ../.. && ln -sf $(LIBD_VER) $(LIBD_DEV) 65 66$(LIBS): $(OBJS) 67 $(AR) rcs $@ $^ 68