X-Git-Url: https://code.grnet.gr/git/ganeti-local/blobdiff_plain/667e99592e65aeb696eceb29627ceb1b76ad1288..a25f44a4edb69accf1f1914baeed9c80cd8d3706:/Makefile.am diff --git a/Makefile.am b/Makefile.am index a4ae5ee..87d51c2 100644 --- a/Makefile.am +++ b/Makefile.am @@ -42,7 +42,7 @@ SHELL_ENV_INIT = autotools/shell-env-init # starting as of Ganeti 2.10, all files are stored in a single directory, # with only symbolic links added at other places. -versiondir = $(prefix)/opt/ganeti-$(VERSION) +versiondir = $(libdir)/ganeti-$(VERSION) # Note: these are automake-specific variables, and must be named after # the directory + 'dir' suffix @@ -70,6 +70,17 @@ iallocatorsdir = $(pkglibdir)/iallocators pytoolsdir = $(pkgpythondir)/tools docdir = $(versiondir)$(datadir)/doc/$(PACKAGE) +SYMLINK_TARGET_DIRS = \ + $(pythondir) \ + $(libdir)/ganeti/iallocators \ + $(exec_prefix)/bin \ + $(exec_prefix)/sbin \ + $(datarootdir)/man/man1 \ + $(datarootdir)/man/man7 \ + $(datarootdir)/man/man8 +SYMLINK_DIRS = \ + $(pythondir)/ganeti \ + $(libdir)/ganeti/tools # Delete output file if an error occurred while building it .DELETE_ON_ERROR: @@ -936,6 +947,11 @@ nodist_sbin_SCRIPTS = \ $(PYTHON_BOOTSTRAP_SBIN) \ daemons/ganeti-cleaner +# strip path prefixes off the sbin scripts +all_sbin_scripts = \ + $(patsubst tools/%,%,$(patsubst daemons/%,%,$(patsubst scripts/%,%,\ + $(patsubst src/%,%,$(dist_sbin_SCRIPTS) $(nodist_sbin_SCRIPTS))))) + if ENABLE_CONFD src/ganeti-confd: src/hconfd cp -f $< $@ @@ -995,6 +1011,11 @@ myexeclib_SCRIPTS = \ $(pkglib_python_scripts) \ $(HS_MYEXECLIB_PROGS) +# strip path prefixes off the sbin scripts +all_myexeclib_scripts = \ + $(patsubst tools/%,%,$(patsubst daemons/%,%,\ + $(patsubst src/%,%,$(myexeclib_SCRIPTS)))) + nodist_myexeclib_SCRIPTS = \ $(nodist_pkglib_python_scripts) @@ -1101,6 +1122,10 @@ maninput = \ $(patsubst %.html,%.html.in,$(manhtml)) \ $(mangen) +manfullpath = $(patsubst man/%.1,man1/%.1,\ + $(patsubst man/%.7,man7/%.7,\ + $(patsubst man/%.8,man8/%.8,$(man_MANS)))) + TEST_FILES = \ test/autotools/autotools-check-news.test \ test/data/htools/clean-nonzero-score.data \ @@ -1740,8 +1765,8 @@ $(REPLACE_VARS_SED): $(SHELL_ENV_INIT) Makefile stamp-directories { echo 's#@''PREFIX@#$(prefix)#g'; \ echo 's#@''SYSCONFDIR@#$(sysconfdir)#g'; \ echo 's#@''LOCALSTATEDIR@#$(localstatedir)#g'; \ - echo 's#@''BINDIR@#$(bindir)#g'; \ - echo 's#@''SBINDIR@#$(sbindir)#g'; \ + echo 's#@''BINDIR@#$(execprefix)/bin#g'; \ + echo 's#@''SBINDIR@#$(execprefix)/sbin#g'; \ echo 's#@''LIBDIR@#$(libdir)#g'; \ echo 's#@''GANETI_VERSION@#$(PACKAGE_VERSION)#g'; \ echo 's#@''CUSTOM_XEN_BOOTLOADER@#$(XEN_BOOTLOADER)#g'; \ @@ -1750,7 +1775,7 @@ $(REPLACE_VARS_SED): $(SHELL_ENV_INIT) Makefile stamp-directories echo 's#@''CUSTOM_IALLOCATOR_SEARCH_PATH@#$(IALLOCATOR_SEARCH_PATH)#g'; \ echo 's#@''CUSTOM_EXPORT_DIR@#$(EXPORT_DIR)#g'; \ echo 's#@''RPL_SSH_INITD_SCRIPT@#$(SSH_INITD_SCRIPT)#g'; \ - echo 's#@''PKGLIBDIR@#$(pkglibdir)#g'; \ + echo 's#@''PKGLIBDIR@#$(libdir)/ganeti#g'; \ echo 's#@''GNTMASTERUSER@#$(MASTERD_USER)#g'; \ echo 's#@''GNTRAPIUSER@#$(RAPI_USER)#g'; \ echo 's#@''GNTCONFDUSER@#$(CONFD_USER)#g'; \ @@ -2066,6 +2091,29 @@ install-exec-local: @mkdir_p@ "$(DESTDIR)${localstatedir}/lib/ganeti" \ "$(DESTDIR)${localstatedir}/log/ganeti" \ "$(DESTDIR)${localstatedir}/run/ganeti" +if INSTALL_SYMLINKS + for dir in $(SYMLINK_TARGET_DIRS); do \ + @mkdir_p@ $(DESTDIR)$$dir; \ + done + for prog in $(HS_HTOOLS_PROGS); do \ + $(LN_S) $(bindir)/$$prog $(DESTDIR)$(exec_prefix)/bin/$$prog; \ + done + $(LN_S) $(bindir)/htools $(DESTDIR)$(libdir)/ganeti/iallocators/hail + for prog in $(all_sbin_scripts); do \ + $(LN_S) $(sbindir)/$$prog $(DESTDIR)$(exec_prefix)/sbin/$$prog; \ + done + for link in $(SYMLINK_DIRS); do \ + $(LN_S) $(versiondir)$$link $(DESTDIR)$$link; \ + done + for prog in $(all_myexeclib_scripts); do \ + $(LN_S) $(pkglibdir)/$$prog $(DESTDIR)$(libdir)/ganeti/$$prog; \ + done + if ! test -n '$(ENABLE_MANPAGES)'; then \ + for man in $(manfullpath); do \ + $(LN_S) $(versiondir)$(datarootdir)/man/$$man $(DESTDIR)$(datarootdir)/man/$$man; \ + done; \ + fi +endif .PHONY: apidoc if WANT_HSAPIDOC