summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Makefile11
-rwxr-xr-xsrc/configure11
2 files changed, 20 insertions, 2 deletions
diff --git a/src/Makefile b/src/Makefile
index 4524b29..b86007f 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -98,8 +98,8 @@ manpage:
$(MAKE) --directory="../doc/" manpage
-INSTALL_TARGETS := install-bin install-etc
-REMOVE_TARGETS := remove-bin remove-etc
+INSTALL_TARGETS := install-bin install-systemd install-etc
+REMOVE_TARGETS := remove-bin remove-systemd remove-etc
ifdef MANDIR
INSTALL_TARGETS += install-man
@@ -117,6 +117,10 @@ install-bin: $(EXECUTABLE)
$(INSTALL) -d $(DESTDIR)$(BINDIR)
$(INSTALL) -m 755 $(EXECUTABLE) $(DESTDIR)$(BINDIR)
+install-systemd:
+ $(INSTALL) -d $(DESTDIR)$(SYSTEMDDIR)
+ $(INSTALL) -m 755 ../contrib/systemd.service $(DESTDIR)$(SYSTEMDDIR)/$(EXECUTABLE).service
+
install-etc:
$(INSTALL) -d $(DESTDIR)$(ETCDIR)/init.d/
$(INSTALL) -m 755 ../contrib/initscript $(DESTDIR)$(ETCDIR)/init.d/$(EXECUTABLE)
@@ -140,6 +144,9 @@ remove: $(REMOVE_TARGETS)
remove-bin:
rm -f $(DESTDIR)$(BINDIR)/$(EXECUTABLE)
+remove-systemd:
+ rm -f $(DESTDIR)$(SYSTEMDDIR)/$(EXECUTABLE).service
+
remove-etc:
rm -f $(DESTDIR)$(ETCDIR)/init.d/$(EXECUTABLE)
diff --git a/src/configure b/src/configure
index 3d8982b..d651903 100755
--- a/src/configure
+++ b/src/configure
@@ -33,6 +33,7 @@ USE_CLANG=0
PREFIX='/usr/local'
BINDIR=''
+SYSTEMDDIR=''
ETCDIR=''
MANDIR=''
INSTALLMANPAGE=1
@@ -44,6 +45,7 @@ print_usage() {
echo " --target=<TARGET> build target i.e. Linux (default: autodetect)"
echo " --prefix=<PREFIX> the installation prefix (default: /usr/local)"
echo " --bindir=<DIR> the path to the bin directory (default: $PREFIX/bin)"
+ echo " --systemddir=<DIR> the path to the systemd service unit directory (default: /usr/lib/systemd/system)"
echo " --sysconfdir=<DIR> the path to the system configuration directory (default: $PREFIX/etc"
echo " --mandir=<DIR> the path to the system man pages (default: $PREFIX/share/man)"
echo " --no-manpage dont't install manpage"
@@ -67,6 +69,9 @@ do
--bindir=*)
BINDIR=${arg#--bindir=}
;;
+ --systemddir=*)
+ SYSTEMDDIR=${arg#--systemddir=}
+ ;;
--sysconfdir=*)
ETCDIR=${arg#--sysconfdir=}
;;
@@ -133,6 +138,10 @@ if [ -z "$BINDIR" ]; then
BINDIR=$PREFIX/bin
fi
+if [ -z "$SYSTEMDDIR" ]; then
+ SYSTEMDDIR=/usr/lib/systemd/system
+fi
+
if [ -z "$ETCDIR" ]; then
ETCDIR=$PREFIX/etc
fi
@@ -160,6 +169,7 @@ RAGEL := ragel
prefix := '$PREFIX'
BINDIR := '$BINDIR'
+SYSTEMDDIR := '$SYSTEMDDIR'
ETCDIR := '$ETCDIR'
EOF
@@ -206,6 +216,7 @@ cat > config.h <<EOF
#define TARGET "$TARGET"
#define PREFIX "$PREFIX"
#define BINDIR "$BINDIR"
+#define SYSTEMDDIR "$SYSTEMDDIR"
#define ETCDIR "$ETCDIR"
#define CONFFILE "$ETCDIR/tcpproxy.conf"