Skip to content

Commit e3bc65a

Browse files
authored
Merge pull request #1574 from citrus-it/mirror
Add -M build flag to temporarily override mirror for development
2 parents 2c8b9fc + e3b796b commit e3bc65a

File tree

2 files changed

+24
-11
lines changed

2 files changed

+24
-11
lines changed

README.md

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -739,21 +739,27 @@ packages. In the early stages of a build, this source tarball will not be
739739
available on the OmniOS mirror, and will be need to be made available for the
740740
build process.
741741

742-
This can be done by using the `set_mirror` directive in `build.sh`. For example
743-
the source tarball for "Apache httpd 2.4.43" is available at the mirror:
744-
<https://downloads.apache.org/>. Therefore the `set_mirror` directive should be
745-
as follows:
742+
The easiest way to do this is to use `build.sh`'s `-M` option to temporarily
743+
point at either the original distribution site, or to a temporary directory.
746744

747-
```none
748-
set_mirror "https://downloads.apache.org/"
745+
For example the source tarball for "Apache httpd 2.4.43" is available at the
746+
mirror: <https://downloads.apache.org/>. Therefore `build.sh` can be run as:
747+
748+
```bash
749+
$ ./build.sh -M https://downloads.apache.org/
749750
```
750-
Further in the `build.sh` file, the `download_source` directive should be as
751-
follows:
752751

753-
```none
754-
download_source $PROG $PROG $VER
752+
or, if you download `httpd-2.4.43.tar.bz2` and place it in `/tmp/apache`:
753+
754+
```bash
755+
$ ./build.sh -M /tmp
755756
```
756757

758+
If the download fails, look at `build.log` to determine the pathnames that
759+
were tried, and adjust accordingly.
760+
761+
The mirror can also be changed permanently in `lib/site.sh`.
762+
757763
#### Checksums:
758764

759765
The above will be sufficient if the accompanying sha256 checksum file is

lib/functions.sh

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ process_opts() {
5959
SKIP_CHECKSUM=
6060
EXTRACT_MODE=0
6161
MOG_TEST=
62-
while getopts "bcimPpstf:ha:d:Llr:x" opt; do
62+
while getopts "bcimM:Ppstf:ha:d:Llr:x" opt; do
6363
case $opt in
6464
a)
6565
set_arch "$OPTARG"
@@ -96,6 +96,11 @@ process_opts() {
9696
m)
9797
MOG_TEST=1
9898
;;
99+
M)
100+
logmsg -n "-- Will retrieve files from $OPTARG"
101+
set_mirror "$OPTARG"
102+
set_checksum none
103+
;;
99104
P)
100105
REBASE_PATCHES=1
101106
;;
@@ -139,6 +144,8 @@ show_usage() {
139144
-l : skip pkglint check
140145
-L : skip hardlink target check
141146
-m : re-generate final mog from local.mog (mog test mode)
147+
-M URL : retrieve files from URL instead of OmniOS mirror
148+
-M /PATH : retrieve files from (absolute) PATH instead of OmniOS mirror
142149
-p : output all commands to the screen as well as log file
143150
-P : re-base patches on latest source
144151
-r REPO : specify the IPS repo to use

0 commit comments

Comments
 (0)