aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile50
-rw-r--r--config.c4
-rw-r--r--globals.c4
-rw-r--r--lsm.spec8
4 files changed, 34 insertions, 32 deletions
diff --git a/Makefile b/Makefile
index 997d856..cc8de81 100644
--- a/Makefile
+++ b/Makefile
@@ -14,26 +14,32 @@ override CFLAGS += -Wall -O2 -DLSM_VERSION=\"$(VERSION)\"
#override CFLAGS += -D NO_PLUGIN_EXPORT_MUNIN
#override CFLAGS += -D NO_PLUGIN_EXPORT_STATUS
-LDFLAGS =
-
-INITDDIR ?= /etc/init.d
-DOCDIR ?= /usr/share/doc/lsm
+PREFIX ?= /usr/local
+DESTDIR ?=
+BINDIR ?= $(PREFIX)/sbin
+ifeq ($(PREFIX), /usr)
+ETCDIR ?= /etc/lsm
+else
+ETCDIR ?= $(PREFIX)/etc/lsm
+endif
+DOCDIR ?= $(PREFIX)/share/doc/lsm
+EXAMPLEDIR ?= $(DOCDIR)/examples
+SCRIPTDIR ?= $(PREFIX)/libexec/lsm
DOCFILES = README lsm.conf.sample default_script.sample rsyslog-lsm.conf.sample
SCRIPTS = shorewall_script shorewall6_script default_script group_script
+override CFLAGS += -D ETCDIR=\"$(ETCDIR)\"
+override CFLAGS += -D SCRIPTDIR=\"$(SCRIPTDIR)\"
+
.PHONY: all clean distclean tar rpm
all: $(PROGS)
-%.o: %.c
- $(CC) $(CFLAGS) -c -o $@ $<
-
lsm: lsm.o icmp_t.o icmp6_t.o config.o globals.o cksum.o forkexec.o signal_handler.o timecalc.o plugin_export.o save_statuses.o pidfile.o cmdline.o usage.o
- $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
clean distclean:
- rm -rf *~ .*~ *.o $(PROGS) Makefile.depend debugfiles.list debuglinks.list debugsources.list *.orig
+ rm -rf *~ .*~ *.o $(PROGS) debugfiles.list debuglinks.list debugsources.list *.orig
tar: distclean
tar zcvf ../$(PKG)-$(VERSION).tar.gz \
@@ -48,25 +54,13 @@ rpm: tar
cp $(PKG).spec ~/rpmbuild/SPECS
rpmbuild -ba ~/rpmbuild/SPECS/$(PKG).spec
-Makefile.depend: *.c *.h Makefile
- $(CC) -MM *.c > $@
-
install: all
- mkdir -p $(DESTDIR)/etc/lsm
- mkdir -p $(DESTDIR)$(INITDDIR)
- mkdir -p $(DESTDIR)/usr/sbin
- mkdir -p $(DESTDIR)$(DOCDIR)
- mkdir -p $(DESTDIR)/usr/share/lsm
- mkdir -p $(DESTDIR)/usr/libexec/lsm
- mkdir -p $(DESTDIR)/var/lib/lsm
- install -m0644 lsm.conf $(DESTDIR)/etc/lsm
- install -m0755 lsm.init $(DESTDIR)$(INITDDIR)/lsm
- install -m0755 lsm $(DESTDIR)/usr/sbin
- install -m0644 $(DOCFILES) $(DESTDIR)$(DOCDIR)
- install -m0755 $(SCRIPTS) $(DESTDIR)/usr/libexec/lsm
- ln -sf ../../libexec/lsm/default_script $(DESTDIR)/usr/share/lsm/default_script
- ln -sf ../../libexec/lsm/shorewall_script $(DESTDIR)/usr/share/lsm/shorewall_script
-
--include Makefile.depend
+ install -d $(DESTDIR)$(EXAMPLEDIR)
+ install -d $(DESTDIR)$(SCRIPTDIR)
+ install -d $(DESTDIR)/var/lib/lsm
+ install -D -m0644 lsm.conf $(DESTDIR)$(ETCDIR)/lsm.conf
+ install -D -m0755 lsm $(DESTDIR)$(BINDIR)/lsm
+ install -m0644 $(DOCFILES) $(DESTDIR)$(EXAMPLEDIR)
+ install -m0755 $(SCRIPTS) $(DESTDIR)$(SCRIPTDIR)
#
diff --git a/config.c b/config.c
index 5f653f2..99795dc 100644
--- a/config.c
+++ b/config.c
@@ -23,6 +23,8 @@ License: GPLv2
#include "config.h"
#include "defs.h"
+#define DEFAULT_SCRIPT_FILE SCRIPTDIR "/default_script"
+
static CONFIG defaults;
static int errors = 0;
@@ -144,7 +146,7 @@ void init_config(void)
defaults.name = strdup("defaults");
defaults.checkip = strdup("127.0.0.1");
defaults.eventscript = NULL;
- defaults.notifyscript = strdup("/usr/libexec/lsm/default_script");
+ defaults.notifyscript = strdup(DEFAULT_SCRIPT_FILE);
defaults.max_packet_loss = 15;
defaults.max_successive_pkts_lost = 7;
defaults.min_packet_loss = 5;
diff --git a/globals.c b/globals.c
index 9af3a6f..7f2cae0 100644
--- a/globals.c
+++ b/globals.c
@@ -12,13 +12,15 @@ License: GPLv2
#include "globals.h"
#include "defs.h"
+#define LSM_CONFIG_FILE ETCDIR "/lsm.conf"
+
static char *prog = NULL;
static int cont = TRUE;
static int dump = FALSE;
static int ident = 0;
static int reload_cfg = FALSE;
static int dump_if_list = FALSE;
-static char *configfile = "/etc/lsm/lsm.conf";
+static char *configfile = LSM_CONFIG_FILE;
static char *pidfile = "/var/run/lsm.pid";
static int nodaemon = 0;
static char *status_str[] = { "down", "up", "unknown", "long_down" };
diff --git a/lsm.spec b/lsm.spec
index dddce20..61e9d90 100644
--- a/lsm.spec
+++ b/lsm.spec
@@ -2,7 +2,7 @@
Summary: The Link Status Monitor
Name: lsm
-Version: 1.0.4
+Version: 1.0.5
Release: 1%{?dist}
License: GPLv2
Group: System Environment/Daemons
@@ -47,7 +47,7 @@ EFENCE=
RPM_OPT_FLAGS="$(echo "%{optflags}" | sed 's/-O.\ / /')"
EFENCE="-lefence"
%endif
-make CFLAGS="$RPM_OPT_FLAGS" LDFLAGS=${EFENCE} %{?_smp_mflags}
+make PREFIX=%{_prefix} CFLAGS="$RPM_OPT_FLAGS" LDFLAGS=${EFENCE} %{?_smp_mflags}
%install
rm -rf %{buildroot}
@@ -128,6 +128,10 @@ fi
%dir %{_sharedstatedir}/lsm
%changelog
+* Fri May 13 2016 Mika Ilmaranta <ilmis@nullnet.fi> - 1.0.5-1
+- patches from Lucas de Castro Borges for Debian
+- exept for POSIX compliancy scriptdir PREFIX/libexec/lsm
+
* Tue Jan 26 2016 Mika Ilmaranta <ilmis@nullnet.fi> - 1.0.4-1
- For systemd start after shorewall otherwise shorewall_script
may be executed too early