On Tue, 30 May 2023 00:42:37 GMT, David Holmes <[email protected]> wrote:
> The main limitation I see with the proposal (and I may be misreading it) is
> that the exact name match seems to preclude working when your configurations
> have the form `mybranch` and `mybranch-debug` etc.
Thanks @dholmes-ora for having a look!
First, just to clarify, this change is fully backwards compatible. If you had
more than one configuration before, you would have to select the one to build
using either `CONF` or `SPEC`. With this change, if you have more than one
configuration containing the name of the checked out Git branch, you still have
to use `CONF` or `SPEC` (there is no way we can infer the one you want to
build).
I also name my configurations `$(git branch
--show-current)-{release,fastdebug,slowdebug}`, although I only use a
`-fastdebug` configuration to start out with. Your comment a make me reconsider
what I wrote in the pull request description:
> Why match the branch name exactly instead of a looser matching? This could be
> beneficial if branches are named e.g. $(git branch --show-current)-fastdebug,
> but I wanted to start out with something strict and then the matching can be
> made looser if needed.
So I pushed a change (see
[db7c8b6](https://gith.openjdk.org/jdk/pull/14202/commits/db7c8b6aa9e135783b38476a1f826c449a2153f8))
that uses a fuzzier matching. Now if there are multiple configurations and
exactly one contains the current branch name, then it will be built. This
allows you have to have a single `jdk-1234567-fastdebug` configuration and just
build it by running `make`.
I'm of course aware that I can use a script to achieve all of this - I've had
one for years called `bake`, short for "branch make". However if many
developers are structuring their concurrent work using branches, then I think
we should add what support we can in upstream to make that workflow easier.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/14202#issuecomment-1568589731