Skip to content

Commit 7ea865b

Browse files
authored
Merge pull request puppetlabs#82 from DavidS/security-updates
Security updates
2 parents a9cd04f + 27fe34b commit 7ea865b

28 files changed

+1991
-39
lines changed

configs/components/augeas.rb

+104
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
component 'augeas' do |pkg, settings, platform|
2+
pkg.version '1.8.1'
3+
pkg.md5sum '623ff89d71a42fab9263365145efdbfa'
4+
pkg.url "http://buildsources.delivery.puppetlabs.net/augeas-#{pkg.get_version}.tar.gz"
5+
6+
# pkg.replaces 'pe-augeas'
7+
if platform.is_sles? && platform.os_version == '10'
8+
pkg.apply_patch 'resources/patches/augeas/augeas-1.2.0-fix-services-sles10.patch'
9+
end
10+
11+
pkg.build_requires "libxml2"
12+
13+
# Ensure we're building against our own libraries when present
14+
pkg.environment "PKG_CONFIG_PATH", "#{settings[:libdir]}/pkgconfig"
15+
16+
if platform.is_aix?
17+
pkg.build_requires "http://osmirror.delivery.puppetlabs.net/AIX_MIRROR/pkg-config-0.19-6.aix5.2.ppc.rpm"
18+
pkg.environment "CC", "/opt/pl-build-tools/bin/gcc"
19+
pkg.environment "LDFLAGS", settings[:ldflags]
20+
pkg.environment "CFLAGS", "-I/opt/puppetlabs/puppet/include/"
21+
pkg.build_requires 'libedit'
22+
pkg.build_requires 'runtime'
23+
end
24+
25+
if platform.is_rpm? && !platform.is_aix?
26+
pkg.build_requires 'readline-devel'
27+
pkg.build_requires 'pkgconfig'
28+
29+
if platform.is_cisco_wrlinux?
30+
pkg.requires 'libreadline6'
31+
else
32+
pkg.requires 'readline'
33+
end
34+
35+
if platform.architecture =~ /ppc64le|s390x/
36+
pkg.build_requires 'runtime'
37+
pkg.environment "PATH", "/opt/pl-build-tools/bin:$(PATH):#{settings[:bindir]}"
38+
pkg.environment "CFLAGS", settings[:cflags]
39+
pkg.environment "LDFLAGS", settings[:ldflags]
40+
end
41+
pkg.environment "PATH" => "/opt/pl-build-tools/bin:$$PATH:#{settings[:bindir]}"
42+
pkg.environment "CFLAGS" => settings[:cflags]
43+
pkg.environment "LDFLAGS" => settings[:ldflags]
44+
elsif platform.is_huaweios?
45+
pkg.build_requires 'runtime'
46+
pkg.build_requires 'pl-pkg-config'
47+
48+
pkg.environment "PATH", "/opt/pl-build-tools/bin:$(PATH):#{settings[:bindir]}"
49+
pkg.environment "CFLAGS", settings[:cflags]
50+
pkg.environment "LDFLAGS", settings[:ldflags]
51+
pkg.environment "PKG_CONFIG", "/opt/pl-build-tools/bin/pkg-config"
52+
elsif platform.is_deb?
53+
pkg.build_requires 'libreadline-dev'
54+
if platform.name =~ /debian-9/
55+
pkg.requires 'libreadline7'
56+
else
57+
pkg.requires 'libreadline6'
58+
end
59+
60+
pkg.build_requires 'pkg-config'
61+
if platform.is_cross_compiled_linux?
62+
pkg.environment "PATH", "/opt/pl-build-tools/bin:$(PATH):#{settings[:bindir]}"
63+
pkg.environment "CFLAGS", settings[:cflags]
64+
pkg.environment "LDFLAGS", settings[:ldflags]
65+
end
66+
67+
elsif platform.is_solaris?
68+
pkg.environment "PATH", "/opt/pl-build-tools/bin:$(PATH):/usr/local/bin:/usr/ccs/bin:/usr/sfw/bin:#{settings[:bindir]}"
69+
pkg.environment "CFLAGS", settings[:cflags]
70+
pkg.environment "LDFLAGS", settings[:ldflags]
71+
pkg.build_requires 'libedit'
72+
pkg.build_requires 'runtime'
73+
if platform.os_version == "10"
74+
pkg.build_requires 'pkgconfig'
75+
pkg.environment "PKG_CONFIG_PATH", "/opt/csw/lib/pkgconfig"
76+
pkg.environment "PKG_CONFIG", "/opt/csw/bin/pkg-config"
77+
else
78+
pkg.build_requires 'pl-pkg-config'
79+
pkg.environment "PKG_CONFIG_PATH", "/usr/lib/pkgconfig"
80+
pkg.environment "PKG_CONFIG", "/opt/pl-build-tools/bin/pkg-config"
81+
end
82+
elsif platform.is_macos?
83+
pkg.environment "PATH" => "$$PATH:/usr/local/bin"
84+
pkg.environment "CFLAGS" => settings[:cflags]
85+
elsif platform.is_windows?
86+
#nothing to see here
87+
else
88+
pkg.environment "PATH" => "/opt/pl-build-tools/bin:$$PATH:#{settings[:bindir]}"
89+
pkg.environment "CFLAGS" => settings[:cflags]
90+
pkg.environment "LDFLAGS" => settings[:ldflags]
91+
end
92+
93+
pkg.configure do
94+
["./configure --prefix=#{settings[:prefix]} #{settings[:host]}"]
95+
end
96+
97+
pkg.build do
98+
["#{platform[:make]} -j$(shell expr $(shell #{platform[:num_cores]}) + 1)"]
99+
end
100+
101+
pkg.install do
102+
["#{platform[:make]} -j$(shell expr $(shell #{platform[:num_cores]}) + 1) install"]
103+
end
104+
end

