omnibus-software 23.7.295 → 3002.0.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of omnibus-software might be problematic. Click here for more details.

Files changed (248) hide show
  1. checksums.yaml +4 -4
  2. data/lib/omnibus-software.rb +87 -102
  3. metadata +13 -273
  4. data/.buildkite/hooks/pre-command +0 -9
  5. data/.expeditor/Version_inspector/README.md +0 -21
  6. data/.expeditor/Version_inspector/SW-Version-update.py +0 -243
  7. data/.expeditor/Version_inspector/manual_prod_list.json +0 -29
  8. data/.expeditor/Version_inspector/prod_default_version.json +0 -103
  9. data/.expeditor/Version_inspector/prod_list.json +0 -194
  10. data/.expeditor/Version_inspector/requirements.txt +0 -4
  11. data/.expeditor/Version_inspector/update_prod_default_version.sh +0 -24
  12. data/.expeditor/Version_inspector/update_prod_list.sh +0 -35
  13. data/.expeditor/config.yml +0 -44
  14. data/.expeditor/determine_version.sh +0 -15
  15. data/.expeditor/push_git_tag.sh +0 -12
  16. data/.expeditor/run_linux_tests.sh +0 -16
  17. data/.expeditor/software_upload.pipeline.yml +0 -17
  18. data/.expeditor/verify.pipeline.yml +0 -52
  19. data/.github/CODEOWNERS +0 -5
  20. data/.github/ISSUE_TEMPLATE/BUG_TEMPLATE.md +0 -29
  21. data/.github/ISSUE_TEMPLATE/DESIGN_PROPOSAL.md +0 -40
  22. data/.github/ISSUE_TEMPLATE/ENHANCEMENT_REQUEST_TEMPLATE.md +0 -17
  23. data/.github/ISSUE_TEMPLATE/SUPPORT_QUESTION.md +0 -11
  24. data/.github/dependabot.yml +0 -9
  25. data/.github/lock.yml +0 -1
  26. data/.gitignore +0 -17
  27. data/CHANGELOG.md +0 -18
  28. data/CODE_OF_CONDUCT.md +0 -1
  29. data/CONTRIBUTING.md +0 -1
  30. data/Dockerfile +0 -21
  31. data/Gemfile +0 -10
  32. data/LICENSE +0 -201
  33. data/README.md +0 -99
  34. data/Rakefile +0 -56
  35. data/VERSION +0 -1
  36. data/config/patches/bash/race-condition.patch +0 -15
  37. data/config/patches/bash/updated_race-condition.patch +0 -15
  38. data/config/patches/bzip2/aix_makefile.patch +0 -11
  39. data/config/patches/bzip2/makefile_no_bins.patch +0 -77
  40. data/config/patches/bzip2/makefile_take_env_vars.patch +0 -31
  41. data/config/patches/bzip2/soname_install_dir.patch +0 -11
  42. data/config/patches/curl/curl-aix-disable-alpn.patch +0 -22
  43. data/config/patches/curl/curl-freebsd-hostcheck.patch +0 -10
  44. data/config/patches/erlang/epmd-require-explicitly-adding-loopback-address.patch +0 -84
  45. data/config/patches/erlang/updated-epmd-require-explicitly-adding-loopback-address.patch +0 -75
  46. data/config/patches/expat/configure_xlc_visibility.patch +0 -58
  47. data/config/patches/expat/configure_xlc_visibility_2.4.7.patch +0 -59
  48. data/config/patches/figlet/aix-figlet-cdefs.patch +0 -48
  49. data/config/patches/gdbm/v1.8.3-Makefile.in.patch +0 -32
  50. data/config/patches/git/aix-endian-fix.patch +0 -20
  51. data/config/patches/gtar/aix_extra_case.patch +0 -13
  52. data/config/patches/keepalived/keepalived-1.2.9_opscode_centos_5.patch +0 -15
  53. data/config/patches/libedit/freebsd-vi-fix.patch +0 -24
  54. data/config/patches/libedit/openbsd-weak-alias-fix.patch +0 -48
  55. data/config/patches/libedit/solaris.patch +0 -36
  56. data/config/patches/libffi/libffi-3.2.1-disable-multi-os-directory.patch +0 -83
  57. data/config/patches/libffi/libffi-3.3-arm64.patch +0 -9608
  58. data/config/patches/libxslt/libxslt-solaris-configure.patch +0 -19
  59. data/config/patches/libxslt/libxslt-windows-relocate.patch +0 -12
  60. data/config/patches/libyaml/windows-configure.patch +0 -26
  61. data/config/patches/libzmq/zeromq-4.0.11_mingw_inet_pton.patch +0 -37
  62. data/config/patches/libzmq/zeromq-aix-4.2.2-LARGE_FILES.patch +0 -56
  63. data/config/patches/libzmq/zeromq-aix-4.2.2-atomic-counter-fetch_and_add.patch +0 -59
  64. data/config/patches/logrotate/logrotate_basedir_override.patch +0 -17
  65. data/config/patches/m4/m4-1.4.18-glibc-change-work-around.patch +0 -115
  66. data/config/patches/make/deb-make-glob.patch +0 -31
  67. data/config/patches/ncurses/ncurses-5.9-gcc-5.patch +0 -46
  68. data/config/patches/ncurses/ncurses-5.9-solaris-xopen_source_extended-detection.patch +0 -11
  69. data/config/patches/ncurses/ncurses-clang.patch +0 -43
  70. data/config/patches/ncurses/patch-aa +0 -23
  71. data/config/patches/ncurses/patch-ab +0 -44
  72. data/config/patches/ncurses/patch-ac +0 -40
  73. data/config/patches/ncurses/patch-ad +0 -13
  74. data/config/patches/ncurses/patch-cxx_cursesf.h +0 -22
  75. data/config/patches/ncurses/patch-cxx_cursesm.h +0 -22
  76. data/config/patches/ncurses/patch-ncurses_tinfo_lib__baudrate.c +0 -24
  77. data/config/patches/openssl/openssl-1.0.1f-do-not-build-docs.patch +0 -28
  78. data/config/patches/openssl/openssl-1.0.1j-windows-relocate-dll.patch +0 -44
  79. data/config/patches/openssl/openssl-1.0.1q-fix-compiler-flags-table-for-msys.patch +0 -20
  80. data/config/patches/openssl/openssl-1.0.2x-darwin-arm64.patch +0 -54
  81. data/config/patches/openssl/openssl-1.1.0f-do-not-install-docs.patch +0 -11
  82. data/config/patches/openssl/openssl-3.0.1-do-not-install-docs.patch +0 -22
  83. data/config/patches/openssl-fips/openssl-fips-fix-compiler-flags-table-for-msys.patch +0 -11
  84. data/config/patches/perl/perl-5.18.1-remove_lnsl.patch +0 -441
  85. data/config/patches/perl/perl-5.22.1-remove_lnsl.patch +0 -512
  86. data/config/patches/perl/perl-5.30.0-remove_lnsl.patch +0 -518
  87. data/config/patches/perl/perl-5.32.1-remove_lnsl.patch +0 -456
  88. data/config/patches/perl/perl-5.34.0-remove_lnsl.patch +0 -516
  89. data/config/patches/pkg-config/openbsd-charset.patch +0 -19
  90. data/config/patches/popt/v1.16.ppc64le-configure.patch +0 -18
  91. data/config/patches/redis/password-from-environment.patch +0 -19
  92. data/config/patches/ruby/patch-configure +0 -103
  93. data/config/patches/ruby/remove_nano.patch +0 -10
  94. data/config/patches/ruby/ruby-2.6.7_c99.patch +0 -12
  95. data/config/patches/ruby/ruby-3.0.1-configure.patch +0 -281
  96. data/config/patches/ruby/ruby-3.0.2-configure.patch +0 -251
  97. data/config/patches/ruby/ruby-3.0.5-configure.patch +0 -260
  98. data/config/patches/ruby/ruby-aix-atomic.patch +0 -11
  99. data/config/patches/ruby/ruby-aix-configure_26_and_later.patch +0 -19
  100. data/config/patches/ruby/ruby-aix-vm-core.patch +0 -14
  101. data/config/patches/ruby/ruby-fast-load_26.patch +0 -16
  102. data/config/patches/ruby/ruby-fast-load_31.patch +0 -16
  103. data/config/patches/ruby/ruby-faster-load_26.patch +0 -11
  104. data/config/patches/ruby/ruby-faster-load_27.patch +0 -11
  105. data/config/patches/ruby/ruby-mkmf.patch +0 -29
  106. data/config/patches/ruby/ruby-no-stack-protector-strong.patch +0 -11
  107. data/config/patches/ruby/ruby-no-stack-protector.patch +0 -13
  108. data/config/patches/ruby/ruby-win32_warning_removal.patch +0 -12
  109. data/config/patches/ruby/ruby_aix_openssl.patch +0 -10
  110. data/config/patches/ruby/ruby_aix_ssl_EAGAIN.patch +0 -19
  111. data/config/patches/ruby/rvm-cflags.patch +0 -27
  112. data/config/patches/stunnel/stunnel-on-windows.patch +0 -42
  113. data/config/patches/zlib/zlib-windows-relocate.patch +0 -20
  114. data/config/software/autoconf.rb +0 -46
  115. data/config/software/automake.rb +0 -49
  116. data/config/software/bash.rb +0 -81
  117. data/config/software/berkshelf-no-depselector.rb +0 -46
  118. data/config/software/berkshelf.rb +0 -34
  119. data/config/software/binutils.rb +0 -47
  120. data/config/software/bundler.rb +0 -38
  121. data/config/software/bzip2.rb +0 -57
  122. data/config/software/cacerts.rb +0 -52
  123. data/config/software/chef-gem.rb +0 -35
  124. data/config/software/chef.rb +0 -113
  125. data/config/software/cmake.rb +0 -100
  126. data/config/software/config_guess.rb +0 -37
  127. data/config/software/cpanminus.rb +0 -50
  128. data/config/software/curl.rb +0 -105
  129. data/config/software/delivery-cli.rb +0 -89
  130. data/config/software/dep-selector-libgecode.rb +0 -48
  131. data/config/software/elasticsearch.rb +0 -67
  132. data/config/software/elixir.rb +0 -35
  133. data/config/software/erlang.rb +0 -134
  134. data/config/software/expat.rb +0 -66
  135. data/config/software/fakeroot.rb +0 -41
  136. data/config/software/ffi-yajl.rb +0 -46
  137. data/config/software/figlet-fonts.rb +0 -31
  138. data/config/software/figlet.rb +0 -44
  139. data/config/software/gcc.rb +0 -60
  140. data/config/software/gdbm.rb +0 -54
  141. data/config/software/gecode.rb +0 -64
  142. data/config/software/gem-permissions.rb +0 -43
  143. data/config/software/git-windows.rb +0 -98
  144. data/config/software/git.rb +0 -142
  145. data/config/software/gmp.rb +0 -50
  146. data/config/software/go-uninstall.rb +0 -33
  147. data/config/software/go.rb +0 -123
  148. data/config/software/google-protobuf.rb +0 -45
  149. data/config/software/gtar.rb +0 -64
  150. data/config/software/help2man.rb +0 -40
  151. data/config/software/highline-gem.rb +0 -37
  152. data/config/software/ibm-jre.rb +0 -59
  153. data/config/software/inspec.rb +0 -43
  154. data/config/software/jre-from-jdk.rb +0 -67
  155. data/config/software/keepalived.rb +0 -68
  156. data/config/software/libarchive.rb +0 -74
  157. data/config/software/libedit.rb +0 -76
  158. data/config/software/libffi.rb +0 -71
  159. data/config/software/libgcc.rb +0 -52
  160. data/config/software/libiconv.rb +0 -57
  161. data/config/software/libintl-perl.rb +0 -59
  162. data/config/software/liblzma.rb +0 -63
  163. data/config/software/libossp-uuid.rb +0 -47
  164. data/config/software/libsodium.rb +0 -42
  165. data/config/software/libtool.rb +0 -58
  166. data/config/software/libuuid.rb +0 -44
  167. data/config/software/libxml2.rb +0 -65
  168. data/config/software/libxslt.rb +0 -68
  169. data/config/software/libyajl2-gem.rb +0 -44
  170. data/config/software/libyaml.rb +0 -52
  171. data/config/software/libzmq.rb +0 -93
  172. data/config/software/logrotate.rb +0 -64
  173. data/config/software/lua.rb +0 -48
  174. data/config/software/m4.rb +0 -40
  175. data/config/software/make.rb +0 -46
  176. data/config/software/makedepend.rb +0 -47
  177. data/config/software/mpc.rb +0 -48
  178. data/config/software/mpfr.rb +0 -48
  179. data/config/software/musl.rb +0 -107
  180. data/config/software/mysql2.rb +0 -50
  181. data/config/software/ncurses.rb +0 -162
  182. data/config/software/nginx.rb +0 -57
  183. data/config/software/nodejs-binary.rb +0 -93
  184. data/config/software/nodejs.rb +0 -58
  185. data/config/software/nokogiri.rb +0 -92
  186. data/config/software/omnibus-ctl.rb +0 -42
  187. data/config/software/openresty.rb +0 -96
  188. data/config/software/opensearch.rb +0 -59
  189. data/config/software/openssl-customization.rb +0 -81
  190. data/config/software/openssl-fips.rb +0 -85
  191. data/config/software/openssl.rb +0 -199
  192. data/config/software/patch.rb +0 -48
  193. data/config/software/patchelf.rb +0 -70
  194. data/config/software/pcre.rb +0 -55
  195. data/config/software/perl-extutils-embed.rb +0 -38
  196. data/config/software/perl-extutils-makemaker.rb +0 -47
  197. data/config/software/perl-thread-queue.rb +0 -41
  198. data/config/software/perl.rb +0 -80
  199. data/config/software/perl_pg_driver.rb +0 -46
  200. data/config/software/pg-gem.rb +0 -36
  201. data/config/software/pkg-config-lite.rb +0 -48
  202. data/config/software/pkg-config.rb +0 -68
  203. data/config/software/popt.rb +0 -59
  204. data/config/software/postgresql.rb +0 -71
  205. data/config/software/preparation.rb +0 -31
  206. data/config/software/python.rb +0 -83
  207. data/config/software/rabbitmq.rb +0 -58
  208. data/config/software/rb-readline.rb +0 -33
  209. data/config/software/rbnacl-libsodium.rb +0 -42
  210. data/config/software/rbzmq.rb +0 -44
  211. data/config/software/rebar.rb +0 -42
  212. data/config/software/redis-gem.rb +0 -36
  213. data/config/software/redis.rb +0 -54
  214. data/config/software/relx.rb +0 -39
  215. data/config/software/rsync.rb +0 -57
  216. data/config/software/ruby-cleanup.rb +0 -271
  217. data/config/software/ruby-msys2-devkit.rb +0 -72
  218. data/config/software/ruby-windows-devkit-bash.rb +0 -43
  219. data/config/software/ruby-windows-devkit.rb +0 -84
  220. data/config/software/ruby.rb +0 -315
  221. data/config/software/rubygems.rb +0 -73
  222. data/config/software/runit.rb +0 -68
  223. data/config/software/rust-uninstall.rb +0 -32
  224. data/config/software/rust.rb +0 -97
  225. data/config/software/sequel-gem.rb +0 -36
  226. data/config/software/server-jre.rb +0 -132
  227. data/config/software/server-open-jre.rb +0 -146
  228. data/config/software/setuptools.rb +0 -48
  229. data/config/software/shebang-cleanup.rb +0 -101
  230. data/config/software/sqitch.rb +0 -92
  231. data/config/software/stunnel.rb +0 -88
  232. data/config/software/util-macros.rb +0 -44
  233. data/config/software/version-manifest.rb +0 -33
  234. data/config/software/xproto.rb +0 -43
  235. data/config/software/zlib.rb +0 -88
  236. data/config/templates/git/config.mak.erb +0 -31
  237. data/config/templates/rubygems/register_devtools.rb.erb +0 -33
  238. data/config/templates/runit/runsvdir-start.erb +0 -42
  239. data/docker-compose.yml +0 -15
  240. data/lib/omnibus-software/version.rb +0 -3
  241. data/omnibus-software.gemspec +0 -20
  242. data/scripts/internal_sources.rb +0 -78
  243. data/scripts/internal_sources.yml +0 -419
  244. data/test/Gemfile +0 -10
  245. data/test/config/projects/test.rb +0 -14
  246. data/test/generate_steps.rb +0 -65
  247. data/test/omnibus-build.sh +0 -55
  248. data/test/omnibus.rb +0 -59
