omnibus-software 22.11.239
Sign up to get free protection for your applications and to get access to all the features.
- 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
|