libmagic: add upstream patch to fix macro

Add patch that removes extra bitwise OR in MAGIC_NO_CHECK_BUILTIN macro definition.

This corrects quite incorrect code and will make some more stricter versions
of cpp (C preprocessor) reporting an error during parsing. I will also address
possible problem with Go's cgo breaking on OS X (Darwin).

Signed-off-by: Krzysztof Wilczynski <krzysztof.wilczynski@linux.com>
Signed-off-by: Misty De Meo <mistydemeo@gmail.com>
csync: style nits
csync: doxygen seems optional
vifm: note required string functions

Closes #20270.
wine: add optional libgsm dependency

Closes #21932.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
wine: sort deps, style nit
Extend Superenv onto ENV instead of defining it on the singleton class
Move setup into an extended callback
Move superbin into Superenv module
Make Superenv activation explicit
Move common stuff to extend/ENV.rb
Move extra stdenv setup to extended callback
Reference self rather than ENV in Superenv module

We want to be able to extend this module onto an arbitrary hash and use
it without mutating ENV, for testing purposes.
Reference self, not ENV, in ENV.fortran
Re-enable superenv ENV[] hack
Fix superenv ENV[] hack

We override ENV[] to always return strings under superenv, because
legacy formulae assume that CFLAGS, etc. are non-nil.

However, the current implementation has a bug. If I simply concatenate
ENV['CFLAGS'] with another string, it mutates ENV['CFLAGS']:

  irb> ENV['CFLAGS']
  => ""
  irb> ENV['CFLAGS'] + 'a'
  => "a"
  irb> ENV['CFLAGS']
  => "a"

Instead, let's simply return an empty string if the key doesn't exist.
This is sufficient because the following are equivalent:

  1. ENV['CFLAGS'] += "string"
  2. ENV['CFLAGS'] = ENV['CFLAGS'] + "string"
Move superenv.rb to extend/ENV/super.rb
Move common ENV methods to a shared module
Rename HomebrewEnvExtension to Stdenv
More robust implementation of ENV.with_build_environment