utils/check-package: check files in board/

When a SysV init script is inside package/ it doesn't need to be
executable. However, when an init script is inside a fs_overlay, it
*does* need to be executable. Therefore, skip the NotExecutable test for
init scripts. We detect them based on the directory /etc/init.d

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
[Arnout: update .checkpackageignore]
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
This commit is contained in:
Ricardo Martincoski 2022-07-31 16:35:16 -03:00 committed by Arnout Vandecappelle
parent d775b2ac05
commit 29d6f319a0
4 changed files with 100 additions and 0 deletions

View File

@ -1,3 +1,94 @@
board/aarch64-efi/post-image.sh Shellcheck
board/amarula/vyasa/post-build.sh Shellcheck
board/andes/ae350/post-build.sh Shellcheck
board/arcturus/aarch64-ucls1012a/post-build.sh Shellcheck
board/arcturus/aarch64-ucls1012a/post-image.sh Shellcheck
board/aspeed/common/post-image.sh Shellcheck
board/asus/tinker/post-build.sh Shellcheck
board/atmel/flasher.sh Shellcheck
board/beaglebone/post-build.sh Shellcheck
board/beagleboneai/post-build.sh Shellcheck
board/beaglev/post-build.sh Shellcheck
board/beelink/gs1/post-build.sh Shellcheck
board/boundarydevices/common/post-build.sh Shellcheck
board/boundarydevices/common/post-image.sh Shellcheck
board/broadcom/northstar/post-image.sh Shellcheck
board/bsh/imx8mn-bsh-smm-s2-pro/flash.sh EmptyLastLine Shellcheck
board/bsh/imx8mn-bsh-smm-s2-pro/post-build.sh Shellcheck
board/bsh/imx8mn-bsh-smm-s2-pro/post-image.sh Shellcheck
board/bsh/imx8mn-bsh-smm-s2/flash.sh EmptyLastLine Shellcheck
board/bsh/imx8mn-bsh-smm-s2/post-build.sh Shellcheck
board/canaan/k210-soc/post-build.sh Shellcheck
board/canaan/k210-soc/rootfs_overlay/sbin/init Shellcheck
board/chromebook/elm/sign.sh Shellcheck
board/chromebook/mksd.sh Shellcheck
board/chromebook/snow/linux-4.15-dts-tpm.patch ApplyOrder
board/chromebook/snow/sign.sh Shellcheck
board/cubietech/cubieboard2/post-image.sh Shellcheck
board/freescale/common/imx/imx8-bootloader-prepare.sh Shellcheck
board/freescale/common/imx/post-image.sh Shellcheck
board/freescale/common/mxs/post-image.sh Shellcheck
board/friendlyarm/nanopi-r2s/post-build.sh Shellcheck
board/hardkernel/odroidc2/post-image.sh Shellcheck
board/hardkernel/odroidc2/rootfs_overlay/etc/init.d/S09modload Shellcheck Variables
board/hardkernel/odroidxu4/post-image.sh EmptyLastLine Shellcheck
board/intel/galileo/post-build.sh Shellcheck
board/intel/galileo/rootfs_overlay/etc/init.d/S09modload Shellcheck Variables
board/kontron/bl-imx8mm/post-build.sh Shellcheck
board/kontron/pitx-imx8m/patches/uboot/2022.04/0001-tools-mkeficapsule-use-pkg-config-to-get-luuid-and-l.patch NumberedSubject
board/kontron/pitx-imx8m/post-build.sh Shellcheck
board/kontron/smarc-sal28/post-build.sh Shellcheck
board/lego/ev3/post-image.sh Shellcheck
board/lemaker/bananapro/post-build.sh Shellcheck
board/lemaker/bananapro/post-image.sh Shellcheck
board/mender/x86_64/post-image-efi.sh ConsecutiveEmptyLines
board/minnowboard/post-build.sh Shellcheck
board/nexbox/a95x/post-build.sh Shellcheck
board/nexbox/a95x/post-image.sh Shellcheck
board/octavo/osd32mp1-brk/patches/uboot/0001-Add-OSD32MP1-BRK-device-tree-support.patch NumberedSubject
board/octavo/osd32mp1-brk/patches/uboot/0002-Add-OSD32MP1-BRK-build-config.patch NumberedSubject
board/octavo/osd32mp1-red/patches/uboot/0001-Add-OSD32MP1-RED-Device-Tree-support.patch NumberedSubject
board/octavo/osd32mp1-red/patches/uboot/0002-configs-stm32mp15_trusted_defconfig-disable-environm.patch NumberedSubject
board/olimex/a13_olinuxino/post-build.sh Shellcheck
board/olimex/a20_olinuxino/post-build.sh Shellcheck
board/olimex/a33_olinuxino/post-build.sh Shellcheck
board/olpc/post-build.sh Shellcheck
board/orangepi/common/post-build.sh Shellcheck
board/orangepi/orangepi-lite2/post-build.sh Shellcheck
board/orangepi/orangepi-one-plus/post-build.sh Shellcheck
board/pine64/rock64/post-build.sh Shellcheck
board/pine64/rockpro64/post-build.sh Shellcheck
board/qemu/aarch64-sbsa/assemble-flash-images Shellcheck
board/qemu/post-image.sh Shellcheck
board/qemu/x86/post-build.sh Shellcheck
board/qemu/x86_64/post-build.sh Shellcheck
board/radxa/rockpi-n8/post-build.sh Shellcheck
board/raspberrypi/post-build.sh Shellcheck
board/raspberrypi/post-image.sh Shellcheck
board/roseapplepi/post-build.sh Shellcheck
board/sifive/hifive-unleashed/post-build.sh Shellcheck
board/solidrun/clearfog/post-build.sh Shellcheck
board/solidrun/macchiatobin/post-build-mainline.sh Shellcheck
board/solidrun/macchiatobin/post-build.sh Shellcheck
board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh Shellcheck
board/stmicroelectronics/common/stm32mp157/post-image.sh Shellcheck
board/stmicroelectronics/stm32f429-disco/flash.sh Shellcheck
board/stmicroelectronics/stm32f469-disco/flash_sd.sh Shellcheck
board/stmicroelectronics/stm32f469-disco/flash_xip.sh Shellcheck
board/stmicroelectronics/stm32f469-disco/post-build.sh Shellcheck
board/synopsys/axs10x/post-build.sh Shellcheck
board/technologic/ts4900/post-image.sh Shellcheck
board/terasic/de10nano_cyclone5/barebox-env/boot/mmc Shellcheck
board/toradex/apalis-imx6/post-image.sh Shellcheck
board/udoo/common/post-build.sh Shellcheck
board/versal/post-build.sh Shellcheck
board/versal/post-image.sh Shellcheck TrailingSpace
board/zynq/post-build.sh Shellcheck
board/zynq/post-image.sh Shellcheck
board/zynqmp/kria/kv260/kv260.sh Shellcheck TrailingSpace
board/zynqmp/kria/patches/uboot/v1-0001-makefile-add-multi_dtb_fit-dep.patch ApplyOrder
board/zynqmp/post-build.sh Shellcheck
board/zynqmp/post-image.sh Shellcheck
package/alsamixergui/0001-misc-fixes.patch Sob
package/am33x-cm3/S93-am335x-pm-firmware-load Variables
package/android-tools/0008-Include-sysmacros.h-to-compile-with-glibc-2.28.patch Sob

View File

@ -107,6 +107,7 @@ CONFIG_IN_FILENAME = re.compile(r"Config\.\S*$")
DO_CHECK_INTREE = re.compile(r"|".join([
r"Config.in",
r"arch/",
r"board/",
r"boot/",
r"fs/",
r"linux/",

View File

@ -21,6 +21,9 @@ class Indent(_CheckFunction):
class NotExecutable(checkpackagelib.tool.NotExecutable):
def ignore(self):
return 'etc/init.d/' in self.filename
def hint(self):
return ", just make sure you use '$(INSTALL) -D -m 0755' in the .mk file"

View File

@ -4,7 +4,12 @@ from checkpackagelib.base import _Tool
class NotExecutable(_Tool):
def ignore(self):
return False
def run(self):
if self.ignore():
return
if os.access(self.filename, os.X_OK):
return ["{}:0: This file does not need to be executable{}".format(self.filename, self.hint())]