]> git.ozlabs.org Git - ppp.git/blobdiff - pppd/plugins/Makefile.linux
Fix an fd leak on the discovery socket.
[ppp.git] / pppd / plugins / Makefile.linux
index b7a7db0b355e04c3116c291b1f8978a2ca5cc4bc..80b0ae01da8a07566fe3729b0855e4e046ad6f5a 100644 (file)
@@ -1,11 +1,41 @@
 CC     = gcc
-CFLAGS = -g -O2 -I.. -I../../include -fPIC
+COPTS  = -O2 -g
+CFLAGS = $(COPTS) -I.. -I../../include -fPIC
 LDFLAGS        = -shared
+INSTALL        = install
 
-all:   minconn.so passprompt.so
+DESTDIR = @DESTDIR@
+BINDIR = $(DESTDIR)/sbin
+MANDIR = $(DESTDIR)/share/man/man8
+LIBDIR = $(DESTDIR)/lib/pppd/$(VERSION)
 
-minconn.so: minconn.c
-       $(CC) -o $@ $(LDFLAGS) $(CFLAGS) minconn.c
+SUBDIRS := rp-pppoe
+# Uncomment the next line to include the radius authentication plugin
+# SUBDIRS += radius
+PLUGINS := minconn.so passprompt.so passwordfd.so
 
-passprompt.so: passprompt.c
-       $(CC) -o $@ $(LDFLAGS) $(CFLAGS) passprompt.c
+# include dependencies if present
+ifeq (.depend,$(wildcard .depend))
+include .depend
+endif
+
+all:   $(PLUGINS)
+       for d in $(SUBDIRS); do $(MAKE) $(MFLAGS) -C $$d all; done
+
+%.so: %.c
+       $(CC) -o $@ $(LDFLAGS) $(CFLAGS) $^
+
+VERSION = $(shell awk -F '"' '/VERSION/ { print $$2; }' ../patchlevel.h)
+
+install: $(PLUGINS)
+       $(INSTALL) -d $(LIBDIR)
+       $(INSTALL) $? $(LIBDIR)
+       for d in $(SUBDIRS); do $(MAKE) $(MFLAGS) -C $$d install; done
+
+clean:
+       rm -f *.o *.so *.a
+       for d in $(SUBDIRS); do $(MAKE) $(MFLAGS) -C $$d clean; done
+
+depend:
+       $(CPP) -M $(CFLAGS) *.c >.depend
+       for d in $(SUBDIRS); do $(MAKE) $(MFLAGS) -C $$d depend; done