Rebase to 0.7.2

This commit is contained in:
Petr Machata 2012-12-10 23:09:52 +01:00
parent 85e550411c
commit 5bfaa48406
5 changed files with 12 additions and 234 deletions

1
.gitignore vendored
View File

@ -2,3 +2,4 @@ ltrace-0.5-svn45.tar.gz
ltrace-*/
/ltrace-0.6.0.tar.bz2
/ltrace-0.7.0.tar.bz2
/ltrace-0.7.2.tar.bz2

View File

@ -1,150 +0,0 @@
diff -urp ltrace-0.7.0/Makefile.am ltrace-0.7.0/Makefile.am
--- ltrace-0.7.0/Makefile.am 2012-11-10 13:43:55.000000000 +0100
+++ ltrace-0.7.0/Makefile.am 2012-11-10 14:57:39.141288149 +0100
@@ -116,7 +116,8 @@ noinst_HEADERS = \
lens_default.h \
lens_enum.h
-dist_man1_MANS = ltrace.1 ltrace.conf.5
+dist_man1_MANS = ltrace.1
+dist_man5_MANS = ltrace.conf.5
dist_doc_DATA = COPYING CREDITS INSTALL README TODO
diff -urp ltrace-0.7.0/Makefile.in ltrace-0.7.0/Makefile.in
--- ltrace-0.7.0/Makefile.in 2012-11-10 13:46:03.000000000 +0100
+++ ltrace-0.7.0/Makefile.in 2012-11-10 15:00:05.854225673 +0100
@@ -60,8 +60,8 @@ host_triplet = @host@
bin_PROGRAMS = ltrace$(EXEEXT)
subdir = .
DIST_COMMON = README $(am__configure_deps) $(dist_doc_DATA) \
- $(dist_man1_MANS) $(dist_sysconf_DATA) $(noinst_HEADERS) \
- $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(dist_man1_MANS) $(dist_man5_MANS) $(dist_sysconf_DATA) \
+ $(noinst_HEADERS) $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
$(srcdir)/config.h.in $(top_srcdir)/configure COPYING INSTALL \
NEWS TODO config/autoconf/config.guess \
config/autoconf/config.sub config/autoconf/depcomp \
@@ -96,7 +96,8 @@ am_libltrace_la_OBJECTS = breakpoints.lo
lens_default.lo lens_enum.lo
libltrace_la_OBJECTS = $(am_libltrace_la_OBJECTS)
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" \
- "$(DESTDIR)$(docdir)" "$(DESTDIR)$(sysconfdir)"
+ "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(docdir)" \
+ "$(DESTDIR)$(sysconfdir)"
PROGRAMS = $(bin_PROGRAMS)
am_ltrace_OBJECTS = main.$(OBJEXT)
ltrace_OBJECTS = $(am_ltrace_OBJECTS)
@@ -145,8 +146,9 @@ am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
man1dir = $(mandir)/man1
+man5dir = $(mandir)/man5
NROFF = nroff
-MANS = $(dist_man1_MANS)
+MANS = $(dist_man1_MANS) $(dist_man5_MANS)
DATA = $(dist_doc_DATA) $(dist_sysconf_DATA)
HEADERS = $(noinst_HEADERS)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
@@ -410,7 +412,8 @@ noinst_HEADERS = \
lens_default.h \
lens_enum.h
-dist_man1_MANS = ltrace.1 ltrace.conf.5
+dist_man1_MANS = ltrace.1
+dist_man5_MANS = ltrace.conf.5
dist_doc_DATA = COPYING CREDITS INSTALL README TODO
dist_sysconf_DATA = \
etc/ltrace.conf
@@ -658,6 +661,40 @@ uninstall-man1:
test -z "$$files" || { \
echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(man1dir)" && rm -f $$files; }
+install-man5: $(dist_man5_MANS)
+ @$(NORMAL_INSTALL)
+ test -z "$(man5dir)" || $(MKDIR_P) "$(DESTDIR)$(man5dir)"
+ @list='$(dist_man5_MANS)'; test -n "$(man5dir)" || exit 0; \
+ { for i in $$list; do echo "$$i"; done; \
+ } | while read p; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; echo "$$p"; \
+ done | \
+ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
+ sed 'N;N;s,\n, ,g' | { \
+ list=; while read file base inst; do \
+ if test "$$base" = "$$inst"; then list="$$list $$file"; else \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man5dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man5dir)/$$inst" || exit $$?; \
+ fi; \
+ done; \
+ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
+ while read files; do \
+ test -z "$$files" || { \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man5dir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(man5dir)" || exit $$?; }; \
+ done; }
+
+uninstall-man5:
+ @$(NORMAL_UNINSTALL)
+ @list='$(dist_man5_MANS)'; test -n "$(man5dir)" || exit 0; \
+ files=`{ for i in $$list; do echo "$$i"; done; \
+ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+ test -z "$$files" || { \
+ echo " ( cd '$(DESTDIR)$(man5dir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(man5dir)" && rm -f $$files; }
install-dist_docDATA: $(dist_doc_DATA)
@$(NORMAL_INSTALL)
test -z "$(docdir)" || $(MKDIR_P) "$(DESTDIR)$(docdir)"
@@ -1028,7 +1065,7 @@ all-am: Makefile $(LTLIBRARIES) $(PROGRA
config.h
installdirs: installdirs-recursive
installdirs-am:
- for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(sysconfdir)"; do \
+ for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(sysconfdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-recursive
@@ -1097,7 +1134,7 @@ install-info: install-info-recursive
install-info-am:
-install-man: install-man1
+install-man: install-man1 install-man5
install-pdf: install-pdf-recursive
@@ -1133,7 +1170,7 @@ ps-am:
uninstall-am: uninstall-binPROGRAMS uninstall-dist_docDATA \
uninstall-dist_sysconfDATA uninstall-man
-uninstall-man: uninstall-man1
+uninstall-man: uninstall-man1 uninstall-man5
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
ctags-recursive install-am install-strip tags-recursive
@@ -1150,14 +1187,16 @@ uninstall-man: uninstall-man1
install-data-am install-dist_docDATA install-dist_sysconfDATA \
install-dvi install-dvi-am install-exec install-exec-am \
install-html install-html-am install-info install-info-am \
- install-man install-man1 install-pdf install-pdf-am install-ps \
- install-ps-am install-strip installcheck installcheck-am \
- installdirs installdirs-am maintainer-clean \
- maintainer-clean-generic maintainer-clean-local mostlyclean \
- mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- pdf pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
+ install-man install-man1 install-man5 install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs installdirs-am \
+ maintainer-clean maintainer-clean-generic \
+ maintainer-clean-local mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags tags-recursive uninstall uninstall-am \
uninstall-binPROGRAMS uninstall-dist_docDATA \
- uninstall-dist_sysconfDATA uninstall-man uninstall-man1
+ uninstall-dist_sysconfDATA uninstall-man uninstall-man1 \
+ uninstall-man5
maintainer-clean-local:

View File

@ -1,70 +0,0 @@
diff -urp ltrace-0.7.0/sysdeps/linux-gnu/ppc/Makefile.am ltrace-0.7.0/sysdeps/linux-gnu/ppc/Makefile.am
--- ltrace-0.7.0/sysdeps/linux-gnu/ppc/Makefile.am 2012-11-09 23:45:23.192038441 +0100
+++ ltrace-0.7.0/sysdeps/linux-gnu/ppc/Makefile.am 2012-11-10 13:43:55.000000000 +0100
@@ -27,6 +27,7 @@ ___libcpu_la_SOURCES = \
noinst_HEADERS = \
arch.h \
+ insn.h \
ptrace.h \
signalent.h \
syscallent.h
diff -urp ltrace-0.7.0/sysdeps/linux-gnu/ppc/Makefile.in ltrace-0.7.0/sysdeps/linux-gnu/ppc/Makefile.in
--- ltrace-0.7.0/sysdeps/linux-gnu/ppc/Makefile.in 2012-11-10 14:41:22.453856321 +0100
+++ ltrace-0.7.0/sysdeps/linux-gnu/ppc/Makefile.in 2012-11-10 13:46:03.000000000 +0100
@@ -232,6 +232,7 @@ ___libcpu_la_SOURCES = \
noinst_HEADERS = \
arch.h \
+ insn.h \
ptrace.h \
signalent.h \
syscallent.h
--- ltrace-0.7.0/sysdeps/linux-gnu/ppc/insn.h 1970-01-01 01:00:00.000000000 +0100
+++ ltrace-0.7.0/sysdeps/linux-gnu/ppc/insn.h 2012-11-07 17:09:31.784520698 +0100
@@ -0,0 +1,45 @@
+/*
+ * This file is part of ltrace.
+ * Copyright (C) 2012 Petr Machata, Red Hat Inc.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA
+ */
+
+/* Instruction masks used during single-stepping of atomic
+ * sequences. This was lifted from GDB. */
+#define LWARX_MASK 0xfc0007fe
+#define LWARX_INSTRUCTION 0x7c000028
+#define LDARX_INSTRUCTION 0x7c0000A8
+#define STWCX_MASK 0xfc0007ff
+#define STWCX_INSTRUCTION 0x7c00012d
+#define STDCX_INSTRUCTION 0x7c0001ad
+#define BRANCH_MASK 0xfc000000
+#define BC_MASK 0xfc000000
+#define BC_INSN 0x40000000
+#define B_INSN 0x48000000
+
+static inline arch_addr_t
+ppc_branch_dest(arch_addr_t addr, uint32_t insn)
+{
+ int immediate = ((insn & 0xfffc) ^ 0x8000) - 0x8000;
+ int absolute = insn & 2;
+
+ /* XXX drop the following double casts. */
+ if (absolute)
+ return (arch_addr_t)(uintptr_t)immediate;
+ else
+ return addr + (uintptr_t)immediate;
+}

View File

@ -1,6 +1,6 @@
Summary: Tracks runtime library calls from dynamically linked executables
Name: ltrace
Version: 0.7.0
Version: 0.7.2
Release: 1%{?dist}
URL: http://ltrace.alioth.debian.org/
License: GPLv2+
@ -9,12 +9,10 @@ Group: Development/Debuggers
BuildRequires: elfutils-libelf-devel dejagnu
BuildRequires: libselinux-devel
Source: http://alioth.debian.org/frs/download.php/3822/%{name}-%{version}.tar.bz2
# Upstream ccbdb91f
Patch0: ltrace-0.7.0-ppc-insn.h.patch
# Upstream 808d64b9
Patch1: ltrace-0.7.0-man5.patch
# Note: this URL needs to be updated for each release, as the file
# number changes for each file. Full list of released files is at:
# https://alioth.debian.org/frs/?group_id=30892
Source: http://alioth.debian.org/frs/download.php/3848/ltrace-0.7.2.tar.bz2
%description
Ltrace is a debugging program which runs a specified command until the
@ -28,14 +26,9 @@ execution of processes.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%build
# This ugly hack is necessary to build and link files for correct
# architecture. It makes a difference on ppc.
export CC="gcc`echo $RPM_OPT_FLAGS | sed -n 's/^.*\(-m[36][124]\).*$/ \1/p'` -D_LARGEFILE64_SOURCE"
%configure CC="$CC"
%configure
make %{?_smp_mflags}
%install
@ -57,6 +50,10 @@ echo ====================TESTING END=====================
%config(noreplace) %{_sysconfdir}/ltrace.conf
%changelog
* Mon Dec 10 2012 Petr Machata <pmachata@redhat.com> - 0.7.2-1
- Upstream 0.7.2
- Drop all the patches
* Sat Nov 10 2012 Petr Machata <pmachata@redhat.com> - 0.7.0-1
- Upstream 0.7.0
- Drop all the patches

View File

@ -1 +1 @@
68ad1cdf594fc6819e55519f36092916 ltrace-0.7.0.tar.bz2
f5d9282b471cdf9fbafd916ec5be0717 ltrace-0.7.2.tar.bz2