omnibus-software 22.11.239
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.expeditor/Version_inspector/README.md +21 -0
- data/.expeditor/Version_inspector/SW-Version-update.py +243 -0
- data/.expeditor/Version_inspector/manual_prod_list.json +29 -0
- data/.expeditor/Version_inspector/prod_default_version.json +103 -0
- data/.expeditor/Version_inspector/prod_list.json +194 -0
- data/.expeditor/Version_inspector/requirements.txt +4 -0
- data/.expeditor/Version_inspector/update_prod_default_version.sh +24 -0
- data/.expeditor/Version_inspector/update_prod_list.sh +35 -0
- data/.expeditor/config.yml +33 -0
- data/.expeditor/determine_version.sh +15 -0
- data/.expeditor/push_git_tag.sh +12 -0
- data/.expeditor/run_linux_tests.sh +16 -0
- data/.expeditor/verify.pipeline.yml +52 -0
- data/.github/CODEOWNERS +5 -0
- data/.github/ISSUE_TEMPLATE/BUG_TEMPLATE.md +29 -0
- data/.github/ISSUE_TEMPLATE/DESIGN_PROPOSAL.md +40 -0
- data/.github/ISSUE_TEMPLATE/ENHANCEMENT_REQUEST_TEMPLATE.md +17 -0
- data/.github/ISSUE_TEMPLATE/SUPPORT_QUESTION.md +11 -0
- data/.github/dependabot.yml +9 -0
- data/.github/lock.yml +1 -0
- data/.gitignore +17 -0
- data/CODE_OF_CONDUCT.md +1 -0
- data/CONTRIBUTING.md +1 -0
- data/Dockerfile +21 -0
- data/Gemfile +10 -0
- data/LICENSE +201 -0
- data/README.md +99 -0
- data/Rakefile +56 -0
- data/VERSION +1 -0
- data/config/patches/bash/race-condition.patch +15 -0
- data/config/patches/bzip2/aix_makefile.patch +11 -0
- data/config/patches/bzip2/makefile_no_bins.patch +77 -0
- data/config/patches/bzip2/makefile_take_env_vars.patch +31 -0
- data/config/patches/bzip2/soname_install_dir.patch +11 -0
- data/config/patches/curl/curl-aix-disable-alpn.patch +22 -0
- data/config/patches/curl/curl-freebsd-hostcheck.patch +10 -0
- data/config/patches/erlang/epmd-require-explicitly-adding-loopback-address.patch +84 -0
- data/config/patches/erlang/updated-epmd-require-explicitly-adding-loopback-address.patch +75 -0
- data/config/patches/expat/configure_xlc_visibility.patch +58 -0
- data/config/patches/expat/configure_xlc_visibility_2.4.7.patch +59 -0
- data/config/patches/figlet/aix-figlet-cdefs.patch +48 -0
- data/config/patches/gdbm/v1.8.3-Makefile.in.patch +32 -0
- data/config/patches/git/aix-endian-fix.patch +20 -0
- data/config/patches/gtar/aix_extra_case.patch +13 -0
- data/config/patches/keepalived/keepalived-1.2.9_opscode_centos_5.patch +15 -0
- data/config/patches/libedit/freebsd-vi-fix.patch +24 -0
- data/config/patches/libedit/openbsd-weak-alias-fix.patch +48 -0
- data/config/patches/libedit/solaris.patch +36 -0
- data/config/patches/libffi/libffi-3.2.1-disable-multi-os-directory.patch +83 -0
- data/config/patches/libffi/libffi-3.3-arm64.patch +9608 -0
- data/config/patches/libxslt/libxslt-solaris-configure.patch +19 -0
- data/config/patches/libxslt/libxslt-windows-relocate.patch +12 -0
- data/config/patches/libyaml/windows-configure.patch +26 -0
- data/config/patches/libzmq/zeromq-4.0.11_mingw_inet_pton.patch +37 -0
- data/config/patches/libzmq/zeromq-aix-4.2.2-LARGE_FILES.patch +56 -0
- data/config/patches/libzmq/zeromq-aix-4.2.2-atomic-counter-fetch_and_add.patch +59 -0
- data/config/patches/logrotate/logrotate_basedir_override.patch +17 -0
- data/config/patches/m4/m4-1.4.18-glibc-change-work-around.patch +115 -0
- data/config/patches/make/deb-make-glob.patch +31 -0
- data/config/patches/ncurses/ncurses-5.9-gcc-5.patch +46 -0
- data/config/patches/ncurses/ncurses-5.9-solaris-xopen_source_extended-detection.patch +11 -0
- data/config/patches/ncurses/ncurses-clang.patch +43 -0
- data/config/patches/ncurses/patch-aa +23 -0
- data/config/patches/ncurses/patch-ab +44 -0
- data/config/patches/ncurses/patch-ac +40 -0
- data/config/patches/ncurses/patch-ad +13 -0
- data/config/patches/ncurses/patch-cxx_cursesf.h +22 -0
- data/config/patches/ncurses/patch-cxx_cursesm.h +22 -0
- data/config/patches/ncurses/patch-ncurses_tinfo_lib__baudrate.c +24 -0
- data/config/patches/openssl/openssl-1.0.1f-do-not-build-docs.patch +28 -0
- data/config/patches/openssl/openssl-1.0.1j-windows-relocate-dll.patch +20 -0
- data/config/patches/openssl/openssl-1.0.1q-fix-compiler-flags-table-for-msys.patch +20 -0
- data/config/patches/openssl/openssl-1.0.2x-darwin-arm64.patch +54 -0
- data/config/patches/openssl/openssl-1.1.0f-do-not-install-docs.patch +11 -0
- data/config/patches/openssl/openssl-3.0.1-do-not-install-docs.patch +22 -0
- data/config/patches/openssl-fips/openssl-fips-fix-compiler-flags-table-for-msys.patch +11 -0
- data/config/patches/perl/perl-5.18.1-remove_lnsl.patch +441 -0
- data/config/patches/perl/perl-5.22.1-remove_lnsl.patch +512 -0
- data/config/patches/perl/perl-5.30.0-remove_lnsl.patch +518 -0
- data/config/patches/perl/perl-5.32.1-remove_lnsl.patch +456 -0
- data/config/patches/perl/perl-5.34.0-remove_lnsl.patch +516 -0
- data/config/patches/pkg-config/openbsd-charset.patch +19 -0
- data/config/patches/popt/v1.16.ppc64le-configure.patch +18 -0
- data/config/patches/redis/password-from-environment.patch +19 -0
- data/config/patches/ruby/patch-configure +103 -0
- data/config/patches/ruby/remove_nano.patch +10 -0
- data/config/patches/ruby/ruby-2.6.7_c99.patch +12 -0
- data/config/patches/ruby/ruby-3.0.1-configure.patch +281 -0
- data/config/patches/ruby/ruby-3.0.2-configure.patch +251 -0
- data/config/patches/ruby/ruby-aix-atomic.patch +11 -0
- data/config/patches/ruby/ruby-aix-configure_26_and_later.patch +19 -0
- data/config/patches/ruby/ruby-aix-vm-core.patch +14 -0
- data/config/patches/ruby/ruby-fast-load_26.patch +16 -0
- data/config/patches/ruby/ruby-fast-load_31.patch +16 -0
- data/config/patches/ruby/ruby-faster-load_26.patch +11 -0
- data/config/patches/ruby/ruby-faster-load_27.patch +11 -0
- data/config/patches/ruby/ruby-mkmf.patch +29 -0
- data/config/patches/ruby/ruby-no-stack-protector-strong.patch +11 -0
- data/config/patches/ruby/ruby-no-stack-protector.patch +13 -0
- data/config/patches/ruby/ruby-win32_warning_removal.patch +12 -0
- data/config/patches/ruby/ruby_aix_openssl.patch +10 -0
- data/config/patches/ruby/ruby_aix_ssl_EAGAIN.patch +19 -0
- data/config/patches/ruby/rvm-cflags.patch +27 -0
- data/config/patches/stunnel/stunnel-on-windows.patch +42 -0
- data/config/patches/zlib/zlib-windows-relocate.patch +20 -0
- data/config/software/autoconf.rb +46 -0
- data/config/software/automake.rb +49 -0
- data/config/software/bash.rb +72 -0
- data/config/software/berkshelf-no-depselector.rb +46 -0
- data/config/software/berkshelf.rb +34 -0
- data/config/software/binutils.rb +47 -0
- data/config/software/bundler.rb +38 -0
- data/config/software/bzip2.rb +55 -0
- data/config/software/cacerts.rb +50 -0
- data/config/software/chef-gem.rb +35 -0
- data/config/software/chef.rb +112 -0
- data/config/software/cmake.rb +94 -0
- data/config/software/config_guess.rb +37 -0
- data/config/software/cpanminus.rb +49 -0
- data/config/software/curl.rb +103 -0
- data/config/software/delivery-cli.rb +89 -0
- data/config/software/dep-selector-libgecode.rb +48 -0
- data/config/software/elasticsearch.rb +61 -0
- data/config/software/elixir.rb +35 -0
- data/config/software/erlang.rb +134 -0
- data/config/software/expat.rb +63 -0
- data/config/software/fakeroot.rb +41 -0
- data/config/software/ffi-yajl.rb +46 -0
- data/config/software/figlet-fonts.rb +31 -0
- data/config/software/figlet.rb +44 -0
- data/config/software/gcc.rb +60 -0
- data/config/software/gdbm.rb +54 -0
- data/config/software/gecode.rb +62 -0
- data/config/software/gem-permissions.rb +43 -0
- data/config/software/git-windows.rb +96 -0
- data/config/software/git.rb +138 -0
- data/config/software/gmp.rb +48 -0
- data/config/software/go-uninstall.rb +33 -0
- data/config/software/go.rb +116 -0
- data/config/software/google-protobuf.rb +45 -0
- data/config/software/gtar.rb +62 -0
- data/config/software/help2man.rb +40 -0
- data/config/software/highline-gem.rb +37 -0
- data/config/software/ibm-jre.rb +59 -0
- data/config/software/inspec.rb +43 -0
- data/config/software/jre-from-jdk.rb +67 -0
- data/config/software/keepalived.rb +68 -0
- data/config/software/libarchive.rb +71 -0
- data/config/software/libedit.rb +73 -0
- data/config/software/libffi.rb +68 -0
- data/config/software/libgcc.rb +52 -0
- data/config/software/libiconv.rb +55 -0
- data/config/software/libintl-perl.rb +56 -0
- data/config/software/liblzma.rb +59 -0
- data/config/software/libossp-uuid.rb +45 -0
- data/config/software/libsodium.rb +40 -0
- data/config/software/libtool.rb +56 -0
- data/config/software/libuuid.rb +45 -0
- data/config/software/libxml2.rb +63 -0
- data/config/software/libxslt.rb +64 -0
- data/config/software/libyajl2-gem.rb +44 -0
- data/config/software/libyaml.rb +50 -0
- data/config/software/libzmq.rb +93 -0
- data/config/software/logrotate.rb +61 -0
- data/config/software/lua.rb +46 -0
- data/config/software/m4.rb +40 -0
- data/config/software/make.rb +43 -0
- data/config/software/makedepend.rb +44 -0
- data/config/software/mpc.rb +44 -0
- data/config/software/mpfr.rb +45 -0
- data/config/software/musl.rb +107 -0
- data/config/software/mysql2.rb +50 -0
- data/config/software/ncurses.rb +159 -0
- data/config/software/nginx.rb +55 -0
- data/config/software/nodejs-binary.rb +90 -0
- data/config/software/nodejs.rb +58 -0
- data/config/software/nokogiri.rb +92 -0
- data/config/software/omnibus-ctl.rb +42 -0
- data/config/software/openresty.rb +94 -0
- data/config/software/opensearch.rb +54 -0
- data/config/software/openssl-customization.rb +81 -0
- data/config/software/openssl-fips.rb +81 -0
- data/config/software/openssl.rb +185 -0
- data/config/software/patch.rb +46 -0
- data/config/software/patchelf.rb +66 -0
- data/config/software/pcre.rb +53 -0
- data/config/software/perl-extutils-embed.rb +37 -0
- data/config/software/perl-extutils-makemaker.rb +46 -0
- data/config/software/perl-thread-queue.rb +40 -0
- data/config/software/perl.rb +78 -0
- data/config/software/perl_pg_driver.rb +45 -0
- data/config/software/pg-gem.rb +36 -0
- data/config/software/pkg-config-lite.rb +46 -0
- data/config/software/pkg-config.rb +66 -0
- data/config/software/popt.rb +54 -0
- data/config/software/postgresql.rb +70 -0
- data/config/software/preparation.rb +31 -0
- data/config/software/python.rb +79 -0
- data/config/software/rabbitmq.rb +58 -0
- data/config/software/rb-readline.rb +33 -0
- data/config/software/rbnacl-libsodium.rb +42 -0
- data/config/software/rbzmq.rb +44 -0
- data/config/software/rebar.rb +42 -0
- data/config/software/redis-gem.rb +36 -0
- data/config/software/redis.rb +51 -0
- data/config/software/relx.rb +39 -0
- data/config/software/rsync.rb +55 -0
- data/config/software/ruby-cleanup.rb +254 -0
- data/config/software/ruby-msys2-devkit.rb +77 -0
- data/config/software/ruby-windows-devkit-bash.rb +41 -0
- data/config/software/ruby-windows-devkit.rb +84 -0
- data/config/software/ruby.rb +306 -0
- data/config/software/rubygems.rb +73 -0
- data/config/software/runit.rb +67 -0
- data/config/software/rust-uninstall.rb +32 -0
- data/config/software/rust.rb +97 -0
- data/config/software/sequel-gem.rb +36 -0
- data/config/software/server-jre.rb +125 -0
- data/config/software/server-open-jre.rb +112 -0
- data/config/software/setuptools.rb +48 -0
- data/config/software/shebang-cleanup.rb +101 -0
- data/config/software/sqitch.rb +87 -0
- data/config/software/stunnel.rb +86 -0
- data/config/software/util-macros.rb +42 -0
- data/config/software/version-manifest.rb +33 -0
- data/config/software/xproto.rb +42 -0
- data/config/software/zlib.rb +85 -0
- data/config/templates/git/config.mak.erb +31 -0
- data/config/templates/rubygems/register_devtools.rb.erb +33 -0
- data/config/templates/runit/runsvdir-start.erb +42 -0
- data/docker-compose.yml +15 -0
- data/lib/omnibus-software/version.rb +3 -0
- data/lib/omnibus-software.rb +115 -0
- data/omnibus-software.gemspec +20 -0
- data/test/Gemfile +10 -0
- data/test/config/projects/test.rb +14 -0
- data/test/generate_steps.rb +55 -0
- data/test/omnibus-build.sh +50 -0
- data/test/omnibus.rb +55 -0
- metadata +296 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright 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
|
+
# expeditor/ignore: deprecated 2021-04
|
|
17
|
+
|
|
18
|
+
name "relx"
|
|
19
|
+
|
|
20
|
+
# Release tags are available, which you can use via override in
|
|
21
|
+
# project config.
|
|
22
|
+
default_version "master"
|
|
23
|
+
|
|
24
|
+
dependency "erlang"
|
|
25
|
+
|
|
26
|
+
# NOTE: requires rebar > 2.2.0 Not sure what the minimum is, but
|
|
27
|
+
# 837df640872d6a5d5d75a7308126e2769d7babad of rebar works.
|
|
28
|
+
dependency "rebar"
|
|
29
|
+
|
|
30
|
+
source git: "https://github.com/erlware/relx.git"
|
|
31
|
+
|
|
32
|
+
relative_path "relx"
|
|
33
|
+
|
|
34
|
+
build do
|
|
35
|
+
env = with_standard_compiler_flags(with_embedded_path)
|
|
36
|
+
|
|
37
|
+
make env: env
|
|
38
|
+
copy "#{project_dir}/relx", "#{install_dir}/embedded/bin/"
|
|
39
|
+
end
|
|
@@ -0,0 +1,55 @@
|
|
|
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
|
+
# expeditor/ignore: deprecated 2022-05
|
|
17
|
+
|
|
18
|
+
name "rsync"
|
|
19
|
+
default_version "3.1.1"
|
|
20
|
+
|
|
21
|
+
dependency "popt"
|
|
22
|
+
|
|
23
|
+
license_file "COPYING"
|
|
24
|
+
skip_transitive_dependency_licensing true
|
|
25
|
+
|
|
26
|
+
version "3.1.2" do
|
|
27
|
+
source md5: "0f758d7e000c0f7f7d3792610fad70cb"
|
|
28
|
+
license "GPL-3.0"
|
|
29
|
+
license_file "COPYING"
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
version "3.1.1" do
|
|
33
|
+
source md5: "43bd6676f0b404326eee2d63be3cdcfe"
|
|
34
|
+
license "GPL-3.0"
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
version "2.6.9" do
|
|
38
|
+
source md5: "996d8d8831dbca17910094e56dcb5942"
|
|
39
|
+
license "GPL-2.0"
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
source url: "https://rsync.samba.org/ftp/rsync/src/rsync-#{version}.tar.gz"
|
|
43
|
+
|
|
44
|
+
relative_path "rsync-#{version}"
|
|
45
|
+
|
|
46
|
+
build do
|
|
47
|
+
env = with_standard_compiler_flags(with_embedded_path)
|
|
48
|
+
|
|
49
|
+
command "./configure" \
|
|
50
|
+
" --prefix=#{install_dir}/embedded" \
|
|
51
|
+
" --disable-iconv", env: env
|
|
52
|
+
|
|
53
|
+
make "-j #{workers}", env: env
|
|
54
|
+
make "install", env: env
|
|
55
|
+
end
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright:: Copyright (c) 2014-2020, Chef Software Inc.
|
|
3
|
+
# License:: Apache License, Version 2.0
|
|
4
|
+
#
|
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
# you may not use this file except in compliance with the License.
|
|
7
|
+
# You may obtain a copy of the License at
|
|
8
|
+
#
|
|
9
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
#
|
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
# See the License for the specific language governing permissions and
|
|
15
|
+
# limitations under the License.
|
|
16
|
+
#
|
|
17
|
+
#
|
|
18
|
+
# Common cleanup routines for ruby apps (InSpec, Workstation, Chef, etc)
|
|
19
|
+
# expeditor/ignore: logic only
|
|
20
|
+
|
|
21
|
+
require "fileutils"
|
|
22
|
+
|
|
23
|
+
name "ruby-cleanup"
|
|
24
|
+
default_version "1.0.0"
|
|
25
|
+
|
|
26
|
+
license :project_license
|
|
27
|
+
skip_transitive_dependency_licensing true
|
|
28
|
+
|
|
29
|
+
dependency "ruby"
|
|
30
|
+
|
|
31
|
+
build do
|
|
32
|
+
env = with_standard_compiler_flags(with_embedded_path)
|
|
33
|
+
|
|
34
|
+
# patchelf was only installed to change the rpath for adoptopenjre binary
|
|
35
|
+
# delete
|
|
36
|
+
command "find #{install_dir} -name patchelf -exec rm -rf \\{\\} \\;" unless windows?
|
|
37
|
+
|
|
38
|
+
# Remove static object files for all platforms
|
|
39
|
+
# except AIX which uses them at runtime.
|
|
40
|
+
unless aix?
|
|
41
|
+
block "Remove static libraries" do
|
|
42
|
+
gemdir = shellout!("#{install_dir}/embedded/bin/gem environment gemdir", env: env).stdout.chomp
|
|
43
|
+
|
|
44
|
+
# find all the static *.a files and delete them
|
|
45
|
+
Dir.glob("#{gemdir}/**/*.a").each do |f|
|
|
46
|
+
puts "Deleting #{f}"
|
|
47
|
+
File.delete(f)
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
# Clear the now-unnecessary git caches, docs, and build information
|
|
53
|
+
block "Delete bundler git cache, docs, and build info" do
|
|
54
|
+
gemdir = shellout!("#{install_dir}/embedded/bin/gem environment gemdir", env: env).stdout.chomp
|
|
55
|
+
|
|
56
|
+
remove_directory "#{gemdir}/cache"
|
|
57
|
+
remove_directory "#{gemdir}/doc"
|
|
58
|
+
remove_directory "#{gemdir}/build_info"
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
block "Remove bundler gem caches" do
|
|
62
|
+
gemdir = shellout!("#{install_dir}/embedded/bin/gem environment gemdir", env: env).stdout.chomp
|
|
63
|
+
|
|
64
|
+
Dir.glob("#{gemdir}/bundler/gems/**").each do |f|
|
|
65
|
+
puts "Deleting #{f}"
|
|
66
|
+
remove_directory f
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
block "Remove leftovers from compiling gems" do
|
|
71
|
+
# find the embedded ruby gems dir and clean it up for globbing
|
|
72
|
+
target_dir = "#{install_dir}/embedded/lib/ruby/gems/*/".tr("\\", "/")
|
|
73
|
+
|
|
74
|
+
# find gem_make.out and mkmf.log files
|
|
75
|
+
Dir.glob(Dir.glob("#{target_dir}/**/{gem_make.out,mkmf.log}")).each do |f|
|
|
76
|
+
puts "Deleting #{f}"
|
|
77
|
+
File.delete(f)
|
|
78
|
+
end
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
# Clean up docs
|
|
82
|
+
delete "#{install_dir}/embedded/docs"
|
|
83
|
+
delete "#{install_dir}/embedded/share/man"
|
|
84
|
+
delete "#{install_dir}/embedded/share/doc"
|
|
85
|
+
delete "#{install_dir}/embedded/share/gtk-doc"
|
|
86
|
+
delete "#{install_dir}/embedded/ssl/man"
|
|
87
|
+
delete "#{install_dir}/embedded/man"
|
|
88
|
+
delete "#{install_dir}/embedded/share/info"
|
|
89
|
+
delete "#{install_dir}/embedded/info"
|
|
90
|
+
|
|
91
|
+
block "Remove leftovers from compiling gems" do
|
|
92
|
+
gemdir = shellout!("#{install_dir}/embedded/bin/gem environment gemdir", env: env).stdout.chomp
|
|
93
|
+
|
|
94
|
+
# find gem_make.out and mkmf.log files
|
|
95
|
+
Dir.glob("#{gemdir}/extensions/**/{gem_make.out,mkmf.log}").each do |f|
|
|
96
|
+
puts "Deleting #{f}"
|
|
97
|
+
File.delete(f)
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
block "Removing random non-code files from installed gems" do
|
|
102
|
+
gemdir = shellout!("#{install_dir}/embedded/bin/gem environment gemdir", env: env).stdout.chomp
|
|
103
|
+
|
|
104
|
+
# find the embedded ruby gems dir and clean it up for globbing
|
|
105
|
+
files = %w{
|
|
106
|
+
.appveyor.yml
|
|
107
|
+
.autotest
|
|
108
|
+
.bnsignore
|
|
109
|
+
.circleci
|
|
110
|
+
.codeclimate.yml
|
|
111
|
+
.concourse.yml
|
|
112
|
+
.coveralls.yml
|
|
113
|
+
.dockerignore
|
|
114
|
+
.document
|
|
115
|
+
.ebert.yml
|
|
116
|
+
.gemtest
|
|
117
|
+
.github
|
|
118
|
+
.gitignore
|
|
119
|
+
.gitmodules
|
|
120
|
+
.hound.yml
|
|
121
|
+
.irbrc
|
|
122
|
+
.kokoro
|
|
123
|
+
.pelusa.yml
|
|
124
|
+
.repo-metadata.json
|
|
125
|
+
.rock.yml
|
|
126
|
+
.rspec
|
|
127
|
+
.rubocop_*.yml
|
|
128
|
+
.rubocop.yml
|
|
129
|
+
.ruby-gemset
|
|
130
|
+
.ruby-version
|
|
131
|
+
.rvmrc
|
|
132
|
+
.simplecov
|
|
133
|
+
.tool-versions
|
|
134
|
+
.travis.yml
|
|
135
|
+
.yardopts
|
|
136
|
+
.yardopts_guide
|
|
137
|
+
.yardopts_i18n
|
|
138
|
+
.yardstick.yml
|
|
139
|
+
.zuul.yaml
|
|
140
|
+
*.blurb
|
|
141
|
+
**/.gitkeep
|
|
142
|
+
*Upgrade.md
|
|
143
|
+
Appraisals
|
|
144
|
+
appveyor.yml
|
|
145
|
+
ARCHITECTURE.md
|
|
146
|
+
autotest
|
|
147
|
+
azure-pipelines.yml
|
|
148
|
+
bench
|
|
149
|
+
benchmark
|
|
150
|
+
benchmarks
|
|
151
|
+
bundle_install_all_ruby_versions.sh
|
|
152
|
+
CHANGELOG
|
|
153
|
+
CHANGELOG.md
|
|
154
|
+
CHANGELOG.rdoc
|
|
155
|
+
CHANGELOG.txt
|
|
156
|
+
CHANGES
|
|
157
|
+
CHANGES.md
|
|
158
|
+
CHANGES.txt
|
|
159
|
+
CODE_OF_CONDUCT.md
|
|
160
|
+
Code-of-Conduct.md
|
|
161
|
+
codecov.yml
|
|
162
|
+
concourse
|
|
163
|
+
CONTRIBUTING.md
|
|
164
|
+
CONTRIBUTING.rdoc
|
|
165
|
+
CONTRIBUTORS.md
|
|
166
|
+
design_rationale.rb
|
|
167
|
+
doc
|
|
168
|
+
doc-api
|
|
169
|
+
docker-compose.yml
|
|
170
|
+
Dockerfile*
|
|
171
|
+
docs
|
|
172
|
+
donate.png
|
|
173
|
+
ed25519.png
|
|
174
|
+
FAQ.txt
|
|
175
|
+
features
|
|
176
|
+
frozen_old_spec
|
|
177
|
+
Gemfile.devtools
|
|
178
|
+
Gemfile.travis
|
|
179
|
+
Gemfile.noed25519*
|
|
180
|
+
Guardfile
|
|
181
|
+
GUIDE.md
|
|
182
|
+
HISTORY
|
|
183
|
+
HISTORY.md
|
|
184
|
+
History.rdoc
|
|
185
|
+
HISTORY.txt
|
|
186
|
+
INSTALL
|
|
187
|
+
INSTALL.txt
|
|
188
|
+
ISSUE_TEMPLATE.md
|
|
189
|
+
JSON-Schema-Test-Suite
|
|
190
|
+
logo.png
|
|
191
|
+
man
|
|
192
|
+
Manifest
|
|
193
|
+
Manifest.txt
|
|
194
|
+
MIGRATING.md
|
|
195
|
+
minitest
|
|
196
|
+
NEWS.md
|
|
197
|
+
on_what.rb
|
|
198
|
+
README
|
|
199
|
+
README_INDEX.rdoc
|
|
200
|
+
README.*md
|
|
201
|
+
readme.erb
|
|
202
|
+
README.euc
|
|
203
|
+
README.markdown
|
|
204
|
+
README.rdoc
|
|
205
|
+
README.txt
|
|
206
|
+
release-script.txt
|
|
207
|
+
run_specs_all_ruby_versions.sh
|
|
208
|
+
samus.json
|
|
209
|
+
SECURITY.md
|
|
210
|
+
SPEC.rdoc
|
|
211
|
+
test
|
|
212
|
+
tests
|
|
213
|
+
THANKS.txt
|
|
214
|
+
TODO
|
|
215
|
+
TODO*.md
|
|
216
|
+
travis_build_script.sh
|
|
217
|
+
UPGRADING.md
|
|
218
|
+
website
|
|
219
|
+
yard-template
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
Dir.glob(Dir.glob("#{gemdir}/gems/*/{#{files.join(",")}}")).each do |f|
|
|
223
|
+
puts "Deleting #{f}"
|
|
224
|
+
if File.directory?(f)
|
|
225
|
+
# recursively removes files and the dir
|
|
226
|
+
FileUtils.remove_dir(f)
|
|
227
|
+
else
|
|
228
|
+
File.delete(f)
|
|
229
|
+
end
|
|
230
|
+
end
|
|
231
|
+
end
|
|
232
|
+
|
|
233
|
+
# Check for multiple versions of the `bundler` gem and fail the build if we find more than 1.
|
|
234
|
+
# Having multiple versions has burned us too many times in the past - causes warnings when
|
|
235
|
+
# invoking binaries.
|
|
236
|
+
# block "Ensure only 1 copy of bundler is installed" do
|
|
237
|
+
# # The bundler regex must be surrounded by double-quotes (not single) for Windows
|
|
238
|
+
# # Under powershell, it would have to be escaped with a ` character, i.e. `"^bundler$`"
|
|
239
|
+
# bundler = shellout!("#{install_dir}/embedded/bin/gem list \"^bundler$\"", env: env).stdout.chomp
|
|
240
|
+
# if bundler.include?(",")
|
|
241
|
+
# raise "Multiple copies of bundler installed, ensure only 1 remains. Output:\n" + bundler
|
|
242
|
+
# end
|
|
243
|
+
# end
|
|
244
|
+
|
|
245
|
+
block "Remove empty gem dirs from Ruby's built-in gems" do
|
|
246
|
+
Dir.glob("#{install_dir}/embedded/lib/ruby/gems/*/gems/*".tr("\\", "/")).each do |d|
|
|
247
|
+
# skip unless the dir is empty
|
|
248
|
+
next unless Dir.children(d).empty?
|
|
249
|
+
|
|
250
|
+
puts "Deleting empty gem dir: #{d}"
|
|
251
|
+
FileUtils.rm_rf(d)
|
|
252
|
+
end
|
|
253
|
+
end
|
|
254
|
+
end
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2022 Progress 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 "ruby-msys2-devkit"
|
|
18
|
+
default_version "3.0.3-1"
|
|
19
|
+
|
|
20
|
+
license "BSD-3-Clause"
|
|
21
|
+
license_file "https://raw.githubusercontent.com/oneclick/rubyinstaller2/master/LICENSE.txt"
|
|
22
|
+
skip_transitive_dependency_licensing true
|
|
23
|
+
arch = "x64"
|
|
24
|
+
msys_dir = "msys64"
|
|
25
|
+
|
|
26
|
+
if windows_arch_i386?
|
|
27
|
+
arch = "x86"
|
|
28
|
+
msys_dir = "msys32"
|
|
29
|
+
version "3.0.3-1" do
|
|
30
|
+
source url: "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-#{version}/rubyinstaller-devkit-#{version}-x86.exe",
|
|
31
|
+
sha256: "4cf4d3522c33472354f3c1af998f1cff8371d4a9a5958067efaa04bb9147b2be"
|
|
32
|
+
end
|
|
33
|
+
else
|
|
34
|
+
version "3.0.3-1" do
|
|
35
|
+
source url: "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-#{version}/rubyinstaller-devkit-#{version}-x64.exe",
|
|
36
|
+
sha256: "be05e2de16d75088613cc998beb2938aa2946384884ed7f9142daec9a848d08c"
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
version "3.1.2-1" do
|
|
40
|
+
source url: "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-#{version}/rubyinstaller-devkit-#{version}-x64.exe",
|
|
41
|
+
sha256: "5f0fd4a206b164a627c46e619d2babbcafb0ed4bc3e409267b9a73b6c58bdec1"
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
build do
|
|
46
|
+
if windows?
|
|
47
|
+
embedded_dir = "#{install_dir}/embedded"
|
|
48
|
+
|
|
49
|
+
Dir.mktmpdir do |tmpdir|
|
|
50
|
+
command "#{project_dir}/rubyinstaller-devkit-#{version}-#{arch}.exe /SP- /NORESTART /VERYSILENT /SUPPRESSMSGBOXES /NOPATH /DIR=#{tmpdir}"
|
|
51
|
+
copy "#{tmpdir}/#{msys_dir}", embedded_dir
|
|
52
|
+
if version == "3.0.3-1"
|
|
53
|
+
copy "#{tmpdir}/lib/ruby/site_ruby/3.0.0/devkit.rb", "#{embedded_dir}/lib/ruby/site_ruby/3.0.0"
|
|
54
|
+
copy "#{tmpdir}/lib/ruby/site_ruby/3.0.0/ruby_installer.rb", "#{embedded_dir}/lib/ruby/site_ruby/3.0.0"
|
|
55
|
+
copy "#{tmpdir}/lib/ruby/site_ruby/3.0.0/ruby_installer", "#{embedded_dir}/lib/ruby/site_ruby/3.0.0"
|
|
56
|
+
copy "#{tmpdir}/lib/ruby/3.0.0/rubygems/defaults", "#{embedded_dir}/lib/ruby/3.0.0/rubygems/defaults"
|
|
57
|
+
elsif version == "3.1.2-1"
|
|
58
|
+
copy "#{tmpdir}/lib/ruby/site_ruby/3.1.0/devkit.rb", "#{embedded_dir}/lib/ruby/site_ruby/3.1.0"
|
|
59
|
+
copy "#{tmpdir}/lib/ruby/site_ruby/3.1.0/ruby_installer.rb", "#{embedded_dir}/lib/ruby/site_ruby/3.1.0"
|
|
60
|
+
copy "#{tmpdir}/lib/ruby/site_ruby/3.1.0/ruby_installer", "#{embedded_dir}/lib/ruby/site_ruby/3.1.0"
|
|
61
|
+
copy "#{tmpdir}/lib/ruby/3.1.0/rubygems/defaults", "#{embedded_dir}/lib/ruby/3.1.0/rubygems/defaults"
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# Normally we would symlink the required unix tools.
|
|
65
|
+
# However with the introduction of git-cache to speed up omnibus builds,
|
|
66
|
+
# we can't do that anymore since git on windows doesn't support symlinks.
|
|
67
|
+
# https://groups.google.com/forum/#!topic/msysgit/arTTH5GmHRk
|
|
68
|
+
# Therefore we copy the tools to the necessary places.
|
|
69
|
+
# We need tar for 'knife cookbook site install' to function correctly and
|
|
70
|
+
# many gems that ship with native extensions assume tar will be available
|
|
71
|
+
# in the PATH.
|
|
72
|
+
copy "#{tmpdir}/#{msys_dir}/usr/bin/bsdtar.exe", "#{install_dir}/bin/tar.exe"
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
command "#{embedded_dir}/#{msys_dir}/msys2_shell.cmd -defterm -no-start -c exit", env: { "CONFIG" => "" }
|
|
76
|
+
end
|
|
77
|
+
end
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright:: Copyright (c) 2014-2017, Chef Software Inc.
|
|
3
|
+
# License:: Apache License, Version 2.0
|
|
4
|
+
#
|
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
# you may not use this file except in compliance with the License.
|
|
7
|
+
# You may obtain a copy of the License at
|
|
8
|
+
#
|
|
9
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
#
|
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
# See the License for the specific language governing permissions and
|
|
15
|
+
# limitations under the License.
|
|
16
|
+
#
|
|
17
|
+
|
|
18
|
+
name "ruby-windows-devkit-bash"
|
|
19
|
+
default_version "3.1.23-4-msys-1.0.18"
|
|
20
|
+
|
|
21
|
+
license "GPL-3.0"
|
|
22
|
+
license_file "http://www.gnu.org/licenses/gpl-3.0.txt"
|
|
23
|
+
skip_transitive_dependency_licensing true
|
|
24
|
+
|
|
25
|
+
# XXX: this depends on ruby-windows-devkit, but the caller MUST specify that dep, or else the slightly goofy
|
|
26
|
+
# library build_order optimizer in omnibus will promote ruby-windows-devkit to being before direct deps of
|
|
27
|
+
# the project file which will defeat our current strategy of installing devkit absolutely dead last.
|
|
28
|
+
# see: https://github.com/chef/omnibus/blob/2f9687fb1a3d2459b932acb4dcb37f4cb6335f4c/lib/omnibus/library.rb#L64-L77
|
|
29
|
+
#
|
|
30
|
+
# dependency "ruby-windows-devkit"
|
|
31
|
+
source url: "https://github.com/chef/msys-bash/releases/download/bash-#{version}/bash-#{version}-bin.tar.lzma",
|
|
32
|
+
md5: "22d5dbbd9bd0b3e0380d7a0e79c3108e"
|
|
33
|
+
|
|
34
|
+
relative_path "bin"
|
|
35
|
+
|
|
36
|
+
build do
|
|
37
|
+
# Copy over the required bins into embedded/bin
|
|
38
|
+
["bash.exe", "sh.exe"].each do |exe|
|
|
39
|
+
copy "#{exe}", "#{install_dir}/embedded/bin/#{exe}"
|
|
40
|
+
end
|
|
41
|
+
end
|
|
@@ -0,0 +1,84 @@
|
|
|
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
|
+
name "ruby-windows-devkit"
|
|
18
|
+
default_version "4.7.2-20130224"
|
|
19
|
+
|
|
20
|
+
license "BSD-3-Clause"
|
|
21
|
+
license_file "https://raw.githubusercontent.com/oneclick/rubyinstaller/master/LICENSE.txt"
|
|
22
|
+
skip_transitive_dependency_licensing true
|
|
23
|
+
|
|
24
|
+
if windows_arch_i386?
|
|
25
|
+
version "4.5.2-20111229-1559" do
|
|
26
|
+
source url: "https://github.com/oneclick/rubyinstaller/releases/download/DevKit-tdm-32-4.5.2/DevKit-tdm-32-#{version}-sfx.exe",
|
|
27
|
+
sha256: "6c3af5487dafda56808baf76edd262b2020b1b25ab86aabf972629f4a6a54491"
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
version "4.7.2-20130224" do
|
|
31
|
+
source url: "https://github.com/oneclick/rubyinstaller/releases/download/devkit-4.7.2/DevKit-mingw64-32-#{version}-1151-sfx.exe",
|
|
32
|
+
sha256: "61a06b5da06dd94343e591163ac0d43c544e9cd4df770f01275645b268b44dc7"
|
|
33
|
+
end
|
|
34
|
+
else
|
|
35
|
+
version "4.7.2-20130224" do
|
|
36
|
+
source url: "https://github.com/oneclick/rubyinstaller/releases/download/devkit-4.7.2/DevKit-mingw64-64-#{version}-1432-sfx.exe",
|
|
37
|
+
sha256: "2ada04c7234199126c0f34f6ea7163a8f8dccb1e15814af175a189f6ac48b8ac"
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
build do
|
|
41
|
+
env = with_standard_compiler_flags(with_embedded_path)
|
|
42
|
+
|
|
43
|
+
embedded_dir = "#{install_dir}/embedded"
|
|
44
|
+
|
|
45
|
+
command "#{project_file} -y -o#{windows_safe_path(embedded_dir)}", env: env
|
|
46
|
+
|
|
47
|
+
command "echo - #{install_dir}/embedded > config.yml", cwd: embedded_dir
|
|
48
|
+
ruby "dk.rb install", env: env, cwd: embedded_dir
|
|
49
|
+
|
|
50
|
+
# Normally we would symlink the required unix tools.
|
|
51
|
+
# However with the introduction of git-cache to speed up omnibus builds,
|
|
52
|
+
# we can't do that anymore since git on windows doesn't support symlinks.
|
|
53
|
+
# https://groups.google.com/forum/#!topic/msysgit/arTTH5GmHRk
|
|
54
|
+
# Therefore we copy the tools to the necessary places.
|
|
55
|
+
# We need tar for 'knife cookbook site install' to function correctly and
|
|
56
|
+
# many gems that ship with native extensions assume tar will be available
|
|
57
|
+
# in the PATH.
|
|
58
|
+
{
|
|
59
|
+
"tar.exe" => "bsdtar.exe",
|
|
60
|
+
"libarchive-2.dll" => "libarchive-2.dll",
|
|
61
|
+
"libexpat-1.dll" => "libexpat-1.dll",
|
|
62
|
+
"liblzma-1.dll" => "liblzma-1.dll",
|
|
63
|
+
"libbz2-2.dll" => "libbz2-2.dll",
|
|
64
|
+
"libz-1.dll" => "libz-1.dll",
|
|
65
|
+
}.each do |target, to|
|
|
66
|
+
copy "#{install_dir}/embedded/mingw/bin/#{to}", "#{install_dir}/bin/#{target}"
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
# IIS 8.5 Server STIG finding V-76717 warns on this file because it ends with
|
|
70
|
+
# `.java`. From the file name it presumes it contains Java source code which
|
|
71
|
+
# should not be stored on a web server.
|
|
72
|
+
#
|
|
73
|
+
# https://www.stigviewer.com/stig/iis_8.5_server/2019-01-08/finding/V-76717
|
|
74
|
+
#
|
|
75
|
+
# Searching GitHub for software that may use this functionality with the
|
|
76
|
+
# the following keywords presented no interesting results
|
|
77
|
+
# - %language java extension:.y
|
|
78
|
+
# - bison "-L java"
|
|
79
|
+
# - bison "--language java"
|
|
80
|
+
#
|
|
81
|
+
# It is highly unlikely that a user would try to use our compiler stack on a
|
|
82
|
+
# Windows system to compile a Java program that used bison.
|
|
83
|
+
delete "#{install_dir}/embedded/share/bison/lalr1.java"
|
|
84
|
+
end
|