rpmlint/libtool-wrapper-check.diff
OBS User autobuild 698597df8c Accepting request 36612 from Base:System
Copy from Base:System/rpmlint based on submit request 36612 from user dirkmueller

OBS-URL: https://build.opensuse.org/request/show/36612
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/rpmlint?expand=0&rev=55
2010-04-01 14:20:38 +00:00

57 lines
2.0 KiB
Diff

package ProtocolReader;
i
require Exportei path
Da/work/built/patchinfo/a8074a35e4528cffdfb08bd7c9969012/protocol-autotest"))Da/work/built/patchinfo/a8074a35e4528cffdfb08bd7c9969012/protocol-autotest"));;
@ISA = qw(Exporter);
@EXPORT = qw(new read);
is_ar =
rpath
asdfdff
ead_one_protocol("fc46dcae41fa022273d4dfd752880372/protocol") to
:x
sub new { bless {} } string.find(i[1], 'current ar archive') != -1
is_ocaml_native = string.find(i[1], 'ObjABXML::ABXML::patchprotocolnative') != -1
print Dumper(a+ is_shell = string.find(i[1], "shell script") != -)1
is_binary = is_elf or is_ar or is_ocaml_native
if is_binary:
@@ -278,6 +279,16 @@
printError(pkg, 'invalid-directory-reference', i[0],
'(line %s)' % ", ".join(lines))
+ if is_shell:
+ count= 0
+ for l in file(pkg.dirName() + i[0], "r"):
+ count = count + 1
+ if (l.find("This wrapper script should never be moved out of the build directory") != -1):
+ printError(pkg, 'libtool-wrapper-in-package', i[0])
+ break
+ if (count > 20):
+ break;
+
if has_lib != []:
if exec_files != []:
for f in exec_files:
@@ -341,6 +352,14 @@
Another common mistake that causes this problem is linking with
``gcc -Wl,-shared'' instead of ``gcc -shared''.''',
+'libtool-wrapper-in-package',
+'''Your package contains a libtool wrapper shell script. This
+will not work. Instead of install'ing the libtool wrapper file,
+run
+
+libtool --mode=install install -m perm <file> <dest>
+
+to install the relinked file.''',
'binary-or-shlib-defines-rpath',
'''The binary or shared library defines `RPATH'. Usually this is a
bad thing because it hardcodes the path to search libraries and so