cargo.mk: Strip vV from GitHub tags only when followed by a digit

Fixes the following in games/veloren-weekly when iced crates have a tag
similar to veloren-winit-0.28

$ cd games/veloren-weekly
$ make cargo-crates-merge
$ make
[...]
===>  Configuring for veloren-weekly-s20230830
===>   Cargo config:
find: /usr/ports/games/veloren-weekly/work/egui_winit_platform-eloren-winit-0.28: No such file or directory
find: /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28: No such file or directory
find: /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28: No such file or directory
find: /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28: No such file or directory
find: /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28: No such file or directory
find: /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28: No such file or directory
find: /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28: No such file or directory
[...]
[patch.'https://gitlab.com/Imbris/keyboard-keynames.git']
keyboard-keynames = { path = '/usr/ports/games/veloren-weekly/work/keyboard-keynames-veloren-winit-0.28-fca4bbdfa51bf054b155a455935b3792975c989d' }
[...]
[patch.'https://github.com/Imberflur/egui_winit_platform.git']
egui_winit_platform = { path = '/usr/ports/games/veloren-weekly/work/egui_winit_platform-eloren-winit-0.28' }
[...]
[patch.'https://github.com/Imberflur/iced']
iced_core = { path = '/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28' }
iced_futures = { path = '/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28' }
iced_graphics = { path = '/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28' }
iced_native = { path = '/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28' }
iced_style = { path = '/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28' }
iced_winit = { path = '/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28' }
[...]
===>   Updating Cargo.lock
error: failed to load source for dependency `iced_core`

Caused by:
  Unable to update /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28

Caused by:
  failed to read `/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28/Cargo.toml`

Caused by:
  No such file or directory (os error 2)
*** Error code 101

Stop.
make[1]: stopped in /usr/ports/games/veloren-weekly

PR:		273468
Reported by:	jbeich
This commit is contained in:
Tobias Kortkamp 2023-09-30 10:38:19 +02:00
parent 1cf82f86e9
commit 6b1b157425
No known key found for this signature in database
GPG key ID: A4F09FB73CC51F61

View file

@ -65,7 +65,9 @@ function split_git_url(info, git_url, url, path, account, project, commit, i, d
# "GitHub silently converts tags starting with v to not have v in the filename
# and extraction directory. It also replaces + with -."
dir_ver = commit
sub(/^[vV]/, "", dir_ver)
if (dir_ver ~ /^[vV][0-9]/) {
sub(/^[vV]/, "", dir_ver)
}
gsub(/\+/, "-", dir_ver)
gsub(/--/, "-", dir_ver)
info["dir"] = sprintf("%s-%s", project, dir_ver)