diff --git a/omnibus/Gemfile.lock b/omnibus/Gemfile.lock index 71770e1f4..be24596a7 100644 --- a/omnibus/Gemfile.lock +++ b/omnibus/Gemfile.lock @@ -1,6 +1,6 @@ GIT remote: https://github.com/chef/omnibus-software.git - revision: 1b2dfe467cbc22e0e2e232e2648af3482830bfd7 + revision: ad7ed679f1b34c20f8be34365d38cb1c21e737cd branch: master specs: omnibus-software (4.0.0) diff --git a/omnibus/config/patches/rb-fsevent-gem.patch b/omnibus/config/patches/rb-fsevent-gem.patch new file mode 100644 index 000000000..4af0638bf --- /dev/null +++ b/omnibus/config/patches/rb-fsevent-gem.patch @@ -0,0 +1,24 @@ +diff --git a/bin/fsevent_watch b/bin/fsevent_watch +index 889204f..17b894b 100755 +Binary files a/bin/fsevent_watch and b/bin/fsevent_watch differ +diff --git a/ext/rakefile.rb b/ext/rakefile.rb +index d7789bd..fd8ec36 100644 +--- a/ext/rakefile.rb ++++ b/ext/rakefile.rb +@@ -48,13 +48,13 @@ CLOBBER.include $final_exe.to_s + task :sw_vers do + $mac_product_version = `sw_vers -productVersion`.strip + $mac_build_version = `sw_vers -buildVersion`.strip +- $MACOSX_DEPLOYMENT_TARGET = ENV["MACOSX_DEPLOYMENT_TARGET"] || $mac_product_version.sub(/\.\d*$/, '') +- $CFLAGS = "#{$CFLAGS} -mmacosx-version-min=#{$MACOSX_DEPLOYMENT_TARGET}" ++ $MACOSX_MIN_TARGET = $mac_product_version.sub(/\.\d*$/, '') ++ $CFLAGS = "#{$CFLAGS} -mmacosx-version-min=#{$MACOSX_MIN_TARGET}" + end + + task :get_sdk_info => :sw_vers do + $SDK_INFO = {} +- version_info = `xcodebuild -version -sdk macosx#{$MACOSX_DEPLOYMENT_TARGET}` ++ version_info = `xcodebuild -version -sdk macosx` + raise "invalid SDK" unless !!$?.exitstatus + version_info.strip.each_line do |line| + next if line.strip.empty? diff --git a/omnibus/config/projects/chefdk.rb b/omnibus/config/projects/chefdk.rb index 210663c62..f94b24b2d 100644 --- a/omnibus/config/projects/chefdk.rb +++ b/omnibus/config/projects/chefdk.rb @@ -98,7 +98,7 @@ package :pkg do identifier "com.getchef.pkg.chefdk" - signing_identity "Developer ID Installer: Chef Software, Inc. (EU3VF8YLX2)" + signing_identity "Chef Software, Inc. (EU3VF8YLX2)" end package :msi do diff --git a/omnibus/config/software/chef-dk.rb b/omnibus/config/software/chef-dk.rb index 67de3ae77..5774e1c75 100644 --- a/omnibus/config/software/chef-dk.rb +++ b/omnibus/config/software/chef-dk.rb @@ -74,6 +74,11 @@ # for train dependency "google-protobuf" +# This is a transative dep but we need to build from source so binaries are built on current sdk. +# Only matters on mac. +# TODO: Contact gem mainter about getting new release. +dependency "rb-fsevent-gem" if mac_os_x? + build do env = with_standard_compiler_flags(with_embedded_path) diff --git a/omnibus/config/software/git-custom-bindir.rb b/omnibus/config/software/git-custom-bindir.rb index ebf9cc4e0..5108eac0e 100644 --- a/omnibus/config/software/git-custom-bindir.rb +++ b/omnibus/config/software/git-custom-bindir.rb @@ -41,6 +41,8 @@ source url: "https://www.kernel.org/pub/software/scm/git/git-#{version}.tar.gz" +bin_dirs ["#{install_dir}/gitbin", "#{install_dir}/embedded/libexec/git-core"] + build do env = with_standard_compiler_flags(with_embedded_path) diff --git a/omnibus/config/software/rb-fsevent-gem.rb b/omnibus/config/software/rb-fsevent-gem.rb new file mode 100644 index 000000000..6a046aa24 --- /dev/null +++ b/omnibus/config/software/rb-fsevent-gem.rb @@ -0,0 +1,36 @@ +# +# Copyright 2012-2014 Chef Software, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +name "rb-fsevent-gem" +default_version "master" + +source git: "https://github.com/thibaudgg/rb-fsevent.git" + +license "Apache-2.0" +license_file "https://raw.githubusercontent.com/thibaudgg/rb-fsevent/master/LICENSE.txt" + +dependency "ruby" + +build do + env = with_standard_compiler_flags(with_embedded_path) + # Look up active sdk version. + sdk_ver = `xcrun --sdk macosx --show-sdk-version`.strip + env["MACOSX_DEPLOYMENT_TARGET"] = sdk_ver + + bundle "install", env: env + bundle "exec rake replace_exe", env: env, cwd: "#{project_dir}/ext" + bundle "exec rake install:local", env: env +end