configs/components/curl.rb

+12-4
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,23 @@
11
component 'curl' do |pkg, settings, platform|
2-
pkg.version '7.51.0'
3-
pkg.md5sum '490e19a8ccd1f4a244b50338a0eb9456'
2+
pkg.version '7.56.0'
3+
pkg.md5sum '65351b9df687ed539852ae7b9464006c'
44
pkg.url "https://curl.haxx.se/download/curl-#{pkg.get_version}.tar.gz"
55

66
pkg.build_requires "openssl"
77
pkg.build_requires "puppet-ca-bundle"
88

9+
if platform.is_cross_compiled_linux?
10+
pkg.build_requires 'runtime'
11+
pkg.environment "PATH" => "/opt/pl-build-tools/bin:$$PATH:#{settings[:bindir]}"
12+
pkg.environment "PKG_CONFIG_PATH" => "/opt/puppetlabs/puppet/lib/pkgconfig"
13+
pkg.environment "PATH" => "/opt/pl-build-tools/bin:$$PATH"
14+
end
15+
916
if platform.is_windows?
1017
pkg.build_requires "runtime"
11-
pkg.environment "PATH", "$(shell cygpath -u #{settings[:gcc_bindir]}):$$PATH"
12-
pkg.environment "CYGWIN", settings[:cygwin]
18+
19+
pkg.environment "PATH" => "$$(cygpath -u #{settings[:gcc_bindir]}):$$PATH"
20+
pkg.environment "CYGWIN" => settings[:cygwin]
1321
end
1422

1523
pkg.configure do

configs/components/libxml2.rb

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
component "libxml2" do |pkg, settings, platform|
2+
pkg.version "2.9.4"
3+
pkg.md5sum "ae249165c173b1ff386ee8ad676815f5"
4+
pkg.url "http://xmlsoft.org/sources/#{pkg.get_name}-#{pkg.get_version}.tar.gz"
5+
pkg.mirror "http://buildsources.delivery.puppetlabs.net/libxml2-#{pkg.get_version}.tar.gz"
6+
# CVE-related patches needed until libxml 2.9.5 is released:
7+
pkg.apply_patch 'resources/patches/libxml2/fix_XPointer_paths_beginning_with_range-to_CVE-2016-5131.patch'
8+
pkg.apply_patch 'resources/patches/libxml2/fix_comparison_with_root_node_in_xmlXPathCmpNodes.patch'
9+
pkg.apply_patch 'resources/patches/libxml2/disallow_namespace_nodes_in_XPointer_ranges_CVE-2016-4658.patch'
10+
11+
if platform.is_aix?
12+
pkg.environment "PATH", "/opt/pl-build-tools/bin:$(PATH)"
13+
elsif platform.is_cross_compiled_linux?
14+
pkg.environment "PATH", "/opt/pl-build-tools/bin:$(PATH):#{settings[:bindir]}"
15+
pkg.environment "CFLAGS", settings[:cflags]
16+
pkg.environment "LDFLAGS", settings[:ldflags]
17+
elsif platform.is_solaris?
18+
pkg.environment "PATH", "/opt/pl-build-tools/bin:$(PATH):/usr/local/bin:/usr/ccs/bin:/usr/sfw/bin:#{settings[:bindir]}"
19+
pkg.environment "CFLAGS", settings[:cflags]
20+
pkg.environment "LDFLAGS", settings[:ldflags]
21+
elsif platform.is_macos?
22+
pkg.environment "LDFLAGS", settings[:ldflags]
23+
pkg.environment "CFLAGS", settings[:cflags]
24+
else
25+
pkg.build_requires "make"
26+
pkg.environment "PATH" => "/opt/pl-build-tools/bin:$$PATH:#{settings[:bindir]}"
27+
pkg.environment "LDFLAGS" => settings[:ldflags]
28+
pkg.environment "CFLAGS" => settings[:cflags]
29+
end
30+
31+
pkg.build_requires 'runtime'
32+
33+
# The system pkg-config has been found to pass incorrect build flags on
34+
# some (but not all) cross-compiled debian-based platforms:
35+
if platform.is_cross_compiled? && platform.is_deb?
36+
pkg.build_requires "pl-pkg-config" unless platform.name =~ /ubuntu-16\.04-ppc64el/
37+
end
38+
39+
pkg.configure do
40+
["./configure --prefix=#{settings[:prefix]} --without-python #{settings[:host]}"]
41+
end
42+
43+
pkg.build do
44+
["#{platform[:make]} VERBOSE=1 -j$(shell expr $(shell #{platform[:num_cores]}) + 1)"]
45+
end
46+
47+
pkg.install do
48+
[
49+
"#{platform[:make]} VERBOSE=1 -j$(shell expr $(shell #{platform[:num_cores]}) + 1) install",
50+
"rm -rf #{settings[:datadir]}/gtk-doc",
51+
"rm -rf #{settings[:datadir]}/doc/#{pkg.get_name}*"
52+
]
53+
end
54+
55+
end

configs/components/libxslt.rb

+60
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
component "libxslt" do |pkg, settings, platform|
2+
pkg.version "1.1.29"
3+
pkg.md5sum "a129d3c44c022de3b9dcf6d6f288d72e"
4+
pkg.url "http://xmlsoft.org/sources/#{pkg.get_name}-#{pkg.get_version}.tar.gz"
5+
pkg.mirror "http://buildsources.delivery.puppetlabs.net/libxslt-#{pkg.get_version}.tar.gz"
6+
7+
pkg.build_requires "libxml2"
8+
9+
pkg.apply_patch 'resources/patches/libxslt/fix-heap-overread.patch'
10+
pkg.apply_patch 'resources/patches/libxslt/check-for-integer-overflow.patch'
11+
12+
if platform.is_aix?
13+
pkg.environment "PATH", "/opt/pl-build-tools/bin:$(PATH)"
14+
elsif platform.is_cross_compiled_linux?
15+
pkg.environment "PATH", "/opt/pl-build-tools/bin:$(PATH):#{settings[:bindir]}"
16+
pkg.environment "CFLAGS", settings[:cflags]
17+
pkg.environment "LDFLAGS", settings[:ldflags]
18+
19+
# libxslt is picky about manually specifying the build host
20+
build = "--build x86_64-linux-gnu"
21+
# don't depend on libgcrypto
22+
disable_crypto = "--without-crypto"
23+
elsif platform.is_solaris?
24+
pkg.environment "PATH", "/opt/pl-build-tools/bin:$(PATH):/usr/local/bin:/usr/ccs/bin:/usr/sfw/bin:#{settings[:bindir]}"
25+
pkg.environment "CFLAGS", settings[:cflags]
26+
pkg.environment "LDFLAGS", settings[:ldflags]
27+
# Configure on Solaris incorrectly passes flags to ld
28+
pkg.apply_patch 'resources/patches/libxslt/disable-version-script.patch'
29+
pkg.apply_patch 'resources/patches/libxslt/Update-missing-script-to-return-0.patch'
30+
elsif platform.is_macos?
31+
pkg.environment "LDFLAGS", settings[:ldflags]
32+
pkg.environment "CFLAGS", settings[:cflags]
33+
else
34+
pkg.build_requires "make"
35+
pkg.environment "PATH" => "/opt/pl-build-tools/bin:$$PATH:#{settings[:bindir]}"
36+
pkg.environment "LDFLAGS" => settings[:ldflags]
37+
pkg.environment "CFLAGS" => settings[:cflags]
38+
end
39+
40+
if platform.is_cross_compiled_linux? || platform.name =~ /solaris-11/
41+
pkg.build_requires "pl-gcc-#{platform.architecture}"
42+
end
43+
44+
pkg.configure do
45+
["./configure --prefix=#{settings[:prefix]} --docdir=/tmp --with-libxml-prefix=#{settings[:prefix]} #{settings[:host]} #{disable_crypto} #{build}"]
46+
end
47+
48+
pkg.build do
49+
["#{platform[:make]} VERBOSE=1 -j$(shell expr $(shell #{platform[:num_cores]}) + 1)"]
50+
end
51+
52+
pkg.install do
53+
[
54+
"#{platform[:make]} VERBOSE=1 -j$(shell expr $(shell #{platform[:num_cores]}) + 1) install",
55+
"rm -rf #{settings[:datadir]}/gtk-doc",
56+
"rm -rf #{settings[:datadir]}/doc/#{pkg.get_name}*"
57+
]
58+
end
59+
60+
end

configs/components/pdk-module-template.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
component "rubygem-pdk" do |pkg, settings, platform|
1+
component "pdk-module-template" do |pkg, settings, platform|
22
# Set url and ref from json file so it's easy for jenkins
33
# to promote new template versions.
44
pkg.load_from_json('configs/components/pdk-module-template.json')

0 commit comments

Comments
 (0)