Compare commits

...
This repository has been archived on 2026-01-16. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.

21 commits

Author SHA1 Message Date
Michael Schwendt
396a818d6e No upstream development or maintenance at all since several years, not
even merging patches.
2011-03-16 10:24:29 +01:00
Dennis Gilmore
00f317e305 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild 2011-02-07 18:08:28 -06:00
Fedora Release Engineering
2a75f2da35 dist-git conversion 2010-07-28 09:32:17 +00:00
Bill Nottingham
5e65b45175 Fix typo that causes a failure to update the common directory. (releng
#2781)
2009-11-25 22:38:07 +00:00
Michael Schwendt
d3884dfbf6 remove obsolete patch 2009-07-24 17:02:51 +00:00
Jesse Keating
fa7259f5c8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild 2009-07-24 16:30:29 +00:00
Michael Schwendt
d2deeff5b1 - Fedora > 10: conditional BR glibc-static as needed for test-suite 2009-02-24 09:03:36 +00:00
Jesse Keating
a0d9ba9a4b - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild 2009-02-23 23:54:43 +00:00
Michael Schwendt
0d8ded960c - Rename Patch to Patch0 - should fix build in Rawhide. 2008-08-29 09:16:36 +00:00
Michael Schwendt
819eb883c9 shebang to perl not sh 2008-08-06 20:45:31 +00:00
Michael Schwendt
755eed8a46 - Fix shebang to make rpmlint happy. 2008-08-06 20:33:26 +00:00
Michael Schwendt
9e76f85c0a automated rebuild per request on fedora-devel-list 2008-02-08 21:43:00 +00:00
Michael Schwendt
75b53bccbf more linker names 2008-01-29 20:23:36 +00:00
Michael Schwendt
785005abaf bump and release 2008-01-29 19:53:00 +00:00
Michael Schwendt
a814ce96df *** empty log message *** 2008-01-29 19:04:04 +00:00
Michael Schwendt
a823ca9e5a also look for ld64.so 2008-01-29 17:55:00 +00:00
Michael Schwendt
30ea27685f also look for ld64.so 2008-01-29 17:52:10 +00:00
Michael Schwendt
ef7d2272e7 examine test results on ppc64 2008-01-29 17:19:43 +00:00
Michael Schwendt
ec1f791eec examine test results on ppc64 2008-01-29 16:36:12 +00:00
Michael Schwendt
9f760ecaec examine test results on ppc64 2008-01-29 15:47:19 +00:00
Michael Schwendt
6ab822caba - Remove unbound_match patch. Not needed in F-9 devel.
- Move fortify-source into separate dbfile in docdir.
2008-01-29 15:22:59 +00:00
12 changed files with 2 additions and 419 deletions

View file

@ -1 +0,0 @@
abicheck-1.2.tar.gz

View file

@ -1,21 +0,0 @@
# Makefile for source rpm: abicheck
# $Id: Makefile,v 1.1 2004/11/08 04:00:14 cvsextras Exp $
NAME := abicheck
SPECFILE = $(firstword $(wildcard *.spec))
define find-makefile-common
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
endef
MAKEFILE_COMMON := $(shell $(find-makefile-common))
ifeq ($(MAKEFILE_COMMON),)
# attept a checkout
define checkout-makefile-common
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
endef
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
endif
include $(MAKEFILE_COMMON)

View file

@ -1,12 +0,0 @@
diff -Nur abicheck-1.2-orig/abicheck.pl abicheck-1.2/abicheck.pl
--- abicheck-1.2-orig/abicheck.pl 2003-08-26 21:57:51.000000000 +0200
+++ abicheck-1.2/abicheck.pl 2005-04-11 12:59:04.000000000 +0200
@@ -1584,7 +1584,7 @@
$ld_debug_match = q/^\s*\d+:/;
$lddstub_match = '';
$binding_match =
- q/binding file (.*) to (.*): .*symbol `(\w+)'(.*)$/;
+ q/binding file (.*) \[.*\] to (.*) \[.*\]: .*symbol `(\w+)'(.*)$/;
$filter_match =
q/file=(.*); filtered by (.*)$/; # XXX not checked
$unbound_match =

View file

@ -1,12 +0,0 @@
diff -Nur abicheck-1.2-orig/abicheck.pl abicheck-1.2/abicheck.pl
--- abicheck-1.2-orig/abicheck.pl 2003-08-26 21:57:51.000000000 +0200
+++ abicheck-1.2/abicheck.pl 2004-12-13 13:00:40.321321296 +0100
@@ -1592,7 +1592,7 @@
$dtneeded_match =
q/^\s*(\S+)\s+=>\s+(not found|\S+)/;
$file_match =
- q/^(\s*\d+:).*needed by (.*)$/;
+ q/^(\s*\d+:).*needed by (.*) (\[\d+\])*$/;
#
# n.b. there is a PID mismatch in the GNU linker output if
# we watch for the more sensible:

View file

@ -1,86 +0,0 @@
diff -Nur abicheck-1.2-orig/abicheck.pl abicheck-1.2/abicheck.pl
--- abicheck-1.2-orig/abicheck.pl 2003-08-26 21:57:51.000000000 +0200
+++ abicheck-1.2/abicheck.pl 2007-10-05 14:03:36.000000000 +0200
@@ -3538,5 +3538,82 @@
libnsl.so.1:readColdStartFile
libnsl.so.1:writeColdStartFile
);
+
+ #
+ # These are _FORTIFY_SOURCE symbols.
+ #
+ push(@{$public}, qw(
+ libc.so.6:__chk_fail
+ libc.so.6:__confstr_chk
+ libc.so.6:__fgets_chk
+ libc.so.6:__fgets_unlocked_chk
+ libc.so.6:__fgetws_chk
+ libc.so.6:__fgetws_unlocked_chk
+ libc.so.6:__fprintf_chk
+ libc.so.6:__fread_chk
+ libc.so.6:__fread_unlocked_chk
+ libc.so.6:__fwprintf_chk
+ libc.so.6:__getcwd_chk
+ libc.so.6:__getdomainname_chk
+ libc.so.6:__getgroups_chk
+ libc.so.6:__gethostname_chk
+ libc.so.6:__getlogin_r_chk
+ libc.so.6:__gets_chk
+ libc.so.6:__getwd_chk
+ libc.so.6:__mbsnrtowcs_chk
+ libc.so.6:__mbsrtowcs_chk
+ libc.so.6:__mbstowcs_chk
+ libc.so.6:__memcpy_chk
+ libc.so.6:__memmove_chk
+ libc.so.6:__mempcpy_chk
+ libc.so.6:__memset_chk
+ libc.so.6:__pread64_chk
+ libc.so.6:__pread_chk
+ libc.so.6:__printf_chk
+ libc.so.6:__ptsname_r_chk
+ libc.so.6:__read_chk
+ libc.so.6:__readlinkat_chk
+ libc.so.6:__readlink_chk
+ libc.so.6:__realpath_chk
+ libc.so.6:__recv_chk
+ libc.so.6:__recvfrom_chk
+ libc.so.6:__snprintf_chk
+ libc.so.6:__sprintf_chk
+ libc.so.6:__stack_chk_fail
+ libc.so.6:__stpcpy_chk
+ libc.so.6:__stpncpy_chk
+ libc.so.6:__strcat_chk
+ libc.so.6:__strcpy_chk
+ libc.so.6:__strncat_chk
+ libc.so.6:__strncpy_chk
+ libc.so.6:__swprintf_chk
+ libc.so.6:__syslog_chk
+ libc.so.6:__ttyname_r_chk
+ libc.so.6:__vfprintf_chk
+ libc.so.6:__vfwprintf_chk
+ libc.so.6:__vprintf_chk
+ libc.so.6:__vsnprintf_chk
+ libc.so.6:__vsprintf_chk
+ libc.so.6:__vswprintf_chk
+ libc.so.6:__vsyslog_chk
+ libc.so.6:__vwprintf_chk
+ libc.so.6:__wcpcpy_chk
+ libc.so.6:__wcpncpy_chk
+ libc.so.6:__wcrtomb_chk
+ libc.so.6:__wcscat_chk
+ libc.so.6:__wcscpy_chk
+ libc.so.6:__wcsncat_chk
+ libc.so.6:__wcsncpy_chk
+ libc.so.6:__wcsnrtombs_chk
+ libc.so.6:__wcsrtombs_chk
+ libc.so.6:__wcstombs_chk
+ libc.so.6:__wctomb_chk
+ libc.so.6:__wmemcpy_chk
+ libc.so.6:__wmemmove_chk
+ libc.so.6:__wmempcpy_chk
+ libc.so.6:__wmemset_chk
+ libc.so.6:__wprintf_chk
+ )
+ );
}
}

