diff options
| author | BrewTestBot | 2015-08-03 13:09:07 +0100 |
|---|---|---|
| committer | Mike McQuaid | 2015-08-03 13:22:35 +0100 |
| commit | 13d544e11e92ba8ea3788723432046f8dfe4adf9 (patch) | |
| tree | e6da18436d9ce956e6fbe80e3185c67cf3b58808 /Library/Homebrew/extend/ENV/std.rb | |
| parent | 3b68215be793774fafd9ce124a2065f5968f50e5 (diff) | |
| download | brew-13d544e11e92ba8ea3788723432046f8dfe4adf9.tar.bz2 | |
Core files style updates.
Closes Homebrew/homebrew#42354.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
Diffstat (limited to 'Library/Homebrew/extend/ENV/std.rb')
| -rw-r--r-- | Library/Homebrew/extend/ENV/std.rb | 142 |
1 files changed, 72 insertions, 70 deletions
diff --git a/Library/Homebrew/extend/ENV/std.rb b/Library/Homebrew/extend/ENV/std.rb index 56ac68a87..6798e6cd3 100644 --- a/Library/Homebrew/extend/ENV/std.rb +++ b/Library/Homebrew/extend/ENV/std.rb @@ -1,44 +1,44 @@ -require 'hardware' -require 'os/mac' -require 'extend/ENV/shared' +require "hardware" +require "os/mac" +require "extend/ENV/shared" module Stdenv include SharedEnvExtension SAFE_CFLAGS_FLAGS = "-w -pipe" - DEFAULT_FLAGS = '-march=core2 -msse4' + DEFAULT_FLAGS = "-march=core2 -msse4" def self.extended(base) - unless ORIGINAL_PATHS.include? HOMEBREW_PREFIX/'bin' - base.prepend_path 'PATH', "#{HOMEBREW_PREFIX}/bin" + unless ORIGINAL_PATHS.include? HOMEBREW_PREFIX/"bin" + base.prepend_path "PATH", "#{HOMEBREW_PREFIX}/bin" end end - def setup_build_environment(formula=nil) + def setup_build_environment(formula = nil) super if MacOS.version >= :mountain_lion # Mountain Lion's sed is stricter, and errors out when # it encounters files with mixed character sets - delete('LC_ALL') - self['LC_CTYPE']="C" + delete("LC_ALL") + self["LC_CTYPE"]="C" end # Set the default pkg-config search path, overriding the built-in paths # Anything in PKG_CONFIG_PATH is searched before paths in this variable - self['PKG_CONFIG_LIBDIR'] = determine_pkg_config_libdir + self["PKG_CONFIG_LIBDIR"] = determine_pkg_config_libdir # make any aclocal stuff installed in Homebrew available - self['ACLOCAL_PATH'] = "#{HOMEBREW_PREFIX}/share/aclocal" if MacOS::Xcode.provides_autotools? + self["ACLOCAL_PATH"] = "#{HOMEBREW_PREFIX}/share/aclocal" if MacOS::Xcode.provides_autotools? - self['MAKEFLAGS'] = "-j#{self.make_jobs}" + self["MAKEFLAGS"] = "-j#{make_jobs}" - unless HOMEBREW_PREFIX.to_s == '/usr/local' + unless HOMEBREW_PREFIX.to_s == "/usr/local" # /usr/local is already an -isystem and -L directory so we skip it - self['CPPFLAGS'] = "-isystem#{HOMEBREW_PREFIX}/include" - self['LDFLAGS'] = "-L#{HOMEBREW_PREFIX}/lib" + self["CPPFLAGS"] = "-isystem#{HOMEBREW_PREFIX}/include" + self["LDFLAGS"] = "-L#{HOMEBREW_PREFIX}/lib" # CMake ignores the variables above - self['CMAKE_PREFIX_PATH'] = HOMEBREW_PREFIX.to_s + self["CMAKE_PREFIX_PATH"] = HOMEBREW_PREFIX.to_s end frameworks = HOMEBREW_PREFIX.join("Frameworks") @@ -51,7 +51,7 @@ module Stdenv # Os is the default Apple uses for all its stuff so let's trust them set_cflags "-Os #{SAFE_CFLAGS_FLAGS}" - append 'LDFLAGS', '-Wl,-headerpad_max_install_names' + append "LDFLAGS", "-Wl,-headerpad_max_install_names" send(compiler) @@ -82,13 +82,13 @@ module Stdenv # This is useful for makefiles with race conditions. # When passed a block, MAKEFLAGS is removed only for the duration of the block and is restored after its completion. def deparallelize - old = self['MAKEFLAGS'] - remove 'MAKEFLAGS', /-j\d+/ + old = self["MAKEFLAGS"] + remove "MAKEFLAGS", /-j\d+/ if block_given? begin yield ensure - self['MAKEFLAGS'] = old + self["MAKEFLAGS"] = old end end @@ -97,9 +97,9 @@ module Stdenv alias_method :j1, :deparallelize # These methods are no-ops for compatibility. - %w{fast O4 Og}.each { |opt| define_method(opt) {} } + %w[fast O4 Og].each { |opt| define_method(opt) {} } - %w{O3 O2 O1 O0 Os}.each do |opt| + %w[O3 O2 O1 O0 Os].each do |opt| define_method opt do remove_from_cflags(/-O./) append_to_cflags "-#{opt}" @@ -118,7 +118,7 @@ module Stdenv def gcc_4_0 super - set_cpu_cflags '-march=nocona -mssse3' + set_cpu_cflags "-march=nocona -mssse3" end alias_method :gcc_4_0_1, :gcc_4_0 @@ -149,53 +149,53 @@ module Stdenv set_cpu_cflags "-march=native", map end - def remove_macosxsdk version=MacOS.version + def remove_macosxsdk(version = MacOS.version) # Clear all lib and include dirs from CFLAGS, CPPFLAGS, LDFLAGS that were # previously added by macosxsdk version = version.to_s remove_from_cflags(/ ?-mmacosx-version-min=10\.\d/) - delete('MACOSX_DEPLOYMENT_TARGET') - delete('CPATH') - remove 'LDFLAGS', "-L#{HOMEBREW_PREFIX}/lib" + delete("MACOSX_DEPLOYMENT_TARGET") + delete("CPATH") + remove "LDFLAGS", "-L#{HOMEBREW_PREFIX}/lib" if (sdk = MacOS.sdk_path(version)) && !MacOS::CLT.installed? - delete('SDKROOT') + delete("SDKROOT") remove_from_cflags "-isysroot #{sdk}" - remove 'CPPFLAGS', "-isysroot #{sdk}" - remove 'LDFLAGS', "-isysroot #{sdk}" - if HOMEBREW_PREFIX.to_s == '/usr/local' - delete('CMAKE_PREFIX_PATH') + remove "CPPFLAGS", "-isysroot #{sdk}" + remove "LDFLAGS", "-isysroot #{sdk}" + if HOMEBREW_PREFIX.to_s == "/usr/local" + delete("CMAKE_PREFIX_PATH") else # It was set in setup_build_environment, so we have to restore it here. - self['CMAKE_PREFIX_PATH'] = HOMEBREW_PREFIX.to_s + self["CMAKE_PREFIX_PATH"] = HOMEBREW_PREFIX.to_s end - remove 'CMAKE_FRAMEWORK_PATH', "#{sdk}/System/Library/Frameworks" + remove "CMAKE_FRAMEWORK_PATH", "#{sdk}/System/Library/Frameworks" end end - def macosxsdk version=MacOS.version + def macosxsdk(version = MacOS.version) return unless OS.mac? # Sets all needed lib and include dirs to CFLAGS, CPPFLAGS, LDFLAGS. remove_macosxsdk version = version.to_s append_to_cflags("-mmacosx-version-min=#{version}") - self['MACOSX_DEPLOYMENT_TARGET'] = version - self['CPATH'] = "#{HOMEBREW_PREFIX}/include" - prepend 'LDFLAGS', "-L#{HOMEBREW_PREFIX}/lib" + self["MACOSX_DEPLOYMENT_TARGET"] = version + self["CPATH"] = "#{HOMEBREW_PREFIX}/include" + prepend "LDFLAGS", "-L#{HOMEBREW_PREFIX}/lib" if (sdk = MacOS.sdk_path(version)) && !MacOS::CLT.installed? # Extra setup to support Xcode 4.3+ without CLT. - self['SDKROOT'] = sdk + self["SDKROOT"] = sdk # Tell clang/gcc where system include's are: - append_path 'CPATH', "#{sdk}/usr/include" + append_path "CPATH", "#{sdk}/usr/include" # The -isysroot is needed, too, because of the Frameworks append_to_cflags "-isysroot #{sdk}" - append 'CPPFLAGS', "-isysroot #{sdk}" + append "CPPFLAGS", "-isysroot #{sdk}" # And the linker needs to find sdk/usr/lib - append 'LDFLAGS', "-isysroot #{sdk}" + append "LDFLAGS", "-isysroot #{sdk}" # Needed to build cmake itself and perhaps some cmake projects: - append_path 'CMAKE_PREFIX_PATH', "#{sdk}/usr" - append_path 'CMAKE_FRAMEWORK_PATH', "#{sdk}/System/Library/Frameworks" + append_path "CMAKE_PREFIX_PATH", "#{sdk}/usr" + append_path "CMAKE_FRAMEWORK_PATH", "#{sdk}/System/Library/Frameworks" end end @@ -203,6 +203,7 @@ module Stdenv set_cflags "-Os #{SAFE_CFLAGS_FLAGS}" macosxsdk unless MacOS::CLT.installed? end + def no_optimization set_cflags SAFE_CFLAGS_FLAGS macosxsdk unless MacOS::CLT.installed? @@ -211,10 +212,10 @@ module Stdenv # Some configure scripts won't find libxml2 without help def libxml2 if MacOS::CLT.installed? - append 'CPPFLAGS', '-I/usr/include/libxml2' + append "CPPFLAGS", "-I/usr/include/libxml2" else # Use the includes form the sdk - append 'CPPFLAGS', "-I#{MacOS.sdk_path}/usr/include/libxml2" + append "CPPFLAGS", "-I#{MacOS.sdk_path}/usr/include/libxml2" end end @@ -238,7 +239,7 @@ module Stdenv append_path "ACLOCAL_PATH", "#{MacOS::X11.share}/aclocal" - if MacOS::XQuartz.provided_by_apple? and not MacOS::CLT.installed? + if MacOS::XQuartz.provided_by_apple? && !MacOS::CLT.installed? append_path "CMAKE_PREFIX_PATH", "#{MacOS.sdk_path}/usr/X11" end @@ -248,21 +249,22 @@ module Stdenv # we've seen some packages fail to build when warnings are disabled! def enable_warnings - remove_from_cflags '-w' + remove_from_cflags "-w" end def m64 - append_to_cflags '-m64' - append 'LDFLAGS', "-arch #{Hardware::CPU.arch_64_bit}" + append_to_cflags "-m64" + append "LDFLAGS", "-arch #{Hardware::CPU.arch_64_bit}" end + def m32 - append_to_cflags '-m32' - append 'LDFLAGS', "-arch #{Hardware::CPU.arch_32_bit}" + append_to_cflags "-m32" + append "LDFLAGS", "-arch #{Hardware::CPU.arch_32_bit}" end def universal_binary append_to_cflags Hardware::CPU.universal_archs.as_arch_flags - append 'LDFLAGS', Hardware::CPU.universal_archs.as_arch_flags + append "LDFLAGS", Hardware::CPU.universal_archs.as_arch_flags if compiler != :clang && Hardware.is_32_bit? # Can't mix "-march" for a 32-bit CPU with "-arch x86_64" @@ -272,10 +274,10 @@ module Stdenv def cxx11 if compiler == :clang - append 'CXX', '-std=c++11' - append 'CXX', '-stdlib=libc++' + append "CXX", "-std=c++11" + append "CXX", "-stdlib=libc++" elsif compiler =~ /gcc-(4\.(8|9)|5)/ - append 'CXX', '-std=c++11' + append "CXX", "-std=c++11" else raise "The selected compiler doesn't support C++11: #{compiler}" end @@ -283,36 +285,36 @@ module Stdenv def libcxx if compiler == :clang - append 'CXX', '-stdlib=libc++' + append "CXX", "-stdlib=libc++" end end def libstdcxx if compiler == :clang - append 'CXX', '-stdlib=libstdc++' + append "CXX", "-stdlib=libstdc++" end end - def replace_in_cflags before, after + def replace_in_cflags(before, after) CC_FLAG_VARS.each do |key| - self[key] = self[key].sub(before, after) if has_key?(key) + self[key] = self[key].sub(before, after) if key?(key) end end # Convenience method to set all C compiler flags in one shot. - def set_cflags val + def set_cflags(val) CC_FLAG_VARS.each { |key| self[key] = val } end # Sets architecture-specific flags for every environment variable # given in the list `flags`. - def set_cpu_flags flags, default=DEFAULT_FLAGS, map=Hardware::CPU.optimization_flags - cflags =~ %r{(-Xarch_#{Hardware::CPU.arch_32_bit} )-march=} + def set_cpu_flags(flags, default = DEFAULT_FLAGS, map = Hardware::CPU.optimization_flags) + cflags =~ /(-Xarch_#{Hardware::CPU.arch_32_bit} )-march=/ xarch = $1.to_s - remove flags, %r{(-Xarch_#{Hardware::CPU.arch_32_bit} )?-march=\S*} - remove flags, %r{( -Xclang \S+)+} - remove flags, %r{-mssse3} - remove flags, %r{-msse4(\.\d)?} + remove flags, /(-Xarch_#{Hardware::CPU.arch_32_bit} )?-march=\S*/ + remove flags, /( -Xclang \S+)+/ + remove flags, /-mssse3/ + remove flags, /-msse4(\.\d)?/ append flags, xarch unless xarch.empty? append flags, map.fetch(effective_arch, default) end @@ -330,14 +332,14 @@ module Stdenv end end - def set_cpu_cflags default=DEFAULT_FLAGS, map=Hardware::CPU.optimization_flags + def set_cpu_cflags(default = DEFAULT_FLAGS, map = Hardware::CPU.optimization_flags) set_cpu_flags CC_FLAG_VARS, default, map end def make_jobs # '-j' requires a positive integral argument - if self['HOMEBREW_MAKE_JOBS'].to_i > 0 - self['HOMEBREW_MAKE_JOBS'].to_i + if self["HOMEBREW_MAKE_JOBS"].to_i > 0 + self["HOMEBREW_MAKE_JOBS"].to_i else Hardware::CPU.cores end |
