chiark / gitweb /
build-sys: don't hard code bash-completion directory
[elogind.git] / Makefile.am
index d00ca113e0b1fecb909c3a700e49efc208009550..f18cccd070d36ba935f84da93058670ac002cf18 100644 (file)
@@ -64,7 +64,7 @@ pamlibdir=@pamlibdir@
 pkgconfigdatadir=$(datadir)/pkgconfig
 pkgconfiglibdir=$(libdir)/pkgconfig
 polkitpolicydir=$(datadir)/polkit-1/actions
-bashcompletiondir=$(sysconfdir)/bash_completion.d
+bashcompletiondir=@bashcompletiondir@
 rpmmacrosdir=$(sysconfdir)/rpm
 sysvinitdir=$(SYSTEM_SYSVINIT_PATH)
 sysvrcnddir=$(SYSTEM_SYSVRCND_PATH)
@@ -316,7 +316,10 @@ systemd_analyze_LDADD = \
        libsystemd-dbus.la
 
 dist_bashcompletion_DATA = \
-       shell-completion/systemd-bash-completion.sh
+       shell-completion/bash/journalctl \
+       shell-completion/bash/systemctl \
+       shell-completion/bash/systemd-coredumpctl \
+       shell-completion/bash/udevadm
 
 dist_tmpfiles_DATA = \
        tmpfiles.d/systemd.conf \
@@ -379,7 +382,12 @@ dist_systemunit_DATA = \
        units/systemd-ask-password-console.path \
        units/systemd-udevd-control.socket \
        units/systemd-udevd-kernel.socket \
-       units/system-update.target
+       units/system-update.target \
+       units/initrd-parse-etc.service \
+       units/initrd-cleanup.service \
+       units/initrd-switch-root.target \
+       units/initrd-udevadm-cleanup-db.service \
+       units/initrd-switch-root.service
 
 nodist_systemunit_DATA = \
        units/getty@.service \
@@ -2967,6 +2975,9 @@ hostnamectl_LDADD = \
 bin_PROGRAMS += \
        hostnamectl
 
+dist_bashcompletion_DATA += \
+       shell-completion/bash/hostnamectl
+
 endif
 
 polkitpolicy_in_files += \
@@ -3040,6 +3051,9 @@ localectl_LDADD = \
 bin_PROGRAMS += \
        localectl
 
+dist_bashcompletion_DATA += \
+       shell-completion/bash/localectl
+
 endif
 
 polkitpolicy_in_files += \
@@ -3106,6 +3120,9 @@ timedatectl_LDADD = \
 
 bin_PROGRAMS += \
        timedatectl
+
+dist_bashcompletion_DATA += \
+       shell-completion/bash/timedatectl
 endif
 
 polkitpolicy_in_files += \
@@ -3228,6 +3245,9 @@ loginctl_LDADD = \
 rootbin_PROGRAMS += \
        loginctl
 
+dist_bashcompletion_DATA += \
+       shell-completion/bash/loginctl
+
 systemd_inhibit_SOURCES = \
        src/login/inhibit.c
 
@@ -3398,7 +3418,9 @@ EXTRA_DIST += \
 # ------------------------------------------------------------------------------
 if HAVE_PYTHON_DEVEL
 pkgpyexec_LTLIBRARIES = \
-       _journal.la
+       _journal.la \
+       id128.la \
+       _reader.la
 
 _journal_la_SOURCES = \
        src/python-systemd/_journal.c
@@ -3418,11 +3440,75 @@ _journal_la_LIBADD = \
        $(PYTHON_LIBS) \
        libsystemd-journal.la
 
+id128_la_SOURCES = \
+       src/python-systemd/id128.c \
+       src/python-systemd/id128-constants.h \
+       src/python-systemd/pyutil.c \
+       src/python-systemd/pyutil.h
+
+id128_la_CFLAGS = \
+       $(AM_CFLAGS) \
+        -fvisibility=default \
+       $(PYTHON_CFLAGS) \
+       -I$(top_builddir)/src/python-systemd
+
+id128_la_LDFLAGS = \
+       $(AM_LDFLAGS) \
+       -shared \
+       -module \
+       -avoid-version
+
+id128_la_LIBADD = \
+       $(PYTHON_LIBS) \
+       libsystemd-id128.la
+
+_reader_la_SOURCES = \
+       src/python-systemd/_reader.c \
+       src/python-systemd/pyutil.c \
+       src/python-systemd/pyutil.h
+
+_reader_la_CFLAGS = \
+       $(AM_CFLAGS) \
+        -fvisibility=default \
+       $(PYTHON_CFLAGS)
+
+_reader_la_LDFLAGS = \
+       $(AM_LDFLAGS) \
+       -shared \
+       -module \
+       -avoid-version
+
+_reader_la_LIBADD = \
+       $(PYTHON_LIBS) \
+       libsystemd-journal.la \
+       libsystemd-id128.la \
+       libsystemd-shared.la
+
 dist_pkgpyexec_PYTHON = \
        src/python-systemd/journal.py \
        src/python-systemd/__init__.py