View file

@ -1,53 +0,0 @@
diff -Nur abicheck-1.2-orig/abicheck.pl abicheck-1.2/abicheck.pl
--- abicheck-1.2-orig/abicheck.pl 2003-08-26 21:57:51.000000000 +0200
+++ abicheck-1.2/abicheck.pl 2005-08-16 22:49:06.000000000 +0200
@@ -496,7 +496,7 @@
if ( ! $pid ) {
# child here, go run ldd -r with debug env:
- exec_ldd($file);
+ exec_ldd($file,$file0);
exit 1;
}
@@ -1241,7 +1241,7 @@
# will read command output.
#
sub exec_ldd {
- my ($file) = @_;
+ my ($file,$file0) = @_;
open(STDERR, ">&STDOUT");
# need to close stdin on linux for some suid programs e.g. chsh (!)
@@ -1251,10 +1251,27 @@
$ENV{LD_LIBRARY_PATH} = $ld_path;
}
- # currently, no difference between OSs
- $ENV{LD_DEBUG} = "files,bindings";
- exec 'ldd', '-r', $file;
- exit 1; # exec failed
+ my $ldlinux = '';
+ open(DLFIND,"ldd $file0 |") or die "open: ldd: $!";
+ while (<DLFIND>) {
+ /(ld(-linux)*.so.\d+)/ and /(\S+)/ and $ldlinux = $1;
+ }
+ close(DLFIND);
+ if ( $ldlinux =~ /^$/ ) {
+ # currently, no difference between OSs
+ $ENV{LD_DEBUG} = "files,bindings";
+ exec 'ldd', '-r', $file;
+ exit 1; # exec failed
+ }
+ else {
+ $ENV{LD_DEBUG} = "files,bindings";
+ $ENV{LD_VERBOSE} = "yes";
+ $ENV{LD_WARN} = "yes";
+ $ENV{LD_BIND_NOW} = "yes";
+ $ENV{LD_TRACE_LOADED_OBJECTS} = "1";
+ exec $ldlinux, $file0;
+ exit 1; # exec failed
+ }
}
#

