aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile32
1 files changed, 25 insertions, 7 deletions
diff --git a/Makefile b/Makefile
index a580517..99df0bf 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
-TARGETS = mtu pingu pinguctl
+TARGETS = mtu pingu pinguctl client.so
VERSION = 0.5
prefix = /usr
@@ -7,17 +7,23 @@ localstatedir = /var
rundir = $(localstatedir)/run
pingustatedir = $(rundir)/pingu
+luasharedir = /usr/share/lua/5.1
+lualibdir = /usr/lib/lua/5.1
+
BINDIR = $(prefix)/bin
DESTDIR ?=
INSTALL = install
INSTALLDIR = $(INSTALL) -d
+PKG_CONFIG ?= pkg-config
+
+
CFLAGS ?= -g
CFLAGS += -DPINGU_VERSION=\"$(VERSION)\"
CFLAGS += -Wall -Wstrict-prototypes -D_GNU_SOURCE -std=gnu99
CFLAGS += -DDEFAULT_PIDFILE=\"$(pingustatedir)/pingu.pid\"
-CFLAGS += -DDEFAULT_ADM_SOCKET=\"$(pingustatedir)/pingu.ctl\"
+CFLAGS += -DDEFAULT_ADM_client=\"$(pingustatedir)/pingu.ctl\"
pingu_OBJS = \
icmp.o \
@@ -47,21 +53,33 @@ mtu_OBJS = \
netlink.o \
icmp.o
-ALL_OBJS= $(pingu_OBJS) $(pinguctl_OBJS) $(mtu_OBJS)
+client.so_OBJS = \
+ lua-client.o
+
+client.so_LIBS = $(shell $(PKG_CONFIG) --libs lua)
+client.so_LDFLAGS = -shared
+
+ALL_OBJS= $(pingu_OBJS) $(pinguctl_OBJS) $(mtu_OBJS) $(client.so_OBJS)
all: $(TARGETS)
-pingu: $(pingu_OBJS)
- $(CC) $(LDFLAGS) $(pingu_OBJS) $(pingu_LIBS) -o $@
+$(TARGETS):
+ $(CC) $(LDFLAGS) $($@_LDFLAGS) $($@_OBJS) $($@_LIBS) -o $@
+pingu: $(pingu_OBJS)
pinguctl: $(pinguctl_OBJS)
- $(CC) $(LDFLAGS) $(pinguctl_OBJS) $(pinguctl_LIBS) -o $@
-
+client.so: $(client.so_OBJS)
mtu: $(mtu_OBJS)
install: $(TARGETS)
$(INSTALLDIR) $(DESTDIR)/$(BINDIR) $(DESTDIR)/$(pingustatedir)
$(INSTALL) $(TARGETS) $(DESTDIR)/$(BINDIR)
+install-lua: client.so pingu.lua
+ $(INSTALLDIR) $(DESTDIR)$(luasharedir) \
+ $(DESTDIR)$(lualibdir)/pingu
+ $(INSTALL) pingu.lua $(DESTDIR)$(luasharedir)/
+ $(INSTALL) client.so $(DESTDIR)$(lualibdir)/pingu/
+
clean:
rm -f $(TARGETS) $(ALL_OBJS)