+
+src/python-systemd/id128-constants.h: src/systemd/sd-messages.h Makefile
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)$(SED) -n -r 's/,//g; s/#define (SD_MESSAGE_[A-Z0-9_]+)\s.*/add_id(m, "\1", \1) JOINER/p' <$< >$@
+
+BUILT_SOURCES += \
+       src/python-systemd/id128-constants.h
 endif
 
+PAPER = $(shell cat /etc/papersize 2>/dev/null || echo a4)
+SPHINXOPTS = -D latex_paper_size=$(PAPER)
+sphinx-%:
+       $(AM_V_at)test -n "$(SPHINX_BUILD)" || { echo " *** sphinx-build is not available"; exit 1; }
+       $(AM_V_GEN)PYTHONPATH=$(DESTDIR)$(pyexecdir) LD_LIBRARY_PATH=$(DESTDIR)$(libdir) $(SPHINX_BUILD) -b $* $(SPHINXOPTS) $(top_srcdir)/src/python-systemd/docs $(top_builddir)/man/python-systemd/
+       $(AM_V_at)echo Output has been generated in $(abs_top_builddir)/man/python-systemd/
+
+destdir-sphinx: all
+       dir="`mktemp -d /tmp/systemd-install.XXXXXX`" && \
+               $(MAKE) DESTDIR="$$dir" install && \
+               $(MAKE) DESTDIR="$$dir" sphinx-html && \
+               rm -rf "$$dir"
+
 # ------------------------------------------------------------------------------
 SED_PROCESS = \
        $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
@@ -3711,6 +3797,7 @@ DISTCHECK_CONFIGURE_FLAGS = \
        --with-dbussessionservicedir=$$dc_install_base/$(dbussessionservicedir) \
        --with-dbussystemservicedir=$$dc_install_base/$(dbussystemservicedir) \
        --with-dbusinterfacedir=$$dc_install_base/$(dbusinterfacedir) \
+       --with-bashcompletiondir=$$dc_install_base/$(bashcompletiondir) \
        --with-pamlibdir=$$dc_install_base/$(pamlibdir) \
        --with-rootprefix=$$dc_install_base \
        --disable-split-usr
@@ -3743,17 +3830,19 @@ upload: all distcheck
        scp systemd-$(VERSION).tar.xz fdo:/srv/www.freedesktop.org/www/software/systemd/
        scp man/*.html tango:public/systemd-man/
 
-doc-sync: all
+www_target = www.freedesktop.org:/srv/www.freedesktop.org/www/software/systemd
+doc-sync: all destdir-sphinx
        gtkdoc-rebase --html-dir=docs/libudev/html --online
-       rsync -av --delete docs/libudev/html/ --omit-dir-times www.freedesktop.org:/srv/www.freedesktop.org/www/software/systemd/libudev/
+       rsync -av --delete docs/libudev/html/ --omit-dir-times $(www_target)/libudev/
        gtkdoc-rebase --html-dir=docs/gudev/html --online
-       rsync -av --delete docs/gudev/html/ --omit-dir-times www.freedesktop.org:/srv/www.freedesktop.org/www/software/systemd/gudev/
-       rsync -av --delete-excluded --include="*.html" --exclude="*" --omit-dir-times man/ www.freedesktop.org:/srv/www.freedesktop.org/www/software/systemd/man/
+       rsync -av --delete docs/gudev/html/ --omit-dir-times $(www_target)/gudev/
+       rsync -av --delete-excluded --include="*.html" --exclude="*" --omit-dir-times man/ $(www_target)/man/
+       rsync -av --delete --omit-dir-times man/python-systemd/ $(www_target)/man/python-systemd/
 
 git-tag:
        git tag "v$(VERSION)" -m "systemd $(VERSION)"
 
 install-tree: all
        rm -rf $(abs_srcdir)/install-tree
-       make install DESTDIR=$(abs_srcdir)/install-tree
+       $(MAKE) install DESTDIR=$(abs_srcdir)/install-tree
        tree $(abs_srcdir)/install-tree