File libtool-wrapper-check.diff of Package rpmlint

@@ -367,8 +367,21 @@ class BinariesCheck(AbstractCheck.Abstra
             is_ar = 'current ar archive' in pkgfile.magic
             is_ocaml_native = 'Objective caml native' in pkgfile.magic
             is_lua_bytecode = 'Lua bytecode' in pkgfile.magic
+            is_shell = "shell script" in pkgfile.magic
             is_binary = is_elf or is_ar or is_ocaml_native or is_lua_bytecode
+            if is_shell:
+                file_start = None
+                try:
+                    with open(pkgfile.path, 'rb') as inputf:
+                        file_start =
+                except IOError:
+                    pass
+                if (file_start and
+                        b'This wrapper script should never '
+                        b'be moved out of the build directory' in file_start):
+                    printError(pkg, 'libtool-wrapper-in-package', fname)
             if not is_binary:
                     lines = pkg.grep(invalid_dir_ref_regex, fname)
@@ -637,6 +650,15 @@ to list code compiled without -fPIC.
 Another common mistake that causes this problem is linking with
 ``gcc -Wl,-shared'' instead of ``gcc -shared''.''',
+'''Your package contains a libtool wrapper shell script. This
+will not work. Instead of install'ing the libtool wrapper file,
+libtool --mode=install install -m perm <file> <dest>
+to install the relinked file.''',
 '''The binary or shared library defines `RPATH'. Usually this is a
 bad thing because it hardcodes the path to search libraries and so