Create manpages and binaries including the version
authorBastian Blank <waldi@debian.org>
Mon, 26 Sep 2011 12:53:12 +0000 (13:53 +0100)
committerAurelien Jarno <aurel32@debian.org>
Fri, 2 Mar 2018 07:52:22 +0000 (07:52 +0000)
[bwh: Fix version insertion in perf man page cross-references and perf
man page title.  Install bash_completion script for perf with a
version-dependent name.  And do the same for trace.]

Gbp-Pq: Topic debian
Gbp-Pq: Name tools-perf-version.patch

tools/perf/Documentation/Makefile
tools/perf/Makefile.perf
tools/perf/util/Build
tools/perf/util/vdso.c

index 098cfb9ca8f0f73374f2ee32fdd6cb55ce32e55f..21f904e06cb47244a3e3db5fec5c05bea5826da6 100644 (file)
@@ -183,14 +183,16 @@ ifdef missing_tools
        $(error "You need to install $(missing_tools) for man pages")
 endif
 
-do-install-man: man
+do-install-man: $(addprefix install-man-,$(_DOC_MAN1))
+
+install-man-perf.1: $(OUTPUT)perf.1
+       $(INSTALL) -d -m 755 $(DESTDIR)$(man1dir)
+       sed -e 's/"PERF"/"PERF_$(VERSION)"/' -e 's/fBperf-/fBperf_$(VERSION)-/g' $^ > $(DESTDIR)$(man1dir)/perf_$(VERSION).1
+
+install-man-perf%.1: $(OUTPUT)perf%.1
        $(call QUIET_INSTALL, Documentation-man) \
                $(INSTALL) -d -m 755 $(DESTDIR)$(man1dir); \
-#              $(INSTALL) -d -m 755 $(DESTDIR)$(man5dir); \
-#              $(INSTALL) -d -m 755 $(DESTDIR)$(man7dir); \
-               $(INSTALL) -m 644 $(DOC_MAN1) $(DESTDIR)$(man1dir); \
-#              $(INSTALL) -m 644 $(DOC_MAN5) $(DESTDIR)$(man5dir); \
-#              $(INSTALL) -m 644 $(DOC_MAN7) $(DESTDIR)$(man7dir)
+               sed -e 's/"PERF\\-/"PERF_$(VERSION)\\-/' -e 's/fBperf-/fBperf_$(VERSION)-/g' $^ > $(DESTDIR)$(man1dir)/perf_$(VERSION)$*.1
 
 install-man: check-man-tools man
 
index 2b92ffef554b93f16ff266fbb1e38075f70da929..d6e626f8986ed35bc4e3c4387bb04d291c7f29be 100644 (file)
@@ -678,18 +678,18 @@ install-gtk:
 install-tools: all install-gtk
        $(call QUIET_INSTALL, binaries) \
                $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(bindir_SQ)'; \
-               $(INSTALL) $(OUTPUT)perf '$(DESTDIR_SQ)$(bindir_SQ)'; \
-               $(LN) '$(DESTDIR_SQ)$(bindir_SQ)/perf' '$(DESTDIR_SQ)$(bindir_SQ)/trace'
+               $(INSTALL) $(OUTPUT)perf '$(DESTDIR_SQ)$(bindir_SQ)/perf_$(VERSION)'; \
+               $(LN) '$(DESTDIR_SQ)$(bindir_SQ)/perf_$(VERSION)' '$(DESTDIR_SQ)$(bindir_SQ)/trace_$(VERSION)'
+       $(call QUIET_INSTALL, libexec) \
+               $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)'
 ifndef NO_PERF_READ_VDSO32
        $(call QUIET_INSTALL, perf-read-vdso32) \
-               $(INSTALL) $(OUTPUT)perf-read-vdso32 '$(DESTDIR_SQ)$(bindir_SQ)';
+               $(INSTALL) $(OUTPUT)perf-read-vdso32 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)';
 endif
 ifndef NO_PERF_READ_VDSOX32
        $(call QUIET_INSTALL, perf-read-vdsox32) \
-               $(INSTALL) $(OUTPUT)perf-read-vdsox32 '$(DESTDIR_SQ)$(bindir_SQ)';
+               $(INSTALL) $(OUTPUT)perf-read-vdsox32 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)';
 endif
-       $(call QUIET_INSTALL, libexec) \
-               $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)'
        $(call QUIET_INSTALL, perf-archive) \
                $(INSTALL) $(OUTPUT)perf-archive -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)'
        $(call QUIET_INSTALL, perf-with-kcore) \
@@ -717,7 +717,7 @@ ifndef NO_LIBPYTHON
 endif
        $(call QUIET_INSTALL, perf_completion-script) \
                $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(sysconfdir_SQ)/bash_completion.d'; \
-               $(INSTALL) perf-completion.sh '$(DESTDIR_SQ)$(sysconfdir_SQ)/bash_completion.d/perf'
+               $(INSTALL) perf-completion.sh '$(DESTDIR_SQ)$(sysconfdir_SQ)/bash_completion.d/perf_$(VERSION)'
        $(call QUIET_INSTALL, perf-tip) \
                $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(tip_instdir_SQ)'; \
                $(INSTALL) Documentation/tips.txt -t '$(DESTDIR_SQ)$(tip_instdir_SQ)'
@@ -738,7 +738,7 @@ install-python_ext:
 
 # 'make install-doc' should call 'make -C Documentation install'
 $(INSTALL_DOC_TARGETS):
-       $(QUIET_SUBDIR0)Documentation $(QUIET_SUBDIR1) $(@:-doc=)
+       $(QUIET_SUBDIR0)Documentation $(QUIET_SUBDIR1) $(@:-doc=) VERSION=$(VERSION)
 
 ### Cleaning rules
 
index 1dc67efad6340f7aef55f1727f00f7f20d8baa2c..5f693727d0c128c6872f7ce1ba426907d0c454df 100644 (file)
@@ -157,6 +157,7 @@ CFLAGS_rbtree.o        += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET
 CFLAGS_libstring.o     += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))"
 CFLAGS_hweight.o       += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))"
 CFLAGS_parse-events.o  += -Wno-redundant-decls
+CFLAGS_vdso.o          += -DPERFEXECDIR='"$(perfexec_instdir_SQ)"'
 
 $(OUTPUT)util/kallsyms.o: ../lib/symbol/kallsyms.c FORCE
        $(call rule_mkdir)
index 7bdcad484225f13ed96ff07eb355a45acb997ac5..d2765382933ff0c004ecf746041902f26af8a178 100644 (file)
@@ -51,12 +51,12 @@ static struct vdso_info *vdso_info__new(void)
                .vdso32  = {
                        .temp_file_name = VDSO__TEMP_FILE_NAME,
                        .dso_name = DSO__NAME_VDSO32,
-                       .read_prog = "perf-read-vdso32",
+                       .read_prog = PERFEXECDIR "/perf-read-vdso32",
                },
                .vdsox32  = {
                        .temp_file_name = VDSO__TEMP_FILE_NAME,
                        .dso_name = DSO__NAME_VDSOX32,
-                       .read_prog = "perf-read-vdsox32",
+                       .read_prog = PERFEXECDIR "/perf-read-vdsox32",
                },
 #endif
        };