mirror of
https://github.com/curl/curl.git
synced 2025-03-07 15:27:17 +08:00
GHA: add a checksrc job
This job unconditionally runs checksrc on ALL .c and .h files present in git. checksrc.pl: fixed to look for ".checksrc" in the same directory from where it loads the file to check so that it an be invoked like this Closes #14625
This commit is contained in:
parent
99ba50d9c4
commit
23749bfd04
29
.github/workflows/checksrc.yml
vendored
Normal file
29
.github/workflows/checksrc.yml
vendored
Normal file
@ -0,0 +1,29 @@
|
||||
# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
#
|
||||
# SPDX-License-Identifier: curl
|
||||
|
||||
name: checksrc
|
||||
|
||||
on:
|
||||
# Trigger the workflow on push or pull requests, but only for the
|
||||
# master branch
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- '*/ci'
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
|
||||
permissions: {}
|
||||
|
||||
jobs:
|
||||
all:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
|
||||
|
||||
- name: check
|
||||
run: git ls-files "*.[ch]" | xargs -n1 ./scripts/checksrc.pl
|
@ -115,9 +115,20 @@ sub readskiplist {
|
||||
# and since that's already handled via !checksrc! commands there is probably
|
||||
# little use to add it.
|
||||
sub readlocalfile {
|
||||
my ($file) = @_;
|
||||
my $i = 0;
|
||||
my $rcfile;
|
||||
|
||||
open(my $rcfile, "<", "$dir/.checksrc") or return;
|
||||
if(($dir eq ".") && $file =~ /\//) {
|
||||
my $ldir;
|
||||
if($file =~ /(.*)\//) {
|
||||
$ldir = $1;
|
||||
open($rcfile, "<", "$dir/$ldir/.checksrc") or return;
|
||||
}
|
||||
}
|
||||
else {
|
||||
open($rcfile, "<", "$dir/.checksrc") or return;
|
||||
}
|
||||
|
||||
while(<$rcfile>) {
|
||||
$windows_os ? $_ =~ s/\r?\n$// : chomp;
|
||||
@ -264,7 +275,7 @@ if(!$file) {
|
||||
}
|
||||
|
||||
readskiplist();
|
||||
readlocalfile();
|
||||
readlocalfile($file);
|
||||
|
||||
do {
|
||||
if("$wlist" !~ / $file /) {
|
||||
|
Loading…
Reference in New Issue
Block a user