Skip to content

Commit

Permalink
add make binary
Browse files Browse the repository at this point in the history
  • Loading branch information
cosmicexplorer committed Oct 22, 2018
1 parent cf16759 commit 2f21f65
Show file tree
Hide file tree
Showing 7 changed files with 129 additions and 0 deletions.
58 changes: 58 additions & 0 deletions build-support/bin/make/linux/x86_64/4.2.1/build-make.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
#!/bin/bash

source "$(git rev-parse --show-toplevel)/utils.v1.bash"

set_strict_mode

function fetch_extract_make_source_release {
local -r extracted_dirname="make-${MAKE_VERSION}"
local -r archive_filename="${extracted_dirname}.tar.gz"
local -r release_url="https://ftpmirror.gnu.org/gnu/make/${archive_filename}"

local -r downloaded_archive="$(curl_file_with_fail "$release_url" "$archive_filename")"
extract_for "$downloaded_archive" "$extracted_dirname"
}

function build_make_with_configure {
local -a configure_cmd_line=("$@")

"${configure_cmd_line[@]}"

make "-j${SUBPROC_MAKE_JOBS}"

make install
}

function build_make_out_of_tree {
local -r source_extracted_abs="$(fetch_extract_make_source_release)"
local -r build_dir_abs="$(mkdirp_absolute_path 'make-build')"
local -r install_dir_abs="$(mkdirp_absolute_path 'make-install')"

with_pushd >&2 "$build_dir_abs" \
build_make_with_configure \
"${source_extracted_abs}/configure" \
--prefix="$install_dir_abs"

with_pushd "$install_dir_abs" \
create_gz_package 'make'
}

## Interpret arguments and execute build.

readonly MAKE_VERSION="$1"
# Default to 2 parallel jobs if unspecified.
readonly SUBPROC_MAKE_JOBS="${SUBPROC_MAKE_JOBS:-2}"

case "$(uname)" in
Darwin)
with_pushd "$(mkdirp_absolute_path "make-${MAKE_VERSION}-osx")" \
build_make_out_of_tree
;;
Linux)
with_pushd "$(mkdirp_absolute_path "make-${MAKE_VERSION}-linux")" \
build_make_out_of_tree
;;
*)
die "make does not support building for '$(uname)'"
;;
esac
5 changes: 5 additions & 0 deletions build-support/bin/make/linux/x86_64/4.2.1/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#!/bin/bash

readonly result="$(./build-make.sh 4.2.1)"

cp "$result" ./make.tar.gz
1 change: 1 addition & 0 deletions build-support/bin/make/mac/10.10
1 change: 1 addition & 0 deletions build-support/bin/make/mac/10.11
1 change: 1 addition & 0 deletions build-support/bin/make/mac/10.12
58 changes: 58 additions & 0 deletions build-support/bin/make/mac/10.13/4.2.1/build-make.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
#!/bin/bash

source "$(git rev-parse --show-toplevel)/utils.v1.bash"

set_strict_mode

function fetch_extract_make_source_release {
local -r extracted_dirname="make-${MAKE_VERSION}"
local -r archive_filename="${extracted_dirname}.tar.gz"
local -r release_url="https://ftpmirror.gnu.org/gnu/make/${archive_filename}"

local -r downloaded_archive="$(curl_file_with_fail "$release_url" "$archive_filename")"
extract_for "$downloaded_archive" "$extracted_dirname"
}

function build_make_with_configure {
local -a configure_cmd_line=("$@")

"${configure_cmd_line[@]}"

make "-j${SUBPROC_MAKE_JOBS}"

make install
}

function build_make_out_of_tree {
local -r source_extracted_abs="$(fetch_extract_make_source_release)"
local -r build_dir_abs="$(mkdirp_absolute_path 'make-build')"
local -r install_dir_abs="$(mkdirp_absolute_path 'make-install')"

with_pushd >&2 "$build_dir_abs" \
build_make_with_configure \
"${source_extracted_abs}/configure" \
--prefix="$install_dir_abs"

with_pushd "$install_dir_abs" \
create_gz_package 'make'
}

## Interpret arguments and execute build.

readonly MAKE_VERSION="$1"
# Default to 2 parallel jobs if unspecified.
readonly SUBPROC_MAKE_JOBS="${SUBPROC_MAKE_JOBS:-2}"

case "$(uname)" in
Darwin)
with_pushd "$(mkdirp_absolute_path "make-${MAKE_VERSION}-osx")" \
build_make_out_of_tree
;;
Linux)
with_pushd "$(mkdirp_absolute_path "make-${MAKE_VERSION}-linux")" \
build_make_out_of_tree
;;
*)
die "make does not support building for '$(uname)'"
;;
esac
5 changes: 5 additions & 0 deletions build-support/bin/make/mac/10.13/4.2.1/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#!/bin/bash

readonly result="$(./build-make.sh 4.2.1)"

cp "$result" ./make.tar.gz

0 comments on commit 2f21f65

Please sign in to comment.