jtreg icon indicating copy to clipboard operation
jtreg copied to clipboard

7903604: Provide Build.java to (eventually) replace `build.sh`

Open jonathan-gibbons opened this issue 1 year ago • 6 comments

Please review a new, alternative way to download the dependencies needed to build jtreg.

Currently, the generally recommended way to download or otherwise find the dependencies is to use the make/build.sh script. This PR provides an essentially equivalent alternative written in Java: make/Build.java, which is a single source file and so can be run with the standard support for running single source file programs in the Java launcher.

old: sh make/build.sh options...
new: path/to/java make/Build.java options...

The configuration values are essentially the same; in particular, the default configuration values in make/build-support/version-numbers are exactly the same as for build.sh. Configuration values may now also be given on the command-line or in a file specified on the command line. The primary configuration difference is that there is no longer support for downloading a version of JDK to build jtreg; the default is to use the same version of JDK as is used to run Build.java although an alternate version of JDK to build jtreg itself can be specified as an option to Build.java.

As with build.sh, the new Build.java writes and optionally executes a shell script to run make with variables set up to point to the local version of the dependencies.

There is no change to the makefiles, or to the functionality of jtreg itself.

There are minor internal changes to the organization of the dependencies in the build/deps directory, and minor changes to the logging output written by the program.

The old build.sh and related shell files remain in place for now, but may be removed at some point in the future.


Progress

  • [ ] Change must be properly reviewed (1 review required, with at least 1 Reviewer)
  • [x] Change must not contain extraneous whitespace
  • [x] Commit message must refer to an issue

Issue

  • CODETOOLS-7903604: Provide Build.java to (eventually) replace build.sh (Enhancement - P3)

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.org/jtreg.git pull/177/head:pull/177
$ git checkout pull/177

Update a local copy of the PR:
$ git checkout pull/177
$ git pull https://git.openjdk.org/jtreg.git pull/177/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 177

View PR using the GUI difftool:
$ git pr show -t 177

Using diff file

Download this PR as a diff file:
https://git.openjdk.org/jtreg/pull/177.diff

Webrev

Link to Webrev Comment

jonathan-gibbons avatar Dec 08 '23 23:12 jonathan-gibbons

:wave: Welcome back jjg! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

bridgekeeper[bot] avatar Dec 08 '23 23:12 bridgekeeper[bot]

@jonathan-gibbons This pull request has been inactive for more than 4 weeks and will be automatically closed if another 4 weeks passes without any activity. To avoid this, simply add a new comment to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration!

bridgekeeper[bot] avatar Jan 10 '24 01:01 bridgekeeper[bot]

Webrevs

mlbridge[bot] avatar Jan 16 '24 18:01 mlbridge[bot]

@jonathan-gibbons This pull request has been inactive for more than 4 weeks and will be automatically closed if another 4 weeks passes without any activity. To avoid this, simply add a new comment to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration!

bridgekeeper[bot] avatar Feb 15 '24 22:02 bridgekeeper[bot]

❗ This change is not yet ready to be integrated. See the Progress checklist in the description for automated requirements.

openjdk[bot] avatar Mar 13 '24 20:03 openjdk[bot]

@jonathan-gibbons This pull request has been inactive for more than 4 weeks and will be automatically closed if another 4 weeks passes without any activity. To avoid this, simply add a new comment to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration!

bridgekeeper[bot] avatar Apr 10 '24 20:04 bridgekeeper[bot]

@jonathan-gibbons This pull request has been inactive for more than 8 weeks and will now be automatically closed. If you would like to continue working on this pull request in the future, feel free to reopen it! This can be done using the /open pull request command.

bridgekeeper[bot] avatar May 09 '24 16:05 bridgekeeper[bot]

/open

sormuras avatar Jun 18 '24 08:06 sormuras

@sormuras Only the pull request author can set the pull request state to "open"

openjdk[bot] avatar Jun 18 '24 08:06 openjdk[bot]