20 Commits

Author SHA1 Message Date
Markus Reiter
24ae318a3d Move type annotations into files. 2020-10-10 14:59:39 +02:00
rmnull
649e02ba3d
patchelf.rb writing in ELFShim 2020-08-27 22:50:34 +05:30
rmnull
d607528a5b
introduce ELFShim#rpath, refactor keg_relocate to use the same.
refines PatchELF #runpath, #rpath #soname #interpreter
to return nil.
let Brew hard exits on PatchELF::PatchError.

Co-authored-by: Shaun Jackman <sjackman@gmail.com>
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
2020-07-25 01:07:24 +05:30
rmnull
35328ed535
[draft] refactoring keg_relocate to use ELFShim#interpreter instead of .with_interpreter? 2020-06-26 05:34:41 +05:30
rmnull
39c572b546
Instructions to install patchelf, when development tools cant locate patchelf. 2020-05-28 00:34:02 +05:30
Mike McQuaid
3381cbf5c7
Use Homebrew::EnvConfig. 2020-04-07 09:58:26 +01:00
Mike McQuaid
a7bfb80786
Revert "Do not run patchelf on portable-ruby [Linux]" 2019-10-10 15:16:30 +01:00
Shaun Jackman
1c6046c7e3 Do not run patchelf on portable-ruby [Linux]
Running patchelf on portable-ruby causes brew tests to segfault.

See https://github.com/Homebrew/brew/pull/6556
2019-10-09 09:21:04 -07:00
Cheng XU
2c82623318
keg_relocate: relocate the interpreter for elf files with INTERP header (Linux)
Some elf files (e.g. created by rust compiler) have INTERP header despite
their magic header denotes shared object instead of executable.

We should relocate the interpreter elf files as long as they have INTERP header.

This should fix the broken bottles for rust based formulae.
2019-07-18 15:22:43 +08:00
Mike McQuaid
36dbad3922
Add frozen_string_literal to all files. 2019-04-20 13:27:36 +09:00
Mike McQuaid
3bde17c9f9
Cleanup from dev-cmd test changes
- Remove added whitespace in `extend/os/linux/keg_relocate`
- Cleanup testball bottles
2019-03-27 10:31:26 +00:00
Mike McQuaid
59d680a626
dev-cmd: only one integration test per command.
Integration tests are useful in detecting breakages but much slower so
let's only use one per command and install formula outside the
integration test framework (which is also slow).
2019-03-27 09:45:48 +00:00
Shaun Jackman
97a2c620a2
Merge pull request #5018 from sjackman/relocation-formulae
relocation_formulae: Poured bottles depend on gcc [Linux]
2018-10-23 11:15:42 -07:00
Shaun Jackman
385a05e5ae Patching the dynamic linker of glibc breaks it [Linux] 2018-10-23 10:18:53 -07:00
Shaun Jackman
605e61095a relocation_formulae: Poured bottles depend on gcc [Linux] 2018-10-23 09:03:20 -07:00
Shaun Jackman
afa975bf26 keg_relocate: Fix Error: wrong number of arguments [Linux]
Fix the error:
Error: wrong number of arguments (given 1, expected 2)
/projects/btl_scratch/sjackman/brew/Homebrew/Library/Homebrew/exceptions.rb:550:in `block in initialize'
/projects/btl_scratch/sjackman/brew/Homebrew/Library/Homebrew/exceptions.rb:559:in `map'
2018-10-02 15:16:32 -07:00
Markus Reiter
e9b9ea49a1 Update to RuboCop 0.59.1. 2018-09-17 03:45:59 +02:00
Markus Reiter
2712fcaa67 Use interleaved output for ErrorDuringExecution. 2018-07-19 16:53:11 +02:00
Markus Reiter
2452b27866 Refactor ErrorDuringExecution. 2018-07-19 16:41:27 +02:00
Shaun Jackman
1b688a3a25 Relocate bottles on Linux using patchelf
Ensure patchelf is installed to pour bottles and build bottles.
2018-07-12 10:21:26 -07:00