drbd-utils: Add support for building without manuals
Subsystems (2)
PATCH 1/1 drbd-utils: Add support for building without manuals
When building DRBD for installation on e.g. an appliance no manuals are needed. Hence add an option to the spec file to build the drbd-utils RPM without manuals.
Signed-off-by Bart Van Assche <[email protected]>
--- Makefile.in | 13 +++++++++---- drbd.spec.in | 19 ++++++++++++++++++- 2 files changed, 27 insertions(+), 5 deletions(-)
Makefile.in +9 -4
@@ -45,7 +45,9 @@ WITH_84_SUPPORT = @WITH_84_SUPPORT@ # and not in e.g. dash. I'm too lazy to fix it to be compatible. SHELL=/bin/bash -SUBDIRS = user/shared user/v9 user/v84 user/v83 scripts documentation/v83 documentation/v84 documentation/v9 +TOOLS_DIRS = user/shared user/v9 user/v84 user/v83 scripts +DOC_DIRS = documentation/v83 documentation/v84 documentation/v9 +SUBDIRS = $(TOOLS_DIRS) $(DOC_DIRS) REL_VERSION := $(shell $(SED) -ne '/^AC_INIT/{s/^[^,]*, *\([^,]*\) *,.*/\1/;p;q}' configure.ac) ifdef FORCE
@@ -69,7 +71,7 @@ all: check-submods configure tools .PHONY: all tools doc tools: - @ set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i ; done + @ set -e; for i in $(TOOLS_DIRS); do $(MAKE) -C $$i ; done @ echo -e "\n\tUserland tools build was successful." doc:
@@ -105,10 +107,13 @@ ifeq ($(WITH_84_SUPPORT),yes) $(MAKE) -C documentation/v84 doc-clean endif -install: install-tools +install: install-tools install-doc install-tools: - @ set -e; for i in $(patsubst drbd,,$(SUBDIRS)); do $(MAKE) -C $$i install; done + @ set -e; for i in $(patsubst drbd,,$(TOOLS_DIRS)); do $(MAKE) -C $$i install; done + +install-doc: + @ set -e; for i in $(patsubst drbd,,$(DOC_DIRS)); do $(MAKE) -C $$i install; done .NOTPARALLEL clean: @ set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i clean; done
drbd.spec.in +18 -1
@@ -23,6 +23,7 @@ # Conditionals # Invoke "rpmbuild --without <feature>" or "rpmbuild --with <feature>" # to disable or enable specific features +%bcond_without manual %bcond_without udev %bcond_without pacemaker %bcond_with rgmanager
@@ -181,11 +182,14 @@ This packages includes the DRBD administration tools. %config(noreplace) %{_sysconfdir}/drbd.conf %dir %{_sysconfdir}/drbd.d %config(noreplace) %{_sysconfdir}/drbd.d/global_common.conf +%if %{without manual} +%else %{_mandir}/man8/drbd-* %{_mandir}/man8/drbdsetup-* %{_mandir}/man8/drbdadm-* %{_mandir}/man5/drbd.conf-* %{_mandir}/man8/drbdmeta-* +%endif %doc scripts/drbd.conf.example %doc COPYING %doc ChangeLog
@@ -310,7 +314,10 @@ resource manager (in v1 compatibility mode). %{_sysconfdir}/ha.d/resource.d/drbdupper %defattr(-,root,root,-) +%if %{without manual} +%else %{_mandir}/man8/drbddisk-* +%endif %endif # with heartbeat %if %{with bashcompletion}
@@ -352,11 +359,18 @@ autoconf %{?_tmpfilesdir:--with-tmpfilesdir=%{_tmpfilesdir}} \ --with-initscripttype=%{initscripttype} make %{?_smp_mflags} +%if %{without manual} +%else make doc +%endif %install rm -rf %{buildroot} -make install DESTDIR=%{buildroot} CREATE_MAN_LINK=no +make install-tools DESTDIR=%{buildroot} CREATE_MAN_LINK=no +%if %{without manual} +%else +make install-doc DESTDIR=%{buildroot} CREATE_MAN_LINK=no +%endif %if %{with sbinsymlinks} # Don't do this if you are already on a /sbin -=> /usr/sbin distro
@@ -380,10 +394,13 @@ rm -rf %{buildroot} %else chkconfig --add drbd %endif +%if %{without manual} +%else for f in drbd drbdadm drbdmeta drbdsetup; do ln -sf $f-8.4.8.gz %{_mandir}/man8/$f.8.gz done ln -sf drbd.conf-8.4.5.gz %{_mandir}/man5/drbd.conf.5.gz +%endif %if %{without udev} for i in `seq 0 15` ; do test -b /dev/drbd$i || mknod -m 0660 /dev/drbd$i b 147 $i;
Signature · 1 line
2.1.4
Lars Ellenberg
maintainerQuoted 3 lines · Bart Van Assche
When building DRBD for installation on e.g. an appliance no manuals are needed. Hence add an option to the spec file to build the drbd-utils RPM without manuals.
Ok.
Thank you,
Lars