View file

@ -1,23 +0,0 @@
diff -Nur abicheck-1.2-orig/abicheck.pl abicheck-1.2/abicheck.pl
--- abicheck-1.2-orig/abicheck.pl 2003-08-26 21:57:51.000000000 +0200
+++ abicheck-1.2/abicheck.pl 2005-08-15 21:10:15.000000000 +0200
@@ -3498,6 +3498,19 @@
libc.so.6:__ctype_b_loc
libc.so.6:__ctype_tolower_loc
libc.so.6:__ctype_toupper_loc
+
+ libgcc_s.so.1:__divdi3
+ libgcc_s.so.1:__register_frame
+ libgcc_s.so.1:__frame_state_for
+ libgcc_s.so.1:__umoddi3
+ libgcc_s.so.1:__udivdi3
+ libgcc_s.so.1:__register_frame_table
+ libgcc_s.so.1:__deregister_frame_info
+ libgcc_s.so.1:__deregister_frame
+ libgcc_s.so.1:__cxa_finalize
+ libgcc_s.so.1:__moddi3
+ libgcc_s.so.1:__register_frame_info_table
+ libgcc_s.so.1:__register_frame_info
);
@{$private} = qw(

View file

@ -1,70 +0,0 @@
diff -Nur abicheck-1.2-orig/test/Makefile abicheck-1.2/test/Makefile
--- abicheck-1.2-orig/test/Makefile 2003-08-26 21:57:51.000000000 +0200
+++ abicheck-1.2/test/Makefile 2004-12-13 13:01:19.827315472 +0100
@@ -9,7 +9,7 @@
# /usr/bin/ld: BFD 2.11.93.0.2 20020207 assertion fail elf-strtab.c:262
# but it still creates the binary properly.
libc_a: libc_a.c
- cc -o libc_a libc_a.c -lm /usr/lib/libc.a
+ cc -o libc_a libc_a.c -static -lm /usr/lib/libc.a
private1: private1.c
cc -D`uname` -o private1 private1.c
diff -Nur abicheck-1.2-orig/test/libc_a.c abicheck-1.2/test/libc_a.c
--- abicheck-1.2-orig/test/libc_a.c 2003-08-26 21:57:51.000000000 +0200
+++ abicheck-1.2/test/libc_a.c 2007-05-24 11:11:20.000000000 +0200
@@ -5,6 +5,7 @@
/* This is used to catch libc.a linking. See Makefile & run_tests */
+#include <stdio.h>
#include <stdlib.h>
#include <math.h>
diff -Nur abicheck-1.2-orig/test/private1.c abicheck-1.2/test/private1.c
--- abicheck-1.2-orig/test/private1.c 2002-06-18 20:16:07.000000000 +0200
+++ abicheck-1.2/test/private1.c 2007-05-24 11:40:25.000000000 +0200
@@ -6,6 +6,7 @@
/* This is for simple catching of some private symbol usage. See run_tests */
#include <stdio.h>
+#include <string.h>
#if defined(SunOS)
#define OS "Solaris"
diff -Nur abicheck-1.2-orig/test/run_tests abicheck-1.2/test/run_tests
--- abicheck-1.2-orig/test/run_tests 2002-02-07 15:40:20.000000000 +0100
+++ abicheck-1.2/test/run_tests 2007-05-24 11:40:52.000000000 +0200
@@ -19,7 +19,7 @@
# libc_a:
name="libc.a static link test on libc_a"
-if abicheck ./libc_a 2>/dev/null | grep 'STATIC_LINK:.*libc' > /dev/null; then
+if abicheck ./libc_a 2>/dev/null | grep 'STATIC_LINK:.*\(libc\|completely statically linked\)' > /dev/null; then
pass
else
fail
diff -Nur abicheck-1.2-orig/test/run_tests abicheck-1.2/test/run_tests
--- abicheck-1.2-orig/test/run_tests 2002-02-07 15:40:20.000000000 +0100
+++ abicheck-1.2/test/run_tests 2007-05-24 12:33:02.000000000 +0200
@@ -39,7 +39,7 @@
# private1:
name="private1: calls private sym in libc"
-if abicheck ./private1 2>/dev/null | egrep 'PRIVATE:.*libc.*(__open|__nanosleep)' > /dev/null; then
+if abicheck ./private1 2>/dev/null | grep 'PRIVATE:.*libc.*\(__open\|__nanosleep\)' > /dev/null; then
pass
else
fail
diff -Nur abicheck-1.2-orig/test/run_tests abicheck-1.2/test/run_tests
--- abicheck-1.2-orig/test/run_tests 2002-02-07 15:40:20.000000000 +0100
+++ abicheck-1.2/test/run_tests 2007-05-24 13:00:58.000000000 +0200
@@ -29,7 +29,7 @@
# public1:
name="public1: only calls public syms"
-if [ "`abicheck ./public1 2>/dev/null`" = "./public1: OK" ]; then
+if [ "`abicheck ./public1 2>/dev/null`" == "./public1: OK" ]; then
pass
else
fail

View file

@ -1,12 +0,0 @@
diff -Nur abicheck-1.2-orig/abicheck.pl abicheck-1.2/abicheck.pl
--- abicheck-1.2-orig/abicheck.pl 2003-08-26 21:57:51.000000000 +0200
+++ abicheck-1.2/abicheck.pl 2007-10-05 11:47:39.000000000 +0200
@@ -1588,7 +1588,7 @@
$filter_match =
q/file=(.*); filtered by (.*)$/; # XXX not checked
$unbound_match =
- q/^\s*undefined symbol:\s+(\S+)(.*)/;
+ q/symbol (.*) not defined(.*)/;
$dtneeded_match =
q/^\s*(\S+)\s+=>\s+(not found|\S+)/;
$file_match =

View file

@ -1,128 +0,0 @@
%define debug_package %{nil}
Summary: ABI checking tool
Name: abicheck
Version: 1.2
Release: 15
License: LGPLv2
Group: Applications/File
URL: http://abicheck.sourceforge.net/
Source0: http://dl.sf.net/abicheck/%{name}-%{version}.tar.gz
Patch0: abicheck-1.2-fc3.patch
Patch1: abicheck-1.2-tests.patch
Patch2: abicheck-1.2-bindings-fc4.patch
Patch3: abicheck-1.2-libgcc.patch
Patch4: abicheck-1.2-fortify-source-f8.patch
Patch5: abicheck-1.2-ldlinux.patch
Patch6: abicheck-1.2-undefined-symbol.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot-%(%{__id_u} -n)
Requires: binutils perl
%description
abicheck is a tool that checks application binary executables and
shared libraries for conformance to the (or an) ABI (Application
Binary Interface).
%prep
%setup -q
%patch -p1 -b .fc3
%patch1 -p1 -b .tests
%patch2 -p1 -b .bindings-fc4
%patch3 -p1 -b .libgcc
%patch4 -p1 -b .fortify-source-f8
%patch5 -p1 -b .ldlinux
%patch6 -p1 -b .undefined-symbol
sed -i -e 's!/usr/lib/!%{_libdir}/!g' test/Makefile
%build
make
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_bindir} $RPM_BUILD_ROOT%{_mandir}/man1
install -p -m 0755 abicheck $RPM_BUILD_ROOT%{_bindir}
install -p -m 0644 abicheck.1 $RPM_BUILD_ROOT%{_mandir}/man1
%check
make test
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%doc COPYING ChangeLog INTRO README
%{_bindir}/abicheck
%{_mandir}/man1/abicheck.1*
%changelog
* Fri Oct 5 2007 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2-15
- Patch unbound_match.
- Update fortify-source patch.
* Thu Aug 2 2007 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2-14
- Clarify licence (LGPLv2).
* Thu May 24 2007 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2-13
- More patches for the tests.
* Thu May 24 2007 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2-12
- Patch tests a bit more (also fixes ppc64).
* Mon Aug 28 2006 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2-11
- Rebuild and update fortify-source patch.
* Thu Mar 2 2006 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2-10
- rebuilt for FC5 only to run the %%check section
* Tue Aug 16 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2-9
- Patch abicheck to run dynamic linker directly instead of
using ldd and receiving its intermixed lines.
* Mon Aug 15 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2-8
- Add libgcc symbols.
- Add more _FORTIFY_SOURCE symbols.
- Override symbol classification by default.
* Thu Aug 11 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2-7
- Add an override file in %%doc which can be specified with
option -O to modify the symbol classification for binaries
built with _FORTIFY_SOURCE.
* Mon May 9 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2-6
- Disable debuginfo package.
* Thu Apr 14 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2-5
- Replace /usr/lib/ with %%_libdir/ in %%prep.
* Mon Apr 11 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2-4
- Add patch to catch up with bindings related changes in ldd output.
* Fri Apr 7 2005 Michael Schwendt <mschwendt[AT]users.sf.net>
- rebuilt
* Mon Dec 13 2004 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2-3
- Add patch to catch up with changes in ldd output.
- Fix static linking test.
- Drop Epoch 0.
* Wed Aug 27 2003 Dams <anvil[AT]livna.org> 0:1.2-0.fdr.2
- Added missing Requires
* Wed Aug 27 2003 Dams <anvil[AT]livna.org> 0:1.2-0.fdr.1
- Updated to 1.2
- Dropped patch (applied upstream)
* Sat Aug 23 2003 Dams <anvil[AT]livna.org> 0:1.1-0.fdr.2
- Aplied patch from Michael Schwendt (bug #605 comment #1)
* Sat Aug 16 2003 Dams <anvil[AT]livna.org>
- Initial build.

2
dead.package Normal file
View file

@ -0,0 +1,2 @@
No upstream development or maintenance at all since several years, not
even merging patches.

View file

@ -1 +0,0 @@
57097ed1f8c20d974b0b1a9850e61f08 abicheck-1.2.tar.gz