@@ -1,107 +0,0 @@
1
- # Copyright 2012-2018 Chef Software, Inc.
2
- # Copyright 2018 Microsoft
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- #
8
- # http://www.apache.org/licenses/LICENSE-2.0
9
-
10
- # Unless required by applicable law or agreed to in writing, software
11
- # distributed under the License is distributed on an "AS IS" BASIS,
12
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- # See the License for the specific language governing permissions and
14
- # limitations under the License.
15
-
16
- #######################################################################
17
- # MUSL libc software definition README #
18
- #######################################################################
19
- #
20
- # The musl (pronounced muscle) library is an alternative C library
21
- # to glibc.
22
- #
23
- # One may incorporate the musl linker into their omnibus build
24
- # definitions in order to build universal linux packages which will be
25
- # linked against the embedded musl-libc. As opposed to linking against
26
- # the system glibc that may vary from platform to platform.
27
- #
28
- # This is an easy way to create linux packages that have far greater
29
- # portability across linux platforms than have been traditionally
30
- # produced with omnibus. You may produce one binary artifact, with
31
- # a singular build pipeline, that will run on all supported versions
32
- # of Ubuntu and CentOS. As opposed to running a separate build
33
- # pipeline for each platform and version which you intend to support.
34
- #
35
- # In order to use the musl linker in your project, simply override
36
- # the `CC` environment variable in your project definition(s) so that
37
- # the musl-gcc wrapper takes action to link all the C code in your
38
- # project against the musl-libc libraries. The below snippet will
39
- # need to be invoked before any dependencies in your project that
40
- # compile C code. Note that the musl-gcc wrapper is dependent on
41
- # having a system gcc in-place. This software definition is
42
- # dependent on the gcc location being symlinked, or installed, at
43
- # `/usr/bin/gcc`.
44
- #
45
- # Example project definition override:
46
- #
47
- # if linux?
48
- # ENV['CC'] = "#{install_dir}/embedded/bin/musl-gcc"
49
- # dependency 'musl'
50
- # end
51
- #
52
- # How that works:
53
- #
54
- # 1. Set `CC` equal to the embedded musl-gcc wrapper in project
55
- # definition. e.g. chef-workstation
56
- #
57
- # 2. The musl software definition overrides `CC=/usr/bin/gcc` and
58
- # builds musl-libc and installs in $install_dir/embedded.
59
- # e.g. /opt/chef/embedded/(lib|bin)
60
- #
61
- # 3. Software definition (e.g. ruby) picks up `CC` environment
62
- # variable from project definition and uses the embedded musl-gcc
63
- # wrapper to link the code against the embedded musl libraries.
64
- #
65
- #####################################################################
66
- #
67
- # expeditor/ignore: deprecated 2021-04
68
-
69
- name "musl"
70
- default_version "1.2.2"
71
-
72
- license "MIT"
73
- license_file "COPYRIGHT"
74
-
75
- # versions_list: https://www.musl-libc.org/releases/ filter=*.tar.gz
76
- version("1.2.2") { source sha256: "9b969322012d796dc23dda27a35866034fa67d8fb67e0e2c45c913c3d43219dd" }
77
- version("1.2.1") { source sha256: "68af6e18539f646f9c41a3a2bb25be4a5cfa5a8f65f0bb647fd2bbfdf877e84b" }
78
- version("1.1.22") { source sha256: "8b0941a48d2f980fd7036cfbd24aa1d414f03d9a0652ecbd5ec5c7ff1bee29e3" }
79
- version("1.1.20") { source sha256: "44be8771d0e6c6b5f82dd15662eb2957c9a3173a19a8b49966ac0542bbd40d61" }
80
- version("1.1.19") { source sha256: "db59a8578226b98373f5b27e61f0dd29ad2456f4aa9cec587ba8c24508e4c1d9" }
81
-
82
- source url: "https://www.musl-libc.org/releases/musl-#{version}.tar.gz"
83
-
84
- relative_path "musl-#{version}"
85
-
86
- build do
87
- # The musl definition must be compiled with a system gcc.
88
- # This isn't a self-hosting build definition wherein
89
- # musl compiles itself.
90
- env = with_standard_compiler_flags(with_embedded_path)
91
- env["CC"] = "/usr/bin/gcc"
92
-
93
- command "./configure" \
94
- " --prefix=#{install_dir}/embedded" \
95
- " --syslibdir=#{install_dir}/embedded/lib", env: env
96
-
97
- make env: env
98
- make "install", env: env
99
-
100
- # Ruby compilation requires the linux kernel headers to be in the
101
- # same location as the Libc headers. For this to work correctly
102
- # will need to have a kernel-dev(el) package installed on your
103
- # omnibus builder.
104
- %w{asm asm-generic linux}.each do |d|
105
- copy "/usr/include/#{d}", "#{install_dir}/embedded/include"
106
- end
107
- end
@@ -1,50 +0,0 @@
1
- #
2
- # Copyright 2012-2014 Chef Software, Inc.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- #
8
- # http://www.apache.org/licenses/LICENSE-2.0
9
- #
10
- # Unless required by applicable law or agreed to in writing, software
11
- # distributed under the License is distributed on an "AS IS" BASIS,
12
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- # See the License for the specific language governing permissions and
14
- # limitations under the License.
15
- #
16
-
17
- #
18
- # Enable MySQL support by adding the following to '/etc/chef-server/chef-server.rb':
19
- #
20
- # database_type = 'mysql'
21
- # postgresql['enable'] = false
22
- # mysql['enable'] = true
23
- # mysql['destructive_migrate'] = true
24
- #
25
- # Then run 'chef-server-ctl reconfigure'
26
- #
27
-
28
- versions_to_install = ["0.3.6", "0.3.7"]
29
-
30
- name "mysql2"
31
- default_version versions_to_install.join("-")
32
-
33
- dependency "ruby"
34
-
35
- build do
36
- env = with_standard_compiler_flags(with_embedded_path)
37
-
38
- cache_path = "#{install_dir}/embedded/service/gem/ruby/1.9.1/cache"
39
-
40
- gem "install rake-compiler" \
41
- " --version '0.8.3'" \
42
- " --no-document", env: env
43
-
44
- mkdir cache_path
45
-
46
- versions_to_install.each do |version|
47
- gem "fetch mysql2" \
48
- " --version '#{version}'", env: env, cwd: cache_path
49
- end
50
- end
@@ -1,162 +0,0 @@
1
- #
2
- # Copyright 2012-2019, Chef Software Inc.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- #
8
- # http://www.apache.org/licenses/LICENSE-2.0
9
- #
10
- # Unless required by applicable law or agreed to in writing, software
11
- # distributed under the License is distributed on an "AS IS" BASIS,
12
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- # See the License for the specific language governing permissions and
14
- # limitations under the License.
15
- #
16
-
17
- name "ncurses"
18
- default_version "6.4"
19
-
20
- license "MIT"
21
- license_file "http://invisible-island.net/ncurses/ncurses-license.html"
22
- license_file "http://invisible-island.net/ncurses/ncurses.faq.html"
23
- skip_transitive_dependency_licensing true
24
-
25
- dependency "config_guess"
26
-
27
- # versions_list: https://ftp.gnu.org/gnu/ncurses/ filter=*.tar.gz
28
- version("6.4") { source sha256: "6931283d9ac87c5073f30b6290c4c75f21632bb4fc3603ac8100812bed248159" }
29
- version("6.3") { source sha256: "97fc51ac2b085d4cde31ef4d2c3122c21abc217e9090a43a30fc5ec21684e059" }
30
- version("6.2") { source sha256: "30306e0c76e0f9f1f0de987cf1c82a5c21e1ce6568b9227f7da5b71cbea86c9d" }
31
- version("6.1") { source sha256: "aa057eeeb4a14d470101eff4597d5833dcef5965331be3528c08d99cebaa0d17" }
32
- version("5.9") { source sha256: "9046298fb440324c9d4135ecea7879ffed8546dd1b58e59430ea07a4633f563b" }
33
-
34
- source url: "https://ftp.gnu.org/gnu/ncurses/ncurses-#{version}.tar.gz"
35
- internal_source url: "#{ENV["ARTIFACTORY_REPO_URL"]}/#{name}/#{name}-#{version}.tar.gz",
36
- authorization: "X-JFrog-Art-Api:#{ENV["ARTIFACTORY_TOKEN"]}"
37
-
38
- relative_path "ncurses-#{version}"
39
-
40
- ########################################################################
41
- #
42
- # wide-character support:
43
- # Ruby 1.9 optimistically builds against libncursesw for UTF-8
44
- # support. In order to prevent Ruby from linking against a
45
- # package-installed version of ncursesw, we build wide-character
46
- # support into ncurses with the "--enable-widec" configure parameter.
47
- # To support other applications and libraries that still try to link
48
- # against libncurses, we also have to create non-wide libraries.
49
- #
50
- # The methods below are adapted from:
51
- # http://www.linuxfromscratch.org/lfs/view/development/chapter06/ncurses.html
52
- #
53
- ########################################################################
54
-
55
- build do
56
- env = with_standard_compiler_flags(with_embedded_path)
57
- env.delete("CPPFLAGS")
58
-
59
- if smartos?
60
- # SmartOS is Illumos Kernel, plus NetBSD userland with a GNU toolchain.
61
- # These patches are taken from NetBSD pkgsrc and provide GCC 4.7.0
62
- # compatibility:
63
- # http://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/devel/ncurses/patches/
64
- patch source: "patch-aa", plevel: 0, env: env
65
- patch source: "patch-ab", plevel: 0, env: env
66
- patch source: "patch-ac", plevel: 0, env: env
67
- patch source: "patch-ad", plevel: 0, env: env
68
- patch source: "patch-cxx_cursesf.h", plevel: 0, env: env
69
- patch source: "patch-cxx_cursesm.h", plevel: 0, env: env
70
-
71
- # Chef patches - <sean@sean.io>
72
- # The configure script from the pristine tarball detects xopen_source_extended incorrectly.
73
- # Manually working around a false positive.
74
- patch source: "ncurses-5.9-solaris-xopen_source_extended-detection.patch", plevel: 0, env: env
75
- end
76
-
77
- update_config_guess
78
-
79
- # AIX's old version of patch doesn't like the patches here
80
- unless aix?
81
- if version == "5.9"
82
- # Patch to add support for GCC 5, doesn't break previous versions
83
- patch source: "ncurses-5.9-gcc-5.patch", plevel: 1, env: env
84
- end
85
- end
86
-
87
- if mac_os_x? ||
88
- # Clang became the default compiler in FreeBSD 10+
89
- (freebsd? && ohai["os_version"].to_i >= 1000024)
90
- # References:
91
- # https://github.com/Homebrew/homebrew-dupes/issues/43
92
- # http://invisible-island.net/ncurses/NEWS.html#t20110409
93
- #
94
- # Patches ncurses for clang compiler. Changes have been accepted into
95
- # upstream, but occurred shortly after the 5.9 release. We should be able
96
- # to remove this after upgrading to any release created after June 2012
97
- patch source: "ncurses-clang.patch", env: env
98
- end
99
-
100
- if openbsd?
101
- patch source: "patch-ncurses_tinfo_lib__baudrate.c", plevel: 0, env: env
102
- end
103
-
104
- configure_command = [
105
- "./configure",
106
- "--prefix=#{install_dir}/embedded",
107
- "--enable-overwrite",
108
- "--with-shared",
109
- "--with-termlib",
110
- "--without-ada",
111
- "--without-cxx-binding",
112
- "--without-debug",
113
- "--without-manpages",
114
- ]
115
-
116
- if aix?
117
- # AIX kinda needs 5.9-20140621 or later
118
- # because of a naming snafu in shared library naming.
119
- # see http://invisible-island.net/ncurses/NEWS.html#t20140621
120
-
121
- # let libtool deal with library silliness
122
- configure_command << "--with-libtool=\"#{install_dir}/embedded/bin/libtool\""
123
-
124
- # stick with just the shared libs on AIX
125
- configure_command << "--without-normal"
126
-
127
- # ncurses's ./configure incorrectly
128
- # "figures out" ARFLAGS if you try
129
- # to set them yourself
130
- env.delete("ARFLAGS")
131
-
132
- # use gnu install from the coreutils IBM rpm package
133
- env["INSTALL"] = "/opt/freeware/bin/install"
134
- end
135
-
136
- command configure_command.join(" "), env: env
137
-
138
- # unfortunately, libtool may try to link to libtinfo
139
- # before it has been assembled; so we have to build in serial
140
- make "libs", env: env if aix?
141
-
142
- make "-j #{workers}", env: env
143
- make "-j #{workers} install", env: env
144
-
145
- # Build non-wide-character libraries
146
- make "distclean", env: env
147
- configure_command << "--enable-widec"
148
-
149
- command configure_command.join(" "), env: env
150
- make "libs", env: env if aix?
151
- make "-j #{workers}", env: env
152
-
153
- # Installing the non-wide libraries will also install the non-wide
154
- # binaries, which doesn't happen to be a problem since we don't
155
- # utilize the ncurses binaries in private-chef (or oss chef)
156
- make "-j #{workers} install", env: env
157
-
158
- # Ensure embedded ncurses wins in the LD search path
159
- if smartos?
160
- link "#{install_dir}/embedded/lib/libcurses.so", "#{install_dir}/embedded/lib/libcurses.so.1"
161
- end
162
- end
@@ -1,57 +0,0 @@
1
- #
2
- # Copyright 2012-2016 Chef Software, Inc.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- #
8
- # http://www.apache.org/licenses/LICENSE-2.0
9
- #
10
- # Unless required by applicable law or agreed to in writing, software
11
- # distributed under the License is distributed on an "AS IS" BASIS,
12
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- # See the License for the specific language governing permissions and
14
- # limitations under the License.
15
- #
16
- ## expeditor/ignore: deprecated 2022 03
17
-
18
- name "nginx"
19
- default_version "1.21.4"
20
-
21
- dependency "pcre"
22
- dependency "openssl"
23
- dependency "zlib"
24
-
25
- license "BSD-2-Clause"
26
- license_file "LICENSE"
27
-
28
- source url: "https://nginx.org/download/nginx-#{version}.tar.gz"
29
- internal_source url: "#{ENV["ARTIFACTORY_REPO_URL"]}/#{name}/#{name}-#{version}.tar.gz",
30
- authorization: "X-JFrog-Art-Api:#{ENV["ARTIFACTORY_TOKEN"]}"
31
-
32
- # versions_list: https://nginx.org/download/ filter=*.tar.gz
33
- version("1.21.4") { source sha256: "d1f72f474e71bcaaf465dcc7e6f7b6a4705e4b1ed95c581af31df697551f3bfe" }
34
- version("1.20.1") { source sha256: "e462e11533d5c30baa05df7652160ff5979591d291736cfa5edb9fd2edb48c49" }
35
- version("1.19.9") { source sha256: "2e35dff06a9826e8aca940e9e8be46b7e4b12c19a48d55bfc2dc28fc9cc7d841" }
36
- version("1.19.8") { source sha256: "308919b1a1359315a8066578472f998f14cb32af8de605a3743acca834348b05" }
37
-
38
- relative_path "nginx-#{version}"
39
-
40
- build do
41
- env = with_standard_compiler_flags(with_embedded_path)
42
-
43
- command "./configure" \
44
- " --prefix=#{install_dir}/embedded" \
45
- " --with-http_ssl_module" \
46
- " --with-http_stub_status_module" \
47
- " --with-ipv6" \
48
- " --with-debug" \
49
- " --with-cc-opt=\"-L#{install_dir}/embedded/lib -I#{install_dir}/embedded/include\"" \
50
- " --with-ld-opt=-L#{install_dir}/embedded/lib", env: env
51
-
52
- make "-j #{workers}", env: env
53
- make "install", env: env
54
-
55
- # Ensure the logs directory is available on rebuild from git cache
56
- touch "#{install_dir}/embedded/logs/.gitkeep"
57
- end
@@ -1,93 +0,0 @@
1
- #
2
- # Copyright 2016 Chef Software, Inc.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- #
8
- # http://www.apache.org/licenses/LICENSE-2.0
9
- #
10
- # Unless required by applicable law or agreed to in writing, software
11
- # distributed under the License is distributed on an "AS IS" BASIS,
12
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- # See the License for the specific language governing permissions and
14
- # limitations under the License.
15
- #
16
-
17
- #
18
- # nodejs-binary provides nodejs using the binary packages provided by
19
- # the upstream. It does not install it into any of our standard
20
- # paths, so builds that require nodejs need to add embedded/nodejs/bin
21
- # to their path.
22
- #
23
- # Since nodejs is often a build-time-only dependency, it can then be
24
- # easily removed with remove-nodejs.
25
- #
26
- name "nodejs-binary"
27
- default_version "6.7.0"
28
-
29
- license "MIT"
30
- license_file "LICENSE"
31
- skip_transitive_dependency_licensing true
32
-
33
- version "6.7.0" do
34
- source_hash = if ppc64le?
35
- "de8e4ca71caa8be6eaf80e65b89de2a6d152fa4ce08efcbc90ce7e1bfdf130e7"
36
- elsif ppc64?
37
- "e8ce540b592d337304a10f4eb19bb4efee889c6676c5f188d072bfb2a8089927"
38
- elsif s390x?
39
- "e0f2616b4beb4c2505edb19e3cbedbf3d1c958441517cc9a1e918f6feaa4b95b"
40
- else
41
- "abe81b4150917cdbbeebc6c6b85003b80c972d32c8f5dfd2970d32e52a6877af"
42
- end
43
- source sha256: source_hash
44
- end
45
-
46
- # These are the last versions of their series that provide both ppc64 and ppc64le versions
47
- version "8.9.1" do
48
- source_hash = if ppc64le?
49
- "d3e11a9ef301afdecb10ed26470492fd03402b86bf9efc3f89a9aef541bf9a2c"
50
- elsif ppc64?
51
- "7ab8c4bf36364624b6bc7610319f1e2c32a7c882aa6392ce285faaee39597dce"
52
- elsif s390x?
53
- "48160ddaa7397cf85ca0cf333cc87dc3485956c75a3cdf98f04735bb81b37da6"
54
- else # x64
55
- "0e49da19cdf4c89b52656e858346775af21f1953c308efbc803b665d6069c15c"
56
- end
57
- source sha256: source_hash
58
- end
59
-
60
- # These are the last versions of their series that provide both ppc64 and ppc64le versions
61
- version "9.2.0" do
62
- source_hash = if ppc64le?
63
- "9a173db0c0b88dcddf08542736c597c87bf86d536df8fa65a4fdff75e7bb4243"
64
- elsif ppc64?
65
- "34b3d6d7e6036e38aacab6754f55711ac9582a3d963a06f5f75e07e2d986d2a2"
66
- elsif s390x?
67
- "c5f6315da901bbb54ffa0b23b58cd0b46f0ebfbe2a4f1847ec1d330602000bfd"
68
- else # x64
69
- "36ef2b3d1a99555390835d6fd4ad194a769df6841cbcc46cba0dffbaf6e6aa34"
70
- end
71
- source sha256: source_hash
72
- end
73
-
74
- arch_ext = if ppc64le?
75
- "ppc64le"
76
- elsif ppc64?
77
- "ppc64"
78
- elsif s390x?
79
- "s390x"
80
- else
81
- "x64"
82
- end
83
-
84
- source url: "https://nodejs.org/dist/v#{version}/node-v#{version}-linux-#{arch_ext}.tar.gz"
85
- internal_source url: "#{ENV["ARTIFACTORY_REPO_URL"]}/#{name}/#{name}-#{version}.tar.gz",
86
- authorization: "X-JFrog-Art-Api:#{ENV["ARTIFACTORY_TOKEN"]}"
87
-
88
- relative_path "node-v#{version}-linux-#{arch_ext}"
89
-
90
- build do
91
- mkdir "#{install_dir}/embedded/nodejs"
92
- sync "#{project_dir}/", "#{install_dir}/embedded/nodejs"
93
- end
@@ -1,58 +0,0 @@
1
- #
2
- # Copyright:: Chef Software, Inc.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- #
8
- # http://www.apache.org/licenses/LICENSE-2.0
9
- #
10
- # Unless required by applicable law or agreed to in writing, software
11
- # distributed under the License is distributed on an "AS IS" BASIS,
12
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- # See the License for the specific language governing permissions and
14
- # limitations under the License.
15
- #
16
- # expeditor/ignore: deprecated 2021-11
17
-
18
- name "nodejs"
19
-
20
- license "MIT"
21
- license_file "LICENSE"
22
- skip_transitive_dependency_licensing true
23
-
24
- default_version "0.10.48"
25
-
26
- dependency "python"
27
-
28
- default_src_url = "https://nodejs.org/dist/v#{version}/node-v#{version}.tar.gz"
29
-
30
- version "12.22.3" do
31
- source url: default_src_url, sha256: "30acec454f26a168afe6d1c55307c5186ef23dba66527cc34e4497d01f91bda4"
32
- end
33
-
34
- version "0.10.48" do
35
- source url: default_src_url, sha256: "27a1765b86bf4ec9833e2f89e8421ba4bc01a326b883f125de2f0b3494bd5549"
36
- end
37
-
38
- relative_path "node-v#{version}"
39
-
40
- build do
41
- env = with_standard_compiler_flags(with_embedded_path)
42
-
43
- config_command = [
44
- "--prefix=#{install_dir}/embedded",
45
- "--without-dtrace",
46
- ]
47
-
48
- if version.satisfies?(">= 12")
49
- config_command << "--without-node-snapshot"
50
- config_command << "--without-inspector"
51
- config_command << "--without-intl"
52
- end
53
-
54
- configure(*config_command, env: env)
55
-
56
- make "-j #{workers}", env: env
57
- make "install", env: env
58
- end
@@ -1,92 +0,0 @@
1
- # Copyright:: Copyright (c) Chef Software Inc.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
- #
15
- # expeditor/ignore: no version pinning
16
-
17
- name "nokogiri"
18
-
19
- license "MIT"
20
- license_file "https://raw.githubusercontent.com/sparklemotion/nokogiri/master/LICENSE.md"
21
- # We install only nokogiri from rubygems here.
22
- skip_transitive_dependency_licensing true
23
-
24
- dependency "ruby"
25
-
26
- using_prebuilt_ruby = windows? && (project.overrides[:ruby].nil? || project.overrides[:ruby][:version] == "ruby-windows")
27
- unless using_prebuilt_ruby
28
- dependency "libxml2"
29
- dependency "libxslt"
30
- dependency "liblzma"
31
- dependency "zlib"
32
- end
33
-
34
- #
35
- # NOTE: As of nokogiri 1.6.4 it will superficially 'work' to remove most
36
- # of the nonsense in this file and simply gem install nokogiri on most
37
- # platforms. This is because nokogiri has improved its packaging so that
38
- # all of the dynamic libraries are 'statically' compiled into nokogiri.so
39
- # with -lz -llzma -lxslt -lxml2, etc. What will happen in that case is
40
- # that the nokogiri build system will pull zlib, lzma, etc out of the
41
- # system and link it inside of nokogiri.so and ship it as one big
42
- # dynamic library. This will essentially defeat one aspect of our
43
- # health_check system so that we will be shipping an embedded zlib inside
44
- # of nokogiri.so that we do not track and will have a high likelihood that
45
- # if there are security errata that we ship exploitable code without
46
- # knowing it. For all other purposes, the built executable will work,
47
- # however, so it is likely that someone will 'discover' that 'everything
48
- # works' and remove all the junk in this file. That will, however, have
49
- # unintended side effects. We do not have a mechanism to inspect the
50
- # nokogiri.so and determine that it is shipping with an embedded zlib that
51
- # does not match the one that we ship in /opt/chef/embedded/lib, so there
52
- # will be nothing that alerts or fails on this.
53
- #
54
- # TL;DR: do not remove --use-system-libraries even if everything appears to
55
- # be green after you do.
56
- #
57
- build do
58
- env = with_standard_compiler_flags(with_embedded_path)
59
-
60
- gem_command = [ "install nokogiri" ]
61
- gem_command << "--version '#{version}'" unless version.nil?
62
-
63
- # windows uses the 'fat' precompiled binaries'
64
- unless using_prebuilt_ruby
65
- # Tell nokogiri to use the system libraries instead of compiling its own
66
- env["NOKOGIRI_USE_SYSTEM_LIBRARIES"] = "true"
67
-
68
- gem_command += [
69
- "--platform ruby",
70
- "--conservative",
71
- "--minimal-deps",
72
- "--",
73
- "--use-system-libraries",
74
- "--with-xml2-lib=#{install_dir}/embedded/lib",
75
- "--with-xml2-include=#{install_dir}/embedded/include/libxml2",
76
- "--with-xslt-lib=#{install_dir}/embedded/lib",
77
- "--with-xslt-include=#{install_dir}/embedded/include/libxslt",
78
- "--without-iconv",
79
- "--with-zlib-dir=#{install_dir}/embedded",
80
- ]
81
- end
82
-
83
- gem gem_command.join(" "), env: env
84
-
85
- # The mini-portile2 gem ships with some test fixture data compressed in a format Apple's notarization
86
- # service cannot understand. We need to delete that archive to pass notarization.
87
- block "Delete test folder of mini-portile2 gem so downstream projects pass notarization" do
88
- env["VISUAL"] = "echo"
89
- gem_install_dir = shellout!("#{install_dir}/embedded/bin/gem open mini_portile2", env: env).stdout.chomp
90
- remove_directory "#{gem_install_dir}/test"
91
- end
92
- end
@@ -1,42 +0,0 @@
1
- #
2
- # Copyright 2012-2015 Chef Software, Inc.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- #
8
- # http://www.apache.org/licenses/LICENSE-2.0
9
- #
10
- # Unless required by applicable law or agreed to in writing, software
11
- # distributed under the License is distributed on an "AS IS" BASIS,
12
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- # See the License for the specific language governing permissions and
14
- # limitations under the License.
15
- #
16
-
17
- name "omnibus-ctl"
18
- default_version "v0.6.0"
19
-
20
- license "Apache-2.0"
21
- license_file "https://raw.githubusercontent.com/chef/omnibus-ctl/main/LICENSE"
22
- # Even though omnibus-ctl is a gem, it does not have any dependencies.
23
- skip_transitive_dependency_licensing true
24
-
25
- dependency "ruby"
26
-
27
- # versions_list: https://github.com/chef/omnibus-ctl/tags filter=*.tar.gz
28
- source git: "https://github.com/chef/omnibus-ctl.git"
29
-
30
- relative_path "omnibus-ctl"
31
-
32
- build do
33
- env = with_standard_compiler_flags(with_embedded_path)
34
-
35
- # Remove existing built gems in case they exist in the current dir
36
- delete "omnibus-ctl-*.gem"
37
-
38
- gem "build omnibus-ctl.gemspec", env: env
39
- gem "install omnibus-ctl-*.gem --no-document ", env: env
40
-
41
- touch "#{install_dir}/embedded/service/omnibus-ctl/.gitkeep"
42
- end