chiark / gitweb /
basic: remove rm_rf_and_free, add rm_rf_physical_and_free, use rm_rf_physical_and_fre...
[elogind.git] / Makefile.am
index c403adc94ee3ac302322eaab08ca0ea10c49df07..7facc7610600c1c5d8ad875a88b5947ab74fcbb8 100644 (file)
@@ -38,9 +38,9 @@ SUBDIRS = . po
 # Keep the test-suite.log
 .PRECIOUS: $(TEST_SUITE_LOG) Makefile
 
-LIBELOGIND_CURRENT=11
+LIBELOGIND_CURRENT=14
 LIBELOGIND_REVISION=0
-LIBELOGIND_AGE=11
+LIBELOGIND_AGE=14
 
 # Dirs of external packages
 dbuspolicydir=@dbuspolicydir@
@@ -52,8 +52,6 @@ pkgconfiglibdir=$(libdir)/pkgconfig
 polkitpolicydir=$(datadir)/polkit-1/actions
 bashcompletiondir=@bashcompletiondir@
 zshcompletiondir=@zshcompletiondir@
-systemsleepdir=$(pkglibexecdir)/sleep.d
-systemshutdowndir=$(pkglibexecdir)/shutdown.d
 
 CGROUP_CONTROLLER=@cgroup_controller@
 PKTTYAGENT=$(bindir)/pkttyagent
@@ -65,13 +63,14 @@ udevrulesdir=@udevrulesdir@
 udevbindir=@udevbindir@
 udevlibexecdir=$(udevbindir)
 udevhomedir=$(udevlibexecdir)
+systemshutdowndir=$(rootlibexecdir)/system-shutdown
+systemsleepdir=$(rootlibexecdir)/system-sleep
 factory_pamdir = $(datadir)/factory/etc/pam.d
 
 # And these are the special ones for /
 rootprefix=@rootprefix@
-rootlibdir=@rootlibdir@
 rootbindir=$(rootprefix)/bin
-
+rootlibexecdir=$(rootprefix)/lib/elogind
 
 EXTRA_DIST =
 BUILT_SOURCES =
@@ -105,6 +104,13 @@ noinst_PROGRAMS =
 TESTS =
 endif
 
+if ENABLE_BASH_COMPLETION
+dist_bashcompletion_DATA = $(dist_bashcompletion_data)
+endif
+if ENABLE_ZSH_COMPLETION
+dist_zshcompletion_DATA = $(dist_zshcompletion_data)
+endif
+
 in_files = $(filter %.in,$(EXTRA_DIST))
 in_in_files = $(filter %.in.in, $(in_files))
 m4_files = $(filter %.m4,$(EXTRA_DIST) $(in_files:.m4.in=.m4))
@@ -121,8 +127,8 @@ CLEANFILES = $(BUILT_SOURCES) \
 AM_CPPFLAGS = \
        -include $(top_builddir)/config.h \
        -DPKGSYSCONFDIR=\"$(pkgsysconfdir)\" \
-       -DELOGIND_CGROUP_CONTROLLER=\"$(CGROUP_CONTROLLER)\" \
-       -DELOGIND_CGROUP_AGENT_PATH=\"$(pkglibexecdir)/elogind-cgroups-agent\" \
+       -DSYSTEMD_CGROUP_CONTROLLER=\"$(CGROUP_CONTROLLER)\" \
+       -DELOGIND_CGROUP_AGENT_PATH=\"$(rootlibexecdir)/elogind-cgroups-agent\" \
        -DUDEVLIBEXECDIR=\"$(udevlibexecdir)\" \
        -DPOLKIT_AGENT_BINARY_PATH=\"$(PKTTYAGENT)\" \
        -DSYSTEM_SLEEP_PATH=\"$(systemsleepdir)\" \
@@ -131,6 +137,8 @@ AM_CPPFLAGS = \
        -DREBOOT=\"$(REBOOT)\" \
        -DKEXEC=\"$(KEXEC)\" \
        -DLIBDIR=\"$(libdir)\" \
+       -DROOTLIBDIR=\"$(rootlibdir)\" \
+       -DROOTLIBEXECDIR=\"$(rootlibexecdir)\" \
        -DTEST_DIR=\"$(abs_top_srcdir)/test\" \
        -I $(top_srcdir)/src \
        -I $(top_builddir)/src/basic \
@@ -223,70 +231,65 @@ man_MANS = \
 
 noinst_DATA += \
        $(HTML_FILES) \
-       $(HTML_ALIAS)
+       $(HTML_ALIAS) \
+       docs/html/man
+endif
 
 CLEANFILES += \
        $(man_MANS) \
        $(HTML_FILES) \
-       $(HTML_ALIAS)
+       $(HTML_ALIAS) \
+       docs/html/man
 
 docs/html/man:
        $(AM_V_at)$(MKDIR_P) $(dir $@)
        $(AM_V_LN)$(LN_S) -f ../../man $@
 
-noinst_DATA += \
-       docs/html/man
-
-CLEANFILES += \
-       docs/html/man
-
-if HAVE_PYTHON
 man/index.html: man/elogind.index.html
        $(AM_V_LN)$(LN_S) -f elogind.index.html $@
 
+if HAVE_PYTHON
 noinst_DATA += \
        man/index.html
+endif
 
 CLEANFILES += \
        man/index.html
 
-XML_GLOB = $(wildcard $(top_srcdir)/man/*.xml)
-NON_INDEX_XML_FILES = $(filter-out man/elogind.index.xml,$(XML_FILES))
-SOURCE_XML_FILES = ${patsubst %,$(top_srcdir)/%,$(filter-out man/elogind.directives.xml,$(NON_INDEX_XML_FILES))}
+XML_GLOB            := $(wildcard $(top_srcdir)/man/*.xml)
+DIRECTIVE_FILE      := man/elogind.directives.xml
+INDEX_XML_FILE      := man/elogind.index.xml
+NON_INDEX_XML_FILES := $(DIRECTIVE_FILE) $(filter-out $(INDEX_XML_FILE) $(DIRECTIVE_FILE),$(XML_FILES))
+ALL_XML_FILES       := $(INDEX_XML_FILE) $(DIRECTIVE_FILE) $(filter-out $(INDEX_XML_FILE) $(DIRECTIVE_FILE),$(XML_GLOB))
+SOURCE_XML_FILES    := ${patsubst %,$(top_srcdir)/%,$(filter-out $(DIRECTIVE_FILE),$(NON_INDEX_XML_FILES))}
 
 # This target should only be run manually. It recreates Makefile-man.am
 # file in the source directory based on all man/*.xml files. Run it after
 # adding, removing, or changing the conditional in a man page.
-update-man-list: $(top_srcdir)/tools/make-man-rules.py $(XML_GLOB)
-       $(AM_V_GEN)$(PYTHON) $^ > $(top_srcdir)/Makefile-man.tmp
+update-man-list: $(top_srcdir)/tools/make-man-rules.py $(ALL_XML_FILES) man/custom-entities.ent
+       $(AM_V_GEN)$(PYTHON) $< $(ALL_XML_FILES) > $(top_srcdir)/Makefile-man.tmp
        $(AM_V_at)mv $(top_srcdir)/Makefile-man.tmp $(top_srcdir)/Makefile-man.am
-               @echo "Makefile-man.am has been regenerated"
+       @echo "Makefile-man.am has been regenerated"
 
-man/elogind.index.xml: $(top_srcdir)/tools/make-man-index.py $(NON_INDEX_XML_FILES)
+$(INDEX_XML_FILE): $(top_srcdir)/tools/make-man-index.py $(NON_INDEX_XML_FILES)
        $(AM_V_at)$(MKDIR_P) $(dir $@)
        $(AM_V_GEN)$(PYTHON) $< $@ $(filter-out $<,$^)
 
-man/elogind.directives.xml: $(top_srcdir)/tools/make-directive-index.py man/custom-entities.ent $(SOURCE_XML_FILES)
+$(DIRECTIVE_FILE): $(top_srcdir)/tools/make-directive-index.py man/custom-entities.ent $(SOURCE_XML_FILES)
        $(AM_V_at)$(MKDIR_P) $(dir $@)
        $(AM_V_GEN)$(PYTHON) $< $@ $(SOURCE_XML_FILES)
 
 CLEANFILES += \
-       man/elogind.index.xml \
-       man/elogind.directives.xml
+       $(INDEX_XML_FILE) \
+       $(DIRECTIVE_FILE)
 
 EXTRA_DIST += \
-       tools/make-man-rules.py
-
-endif
-
-endif
-
-EXTRA_DIST += \
-       $(filter-out man/elogind.directives.xml,$(XML_FILES)) \
-       $(HTML_FILES) \
-       $(HTML_ALIAS) \
-       $(man_MANS) \
-       $(NULL)
+       $(filter-out $(DIRECTIVE_FILE) $(INDEX_XML_FILE),$(XML_FILES)) \
+       tools/make-man-index.py \
+       tools/make-man-rules.py \
+       tools/make-directive-index.py \
+       tools/xml_helper.py \
+       man/glib-event-glue.c
 
 # ------------------------------------------------------------------------------
 noinst_LTLIBRARIES += \
@@ -296,26 +299,65 @@ libbasic_la_SOURCES = \
        src/basic/missing.h \
        src/basic/musl_missing.h \
        src/basic/musl_missing.c \
-       src/basic/capability.c \
-       src/basic/capability.h \
+       src/basic/capability-util.c \
+       src/basic/capability-util.h \
        src/basic/conf-files.c \
        src/basic/conf-files.h \
+       src/basic/stdio-util.h \
        src/basic/hostname-util.h \
        src/basic/hostname-util.c \
        src/basic/unit-name.c \
        src/basic/unit-name.h \
+       src/basic/unaligned.h \
        src/basic/util.c \
        src/basic/util.h \
+       src/basic/io-util.c \
+       src/basic/io-util.h \
+       src/basic/string-util.c \
+       src/basic/string-util.h \
+       src/basic/parse-util.c \
+       src/basic/parse-util.h \
+       src/basic/fd-util.c \
+       src/basic/fd-util.h \
+       src/basic/user-util.c \
+       src/basic/user-util.h \
+       src/basic/dirent-util.c \
+       src/basic/dirent-util.h \
+       src/basic/xattr-util.c \
+       src/basic/xattr-util.h \
+       src/basic/proc-cmdline.c \
+       src/basic/proc-cmdline.h \
+       src/basic/fs-util.c \
+       src/basic/fs-util.h \
+       src/basic/syslog-util.c \
+       src/basic/syslog-util.h \
+       src/basic/stat-util.c \
+       src/basic/stat-util.h \
+       src/basic/mount-util.c \
+       src/basic/mount-util.h \
+       src/basic/hexdecoct.c \
+       src/basic/hexdecoct.h \
+       src/basic/extract-word.c \
+       src/basic/extract-word.h \
+       src/basic/escape.c \
+       src/basic/escape.h \
        src/basic/path-util.c \
        src/basic/path-util.h \
        src/basic/time-util.c \
        src/basic/time-util.h \
+       src/basic/locale-util.c \
+       src/basic/locale-util.h \
+       src/basic/umask-util.h \
        src/basic/signal-util.c \
        src/basic/signal-util.h \
+       src/basic/string-table.c \
+       src/basic/string-table.h \
        src/basic/mempool.c \
        src/basic/mempool.h \
        src/basic/hashmap.c \
        src/basic/hashmap.h \
+       src/basic/hash-funcs.c \
+       src/basic/hash-funcs.h \
        src/basic/siphash24.c \
        src/basic/siphash24.h \
        src/basic/prioq.c \
@@ -334,6 +376,8 @@ libbasic_la_SOURCES = \
        src/basic/utf8.h \
        src/basic/gunicode.c \
        src/basic/gunicode.h \
+       src/basic/socket-util.c \
+       src/basic/socket-util.h \
        src/basic/fileio.c \
        src/basic/fileio.h \
        src/basic/mkdir.c \
@@ -346,8 +390,8 @@ libbasic_la_SOURCES = \
        src/basic/terminal-util.h \
        src/basic/login-util.h \
        src/basic/login-util.c \
-       src/basic/audit.c \
-       src/basic/audit.h \
+       src/basic/audit-util.c \
+       src/basic/audit-util.h \
        src/basic/memfd-util.c \
        src/basic/memfd-util.h \
        src/basic/process-util.c \
@@ -367,6 +411,8 @@ libbasic_la_SOURCES = \
        src/basic/rm-rf.h \
        src/basic/copy.c \
        src/basic/copy.h \
+       src/basic/alloc-util.h \
+       src/basic/alloc-util.c \
        src/basic/parse-printf-format.c \
        src/basic/parse-printf-format.h
 
@@ -394,8 +440,6 @@ noinst_LTLIBRARIES += \
        libshared.la
 
 libshared_la_SOURCES = \
-       src/shared/sleep-config.c \
-       src/shared/sleep-config.h \
        src/shared/conf-parser.c \
        src/shared/conf-parser.h \
        src/shared/pager.c \
@@ -404,9 +448,6 @@ libshared_la_SOURCES = \
        src/shared/spawn-polkit-agent.h \
        src/shared/clean-ipc.c \
        src/shared/clean-ipc.h \
-       src/shared/cgroup-show.c \
-       src/shared/cgroup-show.h \
-       src/shared/utmp-wtmp.h \
        src/shared/bus-util.c \
        src/shared/bus-util.h
 
@@ -612,6 +653,8 @@ libelogind_core_la_SOURCES = \
        src/login/logind-session.h \
        src/login/logind-session-device.c \
        src/login/logind-session-device.h \
+       src/login/logind-sleep.c \
+       src/login/logind-sleep.h \
        src/login/logind-user.c \
        src/login/logind-user.h \
        src/login/logind-inhibit.c \
@@ -620,7 +663,6 @@ libelogind_core_la_SOURCES = \
        src/login/logind-session-dbus.c \
        src/login/logind-seat-dbus.c \
        src/login/logind-user-dbus.c \
-       src/login/logind-utmp.c \
        src/login/logind-acl.h \
        src/core/cgroup.h \
        src/core/cgroup.c \
@@ -652,16 +694,12 @@ loginctl_LDADD = \
 rootbin_PROGRAMS += \
        loginctl
 
-if ENABLE_BASH_COMPLETION
-dist_bashcompletion_DATA = \
+dist_bashcompletion_data = \
        shell-completion/bash/loginctl
-endif
 
-if ENABLE_ZSH_COMPLETION
-dist_zshcompletion_DATA = \
+dist_zshcompletion_data = \
        shell-completion/zsh/_loginctl \
        shell-completion/zsh/_elogind-inhibit
-endif
 
 elogind_inhibit_SOURCES = \
        src/login/inhibit.c
@@ -731,6 +769,8 @@ pamlib_LTLIBRARIES = \
 dist_pamconf_DATA = \
        src/login/elogind-user
 
+EXTRA_DIST += \
+       src/login/elogind-user.m4
 endif
 
 dist_dbussystemservice_DATA += \
@@ -765,6 +805,7 @@ EXTRA_DIST += \
 
 # ------------------------------------------------------------------------------
 substitutions = \
+       '|rootlibexecdir=$(rootlibexecdir)|' \
        '|rootbindir=$(rootbindir)|' \
        '|bindir=$(bindir)|' \
        '|pkgsysconfdir=$(pkgsysconfdir)|' \
@@ -955,7 +996,7 @@ git-tar:
         for f in `find elogind-$(VERSION)-raw/ -type f | cut -d '/' -f 2-` ; do \
                $(MKDIR_P) elogind-$(VERSION)/`dirname $$f` ;            \
                $(AWK) 'BEGIN                    { i=0;e=0      }        \
-                       /^#if\s+0\s*$$/          { i=1;next     }        \
+                       /^#if\s+0.*elogind.*$$/  { i=1;next     }        \
                        /^#else\s*$$/            {                       \
                            { if ( i==1 ) e=1; else print }{next}        \
                        }                                                \