Update cookbooks
* Replace old nginx cookbook with new chef_nginx cookbooks * Update application cookbook
This commit is contained in:
@@ -1,2 +1 @@
|
||||
~FC052
|
||||
~FC057
|
||||
~FC016
|
||||
|
||||
@@ -2,6 +2,103 @@
|
||||
|
||||
This file is used to list changes made in each version of the build-essential cookbook.
|
||||
|
||||
## 8.0.1 (2017-04-14)
|
||||
|
||||
- Test with local delivery and not Rake
|
||||
- Ensure compatibility with Chef 12.5
|
||||
- Update apache2 license string
|
||||
- Ensure compatibility with Amazon Linux on Chef 13
|
||||
|
||||
## 8.0.0 (2017-02-14)
|
||||
|
||||
- Require 12.5 or later and remove compat_resource cookbook dependency
|
||||
|
||||
## 7.0.3 (2016-12-22)
|
||||
|
||||
- Require the latest compat_resource
|
||||
- Cookstyle fixes
|
||||
|
||||
## 7.0.2 (2016-11-07)
|
||||
|
||||
- Fix softwareupdate issue from -v to --verbose
|
||||
|
||||
## 7.0.1 (2016-10-06)
|
||||
|
||||
- Install gcc 4.8 on SUSE < 12
|
||||
|
||||
## 7.0.0 (2016-09-30)
|
||||
|
||||
- Remove support for OS X < 10.9 and add support for OS X 10.12
|
||||
- Refactor the xcode installer resource as a custom resource that does not require updates for each new OS X update
|
||||
- Use a test recipe with apt_update to avoid needing apt
|
||||
|
||||
## 6.0.6 (2016-09-19)
|
||||
|
||||
- Remove chef 11 compatibility in the metadata
|
||||
- Solaris 11 needs both make and gnu make
|
||||
|
||||
## 6.0.5 (2016-09-07)
|
||||
|
||||
- Testing updates
|
||||
- Require the latest compat_resource
|
||||
|
||||
## 6.0.4 (2016-08-19)
|
||||
|
||||
- Install CLTools from dmg with -allowUntrusted on old OSX
|
||||
- Switch to cookstyle for ruby linting
|
||||
- Add OS X hosts to the kitchen config
|
||||
- Remove chefdk included gems from the Gemfile
|
||||
- Better handle kitchen failures in the Rakefile
|
||||
- Perform all unit/linting in a single travis job
|
||||
|
||||
## v6.0.3 (2016-07-26)
|
||||
|
||||
- Fix how gcc version specified for Solaris 11
|
||||
|
||||
## v6.0.2 (2016-07-22)
|
||||
|
||||
- Properly warn on Solaris 10
|
||||
- Specify the verson of gcc to install on Solaris 11
|
||||
|
||||
## v6.0.1 (2016-07-19)
|
||||
|
||||
- Clarify that this cookbook actually required Chef 12.1 or later not 12.0 or later
|
||||
- Add chef_version metadata
|
||||
|
||||
## v6.0.0 (2016-06-03)
|
||||
|
||||
This cookbook now uses the new msys2 based compiler toolchain on windows. Both 32-bit DW2 and 64-bit SEH based toolchains are available based on the gcc 5.3x series compiler. By default these are located in C:\msys2\mingw32 and C:\msys2\mingw64
|
||||
|
||||
## v5.0.0 (2016-06-03)
|
||||
|
||||
The cookbook now ships with a 12.5+ style custom resource 'build_essential' which performs the same work that the existing default.rb recipe. The default.rb recipe has been converted to consume that resource to provide backwards compatibility for users that use build-essential::default in their run lists or cookbooks. In converting to this custom resource support for EOL omnios has been removed and warning messages for Solaris 10 users have been removed. See the readme for usage information on the new resource.
|
||||
|
||||
## v4.0.0 (2016-05-12)
|
||||
|
||||
### Breaking change
|
||||
|
||||
This cookbook now requires Chef 12 or later as it includes the new mingw cookbook for installing Windows compilers. Mingw includes 12.5 style custom resources, which will fail to compile on Chef 11\. If you are not running Chef 12 you'll need to pin to 3.x in your environment.
|
||||
|
||||
## v3.2.0 (2016-03-25)
|
||||
|
||||
This version backs out a change in the 3.0 release which attempted to install the version of kernel-devel for the current running kernel on RHEL systems. This change had several unintended consequences and we believe the best solution is to back to change out until a better solution for the original problem is developed. Several of the issues could be resolved by code updates to build-essential, but not all, which complicates rolling forward vs. a roll back. The change caused issues which Chefspec runs on cookbooks where build-essential is a dependency as Fauxhai, used by Chefspec, does not mock out node['virtualization']. Fauxhai is being updated to mock out node['virtualization'], but we'd like to make sure a ChefDK release ships with this new Fauxhai before depending on that change.
|
||||
|
||||
## v3.1.0 (2016-03-23)
|
||||
|
||||
- Install GCC 4.8 if running on OmniOS >= 151008
|
||||
|
||||
## v3.0.0 (2016-03-23)
|
||||
|
||||
- Install GCC 4.9 on FreeBSD < 10
|
||||
- Install the version of kernel-devel that matches the running Kernel on RHEL
|
||||
- Remove suggests 'pkgutil' from the metadata as suggests does nothing
|
||||
- Properly warn the user that build-essential does not support Solaris 10 instead of just silently continuing on
|
||||
- Updated specs to run against more recent OS releases
|
||||
- Removed the warning for OmniOS users from the Readme as the upstream issue has been resolved
|
||||
- Switch from 7-zip to seven_zip cookbook as 7-zip has been deprecated
|
||||
- Add 7-zip to the system path on Windows hosts so the recipe will work out of the box
|
||||
- Switch from the deprecated 7-zip cookbook to seven_zip
|
||||
|
||||
## v2.4.0 (2016-03-21)
|
||||
|
||||
- Add gettext package to RHEL / FreeBSD to match other platforms
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#
|
||||
# Cookbook Name:: build-essential
|
||||
# Cookbook:: build-essential
|
||||
# Attributes:: default
|
||||
#
|
||||
# Copyright 2008-2016, Chef Software, Inc.
|
||||
# Copyright:: 2008-2017, 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.
|
||||
@@ -18,4 +18,4 @@
|
||||
#
|
||||
|
||||
default['build-essential']['compile_time'] = false
|
||||
default['build-essential']['msys']['path'] = "#{ENV['SYSTEMDRIVE']}\\msys"
|
||||
default['build-essential']['msys2']['path'] = "#{ENV['SYSTEMDRIVE']}\\msys2"
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
module BuildEssential
|
||||
module MsysHelper
|
||||
#
|
||||
# This function returns a struct representing an
|
||||
# msys package. It has two fields: url and checksum
|
||||
#
|
||||
# @return [OpenStruct]
|
||||
#
|
||||
def msys_p(url, checksum)
|
||||
OpenStruct.new(url: url, checksum: checksum)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Chef::Recipe.send(:include, BuildEssential::MsysHelper)
|
||||
@@ -2,4 +2,8 @@ if defined?(ChefSpec)
|
||||
def install_xcode_command_line_tools(resource_name)
|
||||
ChefSpec::Matchers::ResourceMatcher.new(:xcode_command_line_tools, :install, resource_name)
|
||||
end
|
||||
|
||||
def install_build_essential(resource_name)
|
||||
ChefSpec::Matchers::ResourceMatcher.new(:build_essential, :install, resource_name)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,124 +0,0 @@
|
||||
#
|
||||
# Cookbook Name:: build-essential
|
||||
# Library:: timing
|
||||
#
|
||||
# Copyright 2014-2016, 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.
|
||||
#
|
||||
|
||||
#
|
||||
# This module is used to clean up the recipe DSL and "potentially" execute
|
||||
# resources at compile time (depending on the value of an attribute).
|
||||
#
|
||||
# This library is only for use within the build-essential cookbook. Resources
|
||||
# inside the potentially_at_compile_time block will not fire notifications in
|
||||
# some situations. This is fixable, but since none of the resources in this
|
||||
# cookbook actually use notifications, it is not worth the added technical debt.
|
||||
#
|
||||
# TL;DR Don't use this DSL method outside of this cookbook.
|
||||
#
|
||||
module BuildEssential
|
||||
module Timing
|
||||
#
|
||||
# Potentially evaluate the given block at compile time, depending on the
|
||||
# value of the +node['build-essential']['compile_time']+ attribute.
|
||||
#
|
||||
# @example
|
||||
# potentially_at_compile_time do
|
||||
# package 'apache2'
|
||||
# end
|
||||
#
|
||||
# @param [Proc] block
|
||||
# the thing to eval
|
||||
#
|
||||
def potentially_at_compile_time(&block)
|
||||
if compile_time?
|
||||
CompileTime.new(self).evaluate(&block)
|
||||
else
|
||||
instance_eval(&block)
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
#
|
||||
# Checks if the DSL should be evaluated at compile time.
|
||||
#
|
||||
# @return [true, false]
|
||||
#
|
||||
def compile_time?
|
||||
check_for_old_attributes!
|
||||
!!node['build-essential']['compile_time']
|
||||
end
|
||||
|
||||
#
|
||||
# Checks for the presence of the "old" attributes.
|
||||
#
|
||||
# @todo Remove in 2.0.0
|
||||
#
|
||||
# @return [void]
|
||||
#
|
||||
def check_for_old_attributes!
|
||||
unless node['build_essential'].nil?
|
||||
Chef::Log.warn <<-EOH
|
||||
node['build_essential'] has been changed to node['build-essential'] to match the
|
||||
cookbook name and community standards. I have gracefully converted the attribute
|
||||
for you, but this warning and conversion will be removed in the next major
|
||||
release of the build-essential cookbook.
|
||||
EOH
|
||||
node.default['build-essential'] = node['build_essential']
|
||||
end
|
||||
|
||||
unless node['build-essential']['compiletime'].nil?
|
||||
Chef::Log.warn <<-EOH
|
||||
node['build-essential']['compiletime'] has been deprecated. Please use
|
||||
node['build-essential']['compile_time'] instead. I have gracefully converted the
|
||||
attribute for you, but this warning and conversion will be removed in the next
|
||||
major release of the build-essential cookbook.
|
||||
EOH
|
||||
node.default['build-essential']['compile_time'] = node['build-essential']['compiletime']
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
# A class graciously borrowed from Chef Sugar for evaluating a resource at
|
||||
# compile time in a block.
|
||||
#
|
||||
class CompileTime
|
||||
def initialize(recipe)
|
||||
@recipe = recipe
|
||||
end
|
||||
|
||||
def evaluate(&block)
|
||||
instance_eval(&block)
|
||||
end
|
||||
|
||||
def method_missing(m, *args, &block)
|
||||
resource = @recipe.send(m, *args, &block)
|
||||
if resource.is_a?(Chef::Resource)
|
||||
actions = Array(resource.action)
|
||||
resource.action(:nothing)
|
||||
|
||||
actions.each do |action|
|
||||
resource.run_action(action)
|
||||
end
|
||||
end
|
||||
resource
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# Include the timing module into the main recipe DSL
|
||||
Chef::Recipe.send(:include, BuildEssential::Timing)
|
||||
@@ -1,212 +0,0 @@
|
||||
#
|
||||
# Cookbook Name:: build-essential
|
||||
# Library:: xcode_command_line_tools
|
||||
#
|
||||
# Copyright 2014-2016, 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.
|
||||
#
|
||||
|
||||
class Chef
|
||||
class Resource::XcodeCommandLineTools < Resource::LWRPBase
|
||||
def self.resource_name
|
||||
:xcode_command_line_tools
|
||||
end
|
||||
|
||||
actions :install
|
||||
default_action :install
|
||||
|
||||
def initialize(name, run_context = nil)
|
||||
super
|
||||
|
||||
# => Break down SemVer
|
||||
major, minor, _patch = node['platform_version'].split('.').map { |v| String(v) }
|
||||
@provider = case [major, minor].join('.')
|
||||
when '10.7', '10.8'
|
||||
Provider::XcodeCommandLineToolsFromDmg
|
||||
when '10.9', '10.10', '10.11'
|
||||
Provider::XcodeCommandLineToolsFromSoftwareUpdate
|
||||
else
|
||||
Chef::Log.warn <<-EOH
|
||||
OSX #{node['platform_version']} is not an officially supported platform for the
|
||||
build-essential cookbook. I am going to try and install the command line tools
|
||||
from Software Update, but there is a high probability that it will fail...
|
||||
|
||||
If you have tested and verified OSX #{node['platform_version']} and you are sick
|
||||
of seeing this warning in your Chef Client runs, please submit a Pull Request to
|
||||
https://github.com/chef-cookbooks/build-essential and add this version of OSX
|
||||
to provider list.
|
||||
EOH
|
||||
Provider::XcodeCommandLineToolsFromSoftwareUpdate
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
# This is a legacy provider for installing OSX from DMGs. It only supports OSX
|
||||
# versions 10.7 and 10.8 and will (hopefully) be deprecated in the future. It
|
||||
# downloads a remote .dmg file, mounts it, installs it, and unmounts it
|
||||
# automatically. In later versions of OSX, the operating system handles this for
|
||||
# the end user.
|
||||
#
|
||||
class Chef
|
||||
class Provider::XcodeCommandLineToolsFromDmg < Provider::LWRPBase
|
||||
action(:install) do
|
||||
if installed?
|
||||
Chef::Log.debug("#{new_resource} already installed - skipping")
|
||||
else
|
||||
converge_by("Install #{new_resource}") do
|
||||
download
|
||||
attach
|
||||
install
|
||||
detach
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
#
|
||||
# Determine if the XCode Command Line Tools are installed
|
||||
#
|
||||
# @return [true, false]
|
||||
#
|
||||
def installed?
|
||||
cmd = Mixlib::ShellOut.new('pkgutil --pkgs=com.apple.pkg.DeveloperToolsCLI')
|
||||
cmd.run_command
|
||||
cmd.error!
|
||||
true
|
||||
rescue Mixlib::ShellOut::ShellCommandFailed
|
||||
false
|
||||
end
|
||||
|
||||
#
|
||||
# The path where the dmg should be cached on disk.
|
||||
#
|
||||
# @return [String]
|
||||
#
|
||||
def dmg_cache_path
|
||||
::File.join(Chef::Config[:file_cache_path], 'osx-command-line-tools.dmg')
|
||||
end
|
||||
|
||||
#
|
||||
# The path where the dmg should be downloaded from. This is intentionally
|
||||
# not a configurable object by the end user. If you do not like where we
|
||||
# are downloading XCode from - too bad.
|
||||
#
|
||||
# @return [String]
|
||||
#
|
||||
def dmg_remote_source
|
||||
case node['platform_version'].to_f
|
||||
when 10.7
|
||||
'http://devimages.apple.com/downloads/xcode/command_line_tools_for_xcode_os_x_lion_april_2013.dmg'
|
||||
when 10.8
|
||||
'http://devimages.apple.com/downloads/xcode/command_line_tools_for_xcode_os_x_mountain_lion_march_2014.dmg'
|
||||
else
|
||||
raise "Unknown DMG download URL for OSX #{node['platform_version']}"
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
# The path where the volume should be mounted.
|
||||
#
|
||||
# @return [String]
|
||||
#
|
||||
def mount_path
|
||||
::File.join(Chef::Config[:file_cache_path], 'osx-command-line-tools')
|
||||
end
|
||||
|
||||
#
|
||||
# Action: download the remote dmg.
|
||||
#
|
||||
# @return [void]
|
||||
#
|
||||
def download
|
||||
remote_file = Resource::RemoteFile.new(dmg_cache_path, run_context)
|
||||
remote_file.source(dmg_remote_source)
|
||||
remote_file.backup(false)
|
||||
remote_file.run_action(:create)
|
||||
end
|
||||
|
||||
#
|
||||
# Action: attach the dmg (basically, double-click on it)
|
||||
#
|
||||
# @return [void]
|
||||
#
|
||||
def attach
|
||||
execute %(hdiutil attach "#{dmg_cache_path}" -mountpoint "#{mount_path}")
|
||||
end
|
||||
|
||||
#
|
||||
# Action: install the package inside the dmg
|
||||
#
|
||||
# @return [void]
|
||||
#
|
||||
def install
|
||||
execute %|installer -package "$(find '#{mount_path}' -name *.mpkg)" -target "/"|
|
||||
end
|
||||
|
||||
#
|
||||
# Action: detach the dmg (basically, drag it to eject on the dock)
|
||||
#
|
||||
# @return [void]
|
||||
#
|
||||
def detach
|
||||
execute %(hdiutil detach "#{mount_path}")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
class Chef
|
||||
class Provider::XcodeCommandLineToolsFromSoftwareUpdate < Provider::LWRPBase
|
||||
action(:install) do
|
||||
if installed?
|
||||
Chef::Log.debug("#{new_resource} already installed - skipping")
|
||||
else
|
||||
converge_by("Install #{new_resource}") do
|
||||
# This script was graciously borrowed and modified from Tim Sutton's
|
||||
# osx-vm-templates at https://github.com/timsutton/osx-vm-templates/blob/b001475df54a9808d3d56d06e71b8fa3001fff42/scripts/xcode-cli-tools.sh
|
||||
execute 'install XCode Command Line tools' do
|
||||
command <<-EOH.gsub(/^ {14}/, '')
|
||||
# create the placeholder file that's checked by CLI updates' .dist code
|
||||
# in Apple's SUS catalog
|
||||
touch /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress
|
||||
# find the CLI Tools update
|
||||
PROD=$(softwareupdate -l | grep "\*.*Command Line" | head -n 1 | awk -F"*" '{print $2}' | sed -e 's/^ *//' | tr -d '\n')
|
||||
# install it
|
||||
softwareupdate -i "$PROD" -v
|
||||
EOH
|
||||
# rubocop:enable Metrics/LineLength
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
#
|
||||
# Determine if the XCode Command Line Tools are installed
|
||||
#
|
||||
# @return [true, false]
|
||||
#
|
||||
def installed?
|
||||
cmd = Mixlib::ShellOut.new('pkgutil --pkgs=com.apple.pkg.CLTools_Executables')
|
||||
cmd.run_command
|
||||
cmd.error!
|
||||
true
|
||||
rescue Mixlib::ShellOut::ShellCommandFailed
|
||||
false
|
||||
end
|
||||
end
|
||||
end
|
||||
File diff suppressed because one or more lines are too long
@@ -1,102 +0,0 @@
|
||||
#
|
||||
# Cookbook Name:: build-essential
|
||||
# Provider:: msys_archive
|
||||
#
|
||||
# Copyright 2016, 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.
|
||||
#
|
||||
|
||||
use_inline_resources
|
||||
|
||||
action :unpack do
|
||||
directory msys_dir do
|
||||
action :create
|
||||
end
|
||||
|
||||
directory "dir-#{mingw_dir}" do
|
||||
action :create
|
||||
path mingw_dir
|
||||
only_if do
|
||||
new_resource.mingw
|
||||
end
|
||||
end
|
||||
|
||||
directory cache_dir do
|
||||
action :create
|
||||
end
|
||||
|
||||
# Unpacking involves downloading the tar.whatever.
|
||||
# Then we unpack the tar.whatever with 7z, which
|
||||
# leaves us with a tar, which can finally be
|
||||
# untarred with 7z.
|
||||
|
||||
remote_file cache_path do
|
||||
source new_resource.source
|
||||
checksum new_resource.checksum
|
||||
notifies :run, "execute[#{archive_name}]", :immediately
|
||||
end
|
||||
|
||||
execute archive_name do
|
||||
command extract_cmd(cache_path, cache_dir)
|
||||
action :nothing
|
||||
notifies :run, "execute[#{tar_name}]", :immediately
|
||||
end
|
||||
|
||||
execute tar_name do
|
||||
command extract_cmd(tar_path, unpack_root_dir)
|
||||
action :nothing
|
||||
end
|
||||
end
|
||||
|
||||
# msys packages will be extracted into the root dir
|
||||
# mingw packages will get extracted into the root/mingw dir
|
||||
def unpack_root_dir
|
||||
if new_resource.mingw
|
||||
mingw_dir
|
||||
else
|
||||
msys_dir
|
||||
end
|
||||
end
|
||||
|
||||
def msys_dir
|
||||
new_resource.root_dir
|
||||
end
|
||||
|
||||
def mingw_dir
|
||||
::File.join(new_resource.root_dir, 'mingw')
|
||||
end
|
||||
|
||||
def archive_name
|
||||
::File.basename(new_resource.source)
|
||||
end
|
||||
|
||||
def cache_dir
|
||||
::File.join(unpack_root_dir, '.cache')
|
||||
end
|
||||
|
||||
def cache_path
|
||||
::File.join(cache_dir, archive_name)
|
||||
end
|
||||
|
||||
def tar_name
|
||||
::File.basename(archive_name, ::File.extname(archive_name))
|
||||
end
|
||||
|
||||
def tar_path
|
||||
::File.join(cache_dir, tar_name)
|
||||
end
|
||||
|
||||
def extract_cmd(source_file, dest_dir)
|
||||
"7z x #{source_file} -o#{dest_dir} -r -y"
|
||||
end
|
||||
@@ -1,28 +0,0 @@
|
||||
#
|
||||
# Cookbook Name:: build-essential
|
||||
# Recipe:: debian
|
||||
#
|
||||
# Copyright 2008-2016, 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.
|
||||
#
|
||||
|
||||
potentially_at_compile_time do
|
||||
package 'autoconf'
|
||||
package 'binutils-doc'
|
||||
package 'bison'
|
||||
package 'build-essential'
|
||||
package 'flex'
|
||||
package 'gettext'
|
||||
package 'ncurses-dev'
|
||||
end
|
||||
@@ -1,32 +0,0 @@
|
||||
#
|
||||
# Cookbook Name:: build-essential
|
||||
# Recipe:: fedora
|
||||
#
|
||||
# Copyright 2008-2016, 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.
|
||||
#
|
||||
|
||||
potentially_at_compile_time do
|
||||
package 'autoconf'
|
||||
package 'bison'
|
||||
package 'flex'
|
||||
package 'gcc'
|
||||
package 'gcc-c++'
|
||||
package 'gettext'
|
||||
package 'kernel-devel'
|
||||
package 'make'
|
||||
package 'm4'
|
||||
package 'ncurses-devel'
|
||||
package 'patch'
|
||||
end
|
||||
@@ -1,25 +0,0 @@
|
||||
#
|
||||
# Cookbook Name:: build-essential
|
||||
# Recipe:: freebsd
|
||||
#
|
||||
# Copyright 2014-2016, 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.
|
||||
#
|
||||
|
||||
potentially_at_compile_time do
|
||||
package 'devel/gmake'
|
||||
package 'devel/autoconf'
|
||||
package 'devel/m4'
|
||||
package 'devel/gettext'
|
||||
end
|
||||
@@ -1,22 +0,0 @@
|
||||
#
|
||||
# Cookbook Name:: build-essential
|
||||
# Recipe:: mac_os_x
|
||||
#
|
||||
# Copyright 2008-2016, 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.
|
||||
#
|
||||
|
||||
potentially_at_compile_time do
|
||||
xcode_command_line_tools 'install'
|
||||
end
|
||||
@@ -1,33 +0,0 @@
|
||||
#
|
||||
# Cookbook Name:: build-essential
|
||||
# Recipe:: omnios
|
||||
#
|
||||
# Copyright 2013-2016, 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.
|
||||
#
|
||||
|
||||
potentially_at_compile_time do
|
||||
package 'developer/gcc47'
|
||||
package 'developer/object-file'
|
||||
package 'developer/linker'
|
||||
package 'developer/library/lint'
|
||||
package 'developer/build/gnu-make'
|
||||
package 'system/header'
|
||||
package 'system/library/math/header-math'
|
||||
end
|
||||
|
||||
# Per OmniOS documentation, the gcc bin dir isn't in the default
|
||||
# $PATH, so add it to the running process environment
|
||||
# http://omnios.omniti.com/wiki.php/DevEnv
|
||||
ENV['PATH'] = "#{ENV['PATH']}:/opt/gcc-4.7.2/bin"
|
||||
@@ -1,37 +0,0 @@
|
||||
#
|
||||
# Cookbook Name:: build-essential
|
||||
# Recipe:: rhel
|
||||
#
|
||||
# Copyright 2008-2016, 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.
|
||||
#
|
||||
|
||||
potentially_at_compile_time do
|
||||
package 'autoconf'
|
||||
package 'bison'
|
||||
package 'flex'
|
||||
package 'gcc'
|
||||
package 'gcc-c++'
|
||||
package 'kernel-devel'
|
||||
package 'make'
|
||||
package 'm4'
|
||||
package 'patch'
|
||||
package 'gettext-devel'
|
||||
|
||||
# Ensure GCC 4 is available on older pre-6 EL
|
||||
if node['platform_version'].to_i < 6
|
||||
package 'gcc44'
|
||||
package 'gcc44-c++'
|
||||
end
|
||||
end
|
||||
@@ -1,27 +0,0 @@
|
||||
#
|
||||
# Cookbook Name:: build-essential
|
||||
# Recipe:: smartos
|
||||
#
|
||||
# Copyright 2008-2016, 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.
|
||||
#
|
||||
|
||||
potentially_at_compile_time do
|
||||
package 'autoconf'
|
||||
package 'binutils'
|
||||
package 'build-essential'
|
||||
package 'gcc47'
|
||||
package 'gmake'
|
||||
package 'pkg-config'
|
||||
end
|
||||
@@ -1,48 +0,0 @@
|
||||
#
|
||||
# Cookbook Name:: build-essential
|
||||
# Recipe:: solaris2
|
||||
#
|
||||
# Copyright 2013-2016, 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.
|
||||
#
|
||||
|
||||
case node['platform_version'].to_f
|
||||
when 5.10
|
||||
# You should install the following packages from the Solaris 10 DVD:
|
||||
#
|
||||
# SUNWbison
|
||||
# SUNWgcc
|
||||
# SUNWggrp
|
||||
# SUNWgmake
|
||||
# SUNWgtar
|
||||
#
|
||||
when 5.11
|
||||
potentially_at_compile_time do
|
||||
package 'autoconf'
|
||||
package 'automake'
|
||||
package 'bison'
|
||||
package 'gnu-coreutils'
|
||||
package 'flex'
|
||||
package 'gcc'
|
||||
package 'gcc-3'
|
||||
package 'gnu-grep'
|
||||
package 'gnu-make'
|
||||
package 'gnu-patch'
|
||||
package 'gnu-tar'
|
||||
package 'pkg-config'
|
||||
package 'ucb'
|
||||
end
|
||||
else
|
||||
raise "Sorry, we don't support Solaris version #{node['platform_version']} at this juncture."
|
||||
end
|
||||
@@ -1,29 +0,0 @@
|
||||
#
|
||||
# Cookbook Name:: build-essential
|
||||
# Recipe:: suse
|
||||
#
|
||||
# Copyright 2008-2016, 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.
|
||||
#
|
||||
|
||||
potentially_at_compile_time do
|
||||
package 'autoconf'
|
||||
package 'bison'
|
||||
package 'flex'
|
||||
package 'gcc'
|
||||
package 'gcc-c++'
|
||||
package 'kernel-default-devel'
|
||||
package 'make'
|
||||
package 'm4'
|
||||
end
|
||||
@@ -1,7 +0,0 @@
|
||||
actions :unpack
|
||||
default_action :unpack
|
||||
|
||||
attribute :source, kind_of: String, name_attribute: true
|
||||
attribute :root_dir, kind_of: String, required: true
|
||||
attribute :mingw, kind_of: [TrueClass, FalseClass], default: false
|
||||
attribute :checksum, kind_of: String
|
||||
Reference in New Issue
Block a user