aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/build.rb
AgeCommit message (Collapse)Author
2018-01-14Deprecate default_formula Requirement DSLMike McQuaid
This has been a nightmare in terms of the complexity to our dependency system and the whack-a-mole required on bugs. If a Requirement resolves to a Formula it should just use `depends_on "formula"` instead. This matches the effective behaviour all users of bottles (the vast majority of users and installs) and what we're doing in Homebrew/homebrew-core.
2017-10-08Clean up code style and remove `.rubocop_todo.yml`.Markus Reiter
2017-09-10build: fix HOMEBREW_FORMULA_PREFIX for headilovezfs
so that it includes the commit.
2017-07-15build: use with_env helperMisty De Meo
2017-01-11build: don't assume requirement dependency is default formula.Mike McQuaid
2016-10-30build: write options to file.Mike McQuaid
These can be useful for later inspection or upload by `gist-logs` if there's a failed install and it's unclear from logs alone what options were used.
2016-09-23Fix Style/GuardClause.Markus Reiter
2016-09-17rubocop --auto-correct all hash-rocket usage.Mike McQuaid
2016-08-26Restrict TMPDIR etc. changes to install, post_install and testZhiming Wang
See discussion in Homebrew/brew#800.
2016-08-22Make -no_weak_imports opt-in.Mike McQuaid
The experiment to add `-no_weak_imports` unconditionally has been a bit of a failure. It's broken more than it's fixed and I don't think we can have this as a default for Xcode 8. Add `ENV.no_weak_imports` to be used by formulae authors and make `ENV.no_weak_imports a no-op (for now). We may reconsider this behaviour in future.
2016-08-20build: permit weak imports in Go reverse deps.Mike McQuaid
Go makes extensive use of weak imports so we need to allow them when building Go-using software. Closes https://github.com/Homebrew/homebrew-core/issues/4047.
2016-07-08tab: eliminate redundant 'Tab.create' arguments (#468)Martin Afanasjew
The `build` and `source_modified_time` arguments are always coming from the matching attributes of the `Formula` instance. Thus query `formula` for them instead of passing them individually.
2016-04-18brew test, install, update-test: add --keep-tmp optionAndrew Janke
Also enables sandbox for --interactive and --debug use of install and test, using automatic retention. Closes #66. Signed-off-by: Andrew Janke <andrew@apjanke.net>
2016-01-20build#install: install metafiles in buildpathAlex Dunn
This came up in https://github.com/Homebrew/homebrew-emacs/pull/158#issuecomment-172031003; `install_metafiles` is passed the current directory, which can be changed during installation by `Dir.chdir`. There may be cases where the metafiles are in a subdirectory, but my guess is those are rare and this is brittle and undocumented behavior anyway.
2016-01-15build: store source modified time in tabfileXu Cheng
2015-11-24build: removed instance of redundant mappingSyed Humza Shah
2015-08-28move sudo -k to formula_installerXu Cheng
sudo -k cannot be used inside sandbox Closes Homebrew/homebrew#43345. Signed-off-by: Xu Cheng <xucheng@me.com>
2015-08-03Core files style updates.BrewTestBot
Closes Homebrew/homebrew#42354. Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-06-25Decouple detect_stdlibs from ENVJack Nagel
I want to decouple from the global ENV constant as much as possible so that eventually we can change the build environment implementation. detect_stdlibs only cares about the compiler, not the whole ENV.
2015-06-18Pass formula objects, not strings, into the build environmentJack Nagel
2015-06-16Rename requirements named *Dependency.Mike McQuaid
Dependency is another similar, related class and it's super confusing to have some Requirements that are named *Dependency. Closes Homebrew/homebrew#38891. Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-05-29build: use Formula#full_nameXu Cheng
2015-04-16Eliminate a place where ARGV is mutatedJack Nagel
2015-04-15build: fix typoXu Cheng
2015-04-09Use UNIXSocket to pass file descriptorXu Cheng
This is a more standard way to pass fd in UNIX world. At the same time, it helps to remove a few hacks and simplifies the code in the sandbox. Closes Homebrew/homebrew#38434. Signed-off-by: Xu Cheng <xucheng@me.com>
2015-03-27ensure metafiles being installed to prefix rather than libexecXu Cheng
This is a follow-up of Homebrew/homebrew#37734. I think we should treat `install_metafiles` as a general issue rather than a formula-specific one. Closes Homebrew/homebrew#37968. Signed-off-by: Xu Cheng <xucheng@me.com>
2014-12-26Remove unnecessary code from debuggerJack Nagel
2014-12-26Decouple applying patches from staging the sourceJack Nagel
2014-11-03Add ARGV.git?Jack Nagel
2014-09-18Rewrite debugger to remove monkeypatches and use of call/ccJack Nagel
2014-09-14Consistently call name on formula instead of relying on to_sJack Nagel
2014-08-29Add a method for retrieving only flags from ARGVJack Nagel
2014-08-27Make sure all exceptions are sent back to the parent processJack Nagel
2014-08-27Explicitly pass options into the build objectJack Nagel
2014-08-27Spell out formula in parameter and attribute namesJack Nagel
2014-08-26Structure the build process so that we don't need an at_exit hookJack Nagel
2014-08-24Consider on-disk state when computing dependenciesJack Nagel
Fixes Homebrew/homebrew#28754. Fixes Homebrew/homebrew#29846. Fixes Homebrew/homebrew#30920.
2014-08-23Use opt_prefix instead of constructing it manuallyJack Nagel
2014-08-22Pull common stdlib checking code into a methodJack Nagel
2014-08-09Remove unnecessary lasgnJack Nagel
2014-08-09Move tab creation outside of the debug loopJack Nagel
2014-08-09Extract build-time stdlib check to a methodJack Nagel
2014-08-02Use polymorphism to simplify stdlib compatibility checkJack Nagel
2014-07-30Pass the build object into the TabJack Nagel
Since the Tab is written in the build process, the formula's build object will have the correct args attached to it already, so we don't need to reconstruct it.
2014-07-29Remove unused requireJack Nagel
2014-07-29Decouple DATA patches from the executing scriptJack Nagel
2014-07-28Fix up dep directories before activating ENV extensionsJack Nagel
2014-07-28Move the fixopt method into the Build classJack Nagel
2014-06-26Reuse existing keg objectJack Nagel
2014-06-20Decouple spec selection from ARGVJack Nagel