mirror of
https://github.com/obgm/libcoap.git
synced 2026-11-08 10:32:53 +03:00
58 lines
1.3 KiB
Makefile
58 lines
1.3 KiB
Makefile
VERSION:=0.05
|
|
|
|
SOURCES:= pdu.c net.c debug.c encode.c uri.c list.c subscribe.c str.c
|
|
OBJECTS:= $(patsubst %.c, %.o, $(SOURCES))
|
|
HEADERS:=coap.h debug.h pdu.h net.h encode.h uri.h list.h mem.h subscribe.h str.h $(prg_headers)
|
|
CFLAGS:=-g -Wall -ansi -pedantic
|
|
DISTDIR=coap-$(VERSION)
|
|
SUBDIRS:=examples
|
|
FILES:=Makefile $(SOURCES) $(HEADERS)
|
|
LIB:=libcoap.a
|
|
LDFLAGS:=-L. -l$(patsubst lib%.a,%,$(LIB))
|
|
ARFLAGS:=cru
|
|
examples:=examples
|
|
doc:=doc
|
|
|
|
# add this for Solaris
|
|
#LDFLAGS+=-lsocket -lnsl
|
|
|
|
.PHONY: all dirs clean distclean .gitignore doc
|
|
|
|
all: $(LIB) dirs
|
|
|
|
dirs: $(SUBDIRS)
|
|
for dir in $^; do \
|
|
$(MAKE) -C $$dir ; \
|
|
done
|
|
|
|
$(LIB): $(OBJECTS)
|
|
$(AR) $(ARFLAGS) $@ $^
|
|
ranlib $@
|
|
|
|
# build main.o separately as c99 has no getaddrinfo, so CC will complain
|
|
main.o: main.c
|
|
$(CC) -DVERSION=\"$(VERSION)\" -g -Wall -c -o main.o main.c
|
|
|
|
clean:
|
|
@rm -f $(PROGRAM) main.o $(LIB) $(OBJECTS)
|
|
for dir in $(SUBDIRS); do \
|
|
$(MAKE) -C $$dir clean ; \
|
|
done
|
|
|
|
doc:
|
|
$(MAKE) -C doc
|
|
|
|
distclean: clean
|
|
@rm -rf $(DISTDIR)
|
|
@rm -f *~ $(DISTDIR).tar.gz
|
|
|
|
dist:
|
|
test -d $(DISTDIR) || mkdir $(DISTDIR)
|
|
test -d $(DISTDIR)/$(examples) || mkdir $(DISTDIR)/$(examples)
|
|
cp $(FILES) $(DISTDIR)
|
|
$(MAKE) -C $(examples) dist DISTDIR=../$(DISTDIR)/$(examples)
|
|
tar czf $(DISTDIR).tar.gz $(DISTDIR)
|
|
|
|
.gitignore:
|
|
echo "core\n*~\n*.[oa]\n*.gz\n*.cap\n$(PROGRAM)\n$(DISTDIR)\n.gitignore" >$@
|