I think this is OK.

I tried going through tests/portcheck with it, but they're already rotten
from other changes in ports; anyway, with the relevant $OpenBSD$ lines
removed from the test files the failures are the same as before.


On 2022/03/03 22:27, Christian Weisgerber wrote:
> Stuart Henderson:
> 
> > > On Mon, Feb 28, 2022 at 04:14:25PM +0100, Christian Weisgerber wrote:
> > > > Drop all checks for $OpenBSD$ keywords from portcheck(1).
> > > > 
> > > > Or should we instead complain if files do have $OpenBSD$?
> > > 
> > > I think it's better if we have a policy, so complaining might be better.
> > 
> > I think so too, though it will take a while for people to get a newer
> > portcheck that complains.
> 
> Here's a new try.
> 
> * Complain where $OpenBSD$ was previously mandatory.
> * Still complain where it continues to be forbidden.
> * Also check the content of the "files" directory.
> 
> E.g.
> $ portcheck
> Makefile should not contain $OpenBSD$ tag
> files/config.mk should not contain $OpenBSD$ tag
> files/head.c should not contain $OpenBSD$ tag
> patches/patch-common_mk should not contain $OpenBSD$ tag
> patches/patch-lib_Makefile should not contain $OpenBSD$ tag
> patches/patch-lib_libpm_c should not contain $OpenBSD$ tag
> patches/patch-lib_util_Makefile should not contain $OpenBSD$ tag
> pkg/PLIST should not contain $OpenBSD$ tag
> graphics/netpbm
> 
> Index: infrastructure/bin/portcheck
> ===================================================================
> RCS file: /cvs/ports/infrastructure/bin/portcheck,v
> retrieving revision 1.140
> diff -u -p -r1.140 portcheck
> --- infrastructure/bin/portcheck      6 Nov 2021 19:10:18 -0000       1.140
> +++ infrastructure/bin/portcheck      3 Mar 2022 21:15:37 -0000
> @@ -1541,6 +1541,7 @@ check_permit_subpkg() {
>  # Checks made:
>  #   * Directory is not empty
>  #   * No '*.core' files present
> +#   * Files should not contain OpenBSD RCS tags
>  check_files_dir() {
>       $debugging && echo "CALLED: check_files_dir($*)" >&2
>  
> @@ -1553,8 +1554,12 @@ check_files_dir() {
>                       (( (0$mode & 0111) != 0 )) &&
>                               err "executable file: $F"
>                       empty=false
> -                     [[ $F == *.core ]] &&
> +                     if [[ $F == *.core ]]; then
>                               err_coredump_found "$F"
> +                     else
> +                             grep -q '\$OpenBSD.*\$' "$F" &&
> +                                     err "$F should not contain \$OpenBSD\$ 
> tag"
> +                     fi
>               done
>               $empty && err "there are no files, please remove the $1 
> directory"
>               ! $error
> @@ -1563,7 +1568,7 @@ check_files_dir() {
>  
>  # Checks made:
>  #   * The patch is not empty.
> -#   * The patch contains an OpenBSD RCS tag.
> +#   * The patch should not contain an OpenBSD RCS tag.
>  check_patch() {
>       local F=$1
>  
> @@ -1573,8 +1578,8 @@ check_patch() {
>       }
>  
>       if [ -s "$F" ]; then
> -             head -n 1 -- "$F" | egrep -q '^\$OpenBSD.*\$$' ||
> -                 err "$F does not have \$OpenBSD\$ RCS tag at the top"
> +             grep -q '\$OpenBSD.*\$' "$F" &&
> +                 err "$F should not contain \$OpenBSD\$ tag"
>       else
>               err "$F is empty and should be removed"
>       fi
> @@ -1583,7 +1588,7 @@ check_patch() {
>  }
>  
>  # Checks made:
> -#   * Each patch contains OpenBSD RCS tag.
> +#   * Patches should not contain OpenBSD RCS tags.
>  #   * Directory is not empty and consists only of plain files starting
>  #     with 'patch-' and not ending with '.orig'.
>  check_patches_dir() {
> @@ -1614,8 +1619,7 @@ check_patches_dir() {
>  
>  # Checks made:
>  #   * Directory is not empty and consist only of plain files with fixed 
> names.
> -#   * PFRAG, PLIST, README and .rc files contain appropriate OpenBSD RCS
> -#     tags; other files should NOT contain OpenBSD RCS tag.
> +#   * Files should not contain OpenBSD RCS tags.
>  #   * PFRAG.shared should be merged into PLIST.
>  #   * No trailing whitespace for DESCR, MESSAGE, README, UNMESSAGE and
>  #     .rc files (PLIST and PFRAG are better checked with "make package").
> @@ -1647,7 +1651,7 @@ check_pkg_dir() {
>               check_long_lines "$F"
>               check_hardcoded "$F"
>               [[ -n $subst_cmd ]] && check_subst_vars "$F" "$subst_cmd"
> -             egrep -q '\$OpenBSD.*\$' "$F" &&
> +             grep -q '\$OpenBSD.*\$' "$F" &&
>                       err "$F should not contain \$OpenBSD\$ tag"
>               ;;
>  
> @@ -1673,9 +1677,8 @@ check_pkg_dir() {
>               check_newline_at_eof "$F"
>               check_long_lines "$F"
>               check_hardcoded "$F"
> -             head -n 1 -- "$F" |
> -                     egrep -q '^(#[[:space:]]*)?\$OpenBSD(:.*)?\$$' ||
> -                     err "$F does not have \$OpenBSD\$ RCS tag at the top"
> +             grep -q '\$OpenBSD.*\$' "$F" &&
> +                     err "$F should not contain \$OpenBSD\$ tag"
>               ;;
>  
>       *.rc)
> @@ -1687,9 +1690,8 @@ check_pkg_dir() {
>               check_long_lines "$F"
>               check_hardcoded "$F"
>               check_rcscript "$dir" "${F##*/}"
> -             head -n 5 -- "$F" |
> -                     egrep -q '^#[[:space:]]*\$OpenBSD(:.*)?\$$' ||
> -                     err "$F does not have \$OpenBSD\$ RCS tag at the top"
> +             grep -q '\$OpenBSD.*\$' "$F" &&
> +                     err "$F should not contain \$OpenBSD\$ tag"
>               ;;
>  
>       MESSAGE?(-*)|UNMESSAGE?(-*))
> @@ -1700,7 +1702,7 @@ check_pkg_dir() {
>               check_newline_at_eof "$F"
>               check_long_lines "$F"
>               check_hardcoded "$F"
> -             egrep -q '\$OpenBSD.*\$' "$F" &&
> +             grep -q '\$OpenBSD.*\$' "$F" &&
>                       err "$F should not contain \$OpenBSD\$ tag"
>               ;;
>  
> @@ -1755,7 +1757,7 @@ check_long_lines() {
>  }
>  
>  # Checks made:
> -#   * There is an OpenBSD RCS tag at the top.
> +#   * Contains no OpenBSD RCS tag.
>  #   * No items with ${FULLPKGNAME} are allowed, except readme.
>  #   * No empty lines.
>  check_plist_file() {
> @@ -1763,9 +1765,8 @@ check_plist_file() {
>  
>       [[ -f $1 ]] ||
>               err "$1 is not a file"
> -     head -n 1 -- "$1" |
> -             egrep -q '^@comment \$OpenBSD.*\$$' ||
> -             err "$1 does not have \$OpenBSD\$ RCS tag at the top"
> +     grep -q '\$OpenBSD.*\$' "$1" &&
> +             err "$1 should not contain \$OpenBSD\$ tag"
>  
>       # Do not match just '${FULLPKGNAME}' because many ports use the
>       # following trick:
> @@ -1793,7 +1794,7 @@ check_subst_vars() {
>  }
>  
>  # Checks made:
> -#   * Contains OpenBSD RCS tag at the top line.
> +#   * Contains no OpenBSD RCS tag.
>  #   * No REVISION marks present in given file (unless in update mode).
>  #   * Each REVISION mark presents only once.
>  #   * BUILD_DEPENDS, MODULES and PERMIT_DISTFILES are not defined in
> @@ -1811,9 +1812,8 @@ check_makefile() {
>       check_trailing_whitespace "$F"
>       check_long_lines "$F"
>       check_hardcoded "$F"
> -     head -n 1 -- "$F" |
> -             egrep -q '^#[[:space:]]*\$OpenBSD.*\$' ||
> -             err "$F does not have \$OpenBSD\$ RCS tag at the top"
> +     grep -q '\$OpenBSD.*\$' "$F" &&
> +             err "$F should not contain \$OpenBSD\$ tag"
>  
>       local iflevel=0 l lnum=0 revs= t r mkvars= var duprevfound
>       # do not unset mkvars, having empty element(-s) is fine
> -- 
> Christian "naddy" Weisgerber                          na...@mips.inka.de
> 

Reply via email to