diff --git a/Makefile.in b/Makefile.in index 0b0e9609..a1e8ac8b 100644 --- a/Makefile.in +++ b/Makefile.in @@ -14,6 +14,7 @@ libdir := @libdir@ includedir := @includedir@ sbindir := @sbindir@ localstatedir := @localstatedir@ +systemdsystemunitdir := @systemdsystemunitdir@ CXX := @CXX@ CXXFLAGS := -I$(srcdir)/include -Iinclude @CPPFLAGS@ @CXXFLAGS@ LDFLAGS := @LDFLAGS@ @@ -139,6 +140,9 @@ install: znc $(LIBZNC) @echo " If you need help with using ZNC, please visit our wiki at:" @echo " http://znc.in" + @HAVE_SYSTEMD_TRUE@test -d $(DESTDIR)$(systemdsystemunitdir) || $(INSTALL) -d $(DESTDIR)$(systemdsystemunitdir) + @HAVE_SYSTEMD_TRUE@$(INSTALL_DATA) znc.service $(DESTDIR)$(systemdsystemunitdir) + uninstall: rm $(DESTDIR)$(bindir)/znc rm $(DESTDIR)$(bindir)/znc-buildmod diff --git a/configure.ac b/configure.ac index c41d32bf..5083c8aa 100644 --- a/configure.ac +++ b/configure.ac @@ -90,6 +90,8 @@ case "${host_os}" in ;; esac +PKG_PROG_PKG_CONFIG() + AC_ARG_WITH( [openssl], AS_HELP_STRING([--with-openssl=DIR], [openssl installation prefix]), [OPENSSL=$withval],) @@ -150,6 +152,14 @@ AC_ARG_ENABLE([add-networks], AS_HELP_STRING([--enable-add-networks], [allow non-admins to add networks]), [ if test x"$enableval" = "xyes" ; then appendCXX "-DENABLE_ADD_NETWORK" ; fi ]) +AC_ARG_WITH([systemdsystemunitdir], + AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]), + [], [with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)]) +if test "x$with_systemdsystemunitdir" != xno; then + AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir]) +fi +AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ]) + if test "$DEBUG" != "no"; then appendCXX -ggdb3 AC_DEFINE([_DEBUG], [1], [Define for debugging]) @@ -197,7 +207,6 @@ fi AC_CHECK_LIB( gnugetopt, getopt_long,) AC_CHECK_FUNCS([lstat getopt_long getphassphrase]) -PKG_PROG_PKG_CONFIG() # ----- Check for dlopen diff --git a/test/ConfigTest.cpp b/test/ConfigTest.cpp index 13673fca..f3b12974 100644 --- a/test/ConfigTest.cpp +++ b/test/ConfigTest.cpp @@ -6,9 +6,9 @@ * by the Free Software Foundation. */ -#include "ZNCDebug.h" -#include "FileUtils.h" -#include "Config.h" +#include "znc/ZNCDebug.h" +#include "znc/FileUtils.h" +#include "znc/Config.h" #include class CConfigTest { @@ -113,7 +113,7 @@ public: CConfig::SubConfigMapIterator it2 = conf.BeginSubConfigs(); while (it2 != conf.EndSubConfigs()) { - map::const_iterator it3 = it2->second.begin(); + map::const_iterator it3 = it2->second.begin(); while (it3 != it2->second.end()) { sRes += "->" + it2->first + "/" + it3->first + "\n"; diff --git a/test/EscapeTest.cpp b/test/EscapeTest.cpp index ac46ac57..0ada6c9f 100644 --- a/test/EscapeTest.cpp +++ b/test/EscapeTest.cpp @@ -6,8 +6,8 @@ * by the Free Software Foundation. */ -#include "ZNCString.h" -#include "ZNCDebug.h" +#include "znc/ZNCString.h" +#include "znc/ZNCDebug.h" static int testEqual(const CString& a, const CString& b, const CString& what) { diff --git a/test/Makefile.in b/test/Makefile.in index 6e377c60..357f3c83 100644 --- a/test/Makefile.in +++ b/test/Makefile.in @@ -5,14 +5,14 @@ srcdir := @srcdir@ VPATH := @srcdir@ CXX := @CXX@ -CXXFLAGS := @CPPFLAGS@ @CXXFLAGS@ -I.. +CXXFLAGS := @CPPFLAGS@ @CXXFLAGS@ -I../include LDFLAGS := @LDFLAGS@ LIBS := @LIBS@ TARGETS := ConfigTest EscapeTest OBJS := $(addsuffix .o, $(TARGETS)) ZNC_OBJS := Config.o ZNCDebug.o FileUtils.o Utils.o ZNCString.o MD5.o SHA256.o -ZNC_OBJS := $(addprefix ../, $(ZNC_OBJS)) +ZNC_OBJS := $(addprefix ../src/, $(ZNC_OBJS)) ifneq "$(V)" "" VERBOSE=1 diff --git a/znc.service b/znc.service index 6d8ed8b9..2f862bf3 100644 --- a/znc.service +++ b/znc.service @@ -1,11 +1,10 @@ [Unit] -Description=An advanced IRC bouncer +Description=ZNC, an advanced IRC bouncer After=network.target [Service] -ExecStart=/usr/bin/znc +ExecStart=/usr/bin/znc -f User=znc -Type=forking [Install] WantedBy=multi-user.target