]> git.itanic.dy.fi Git - rrdd/blobdiff - Makefile
Replace strncat with _strlcat
[rrdd] / Makefile
index 677e88e18b8f862d29d955f094bc2576b16bb521..fe34614c59a8ae3b1880d49ab1f2a5a726289c65 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,11 +1,15 @@
 CC=gcc
 LD=ld
-CFLAGS=-Wall -O2 -g -fPIC
+CFLAGS=-Wall -O2 -g -fPIC -D_GNU_SOURCE
 
 RRDD_OBJS= main.o process.o rrdtool.o parser.o built_in_parsers.o string.o \
-               debug.o config.o onewire_parser.o plugin_manager.o
+               debug.o config.o plugin_manager.o network_parser.o
 
-ALL_OBJS = $(RRDD_OBJS)
+ONEWIRE_PARSER_OBJS = onewire_parser.o
+
+ALL_PARSERS = onewire_parser.so
+
+ALL_OBJS = $(RRDD_OBJS) $(ONEWIRE_PARSER_OBJS)
 ALL_DEBS = $(patsubst %.o,.%.o.d,$(ALL_OBJS))
 
 ifeq ($(V),1)
@@ -18,21 +22,33 @@ else
        QUIET_LINK      = @echo "     LINK " $@;
 endif
 
-all: rrdd
+default: rrdd
+
+all: rrdd $(ALL_PARSERS)
 
 rrdd: $(RRDD_OBJS)
-       $(QUIET_LINK)$(CC) -o rrdd $(RRDD_OBJS) -lconfig -lownet -ldl -rdynamic
+       $(QUIET_LINK)$(CC) -o rrdd $(RRDD_OBJS) -lconfig -ldl -rdynamic \
+               -lpthread
+
+onewire_parser.so: $(ONEWIRE_PARSER_OBJS)
+       $(QUIET_LINK)$(CC) $(CFLAGS) -lownet -shared -fPIC $< -o $@
 
 clean:
-       rm -vf rrdd *~ *.o .*.d *.so
+       rm -vf rrdd *~ *.o .*.d *.so .version version.h .compiler_check*
 
-.c.o:
+%.o: %.c .compiler_check
        $(QUIET_CC)$(CC) -MMD -MF .$@.d $(CFLAGS) -c $< -o $@
        $(Q)cp .$@.d .$@.P; \
             sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \
                 -e '/^$$/ d' -e 's/$$/ :/' < .$@.d >> .$@.P; \
             mv .$@.P .$@.d
 
+version.h .compiler_check: FORCE
+       $(Q)./mkcompile_h "$(CC) $(CFLAGS)"
+
+FORCE:
+
+
 TAGS:
        @echo -e "\tTAGS\t"
        @etags *.[ch]