From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from list by lists.gnu.org with archive (Exim 4.90_1) id 1mXdGz-0003aj-FF for mharc-grub-devel@gnu.org; Tue, 05 Oct 2021 01:45:53 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:44048) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mXdGy-0003Yv-3l for grub-devel@gnu.org; Tue, 05 Oct 2021 01:45:52 -0400 Received: from mail-ot1-x32c.google.com ([2607:f8b0:4864:20::32c]:40736) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mXdGt-000475-NZ for grub-devel@gnu.org; Tue, 05 Oct 2021 01:45:51 -0400 Received: by mail-ot1-x32c.google.com with SMTP id l16-20020a9d6a90000000b0053b71f7dc83so24505136otq.7 for ; Mon, 04 Oct 2021 22:45:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=efficientek-com.20210112.gappssmtp.com; s=20210112; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=HXTjiGFdNHhzdFLw7AIobD29hn7yGGg8KJIizS3u8RI=; b=vAe+bcrQwfiNBBABgmBcEvytl523s81idZ2nqXGpnm23Tw7A2ZK4cOIIL4S+g6bGoX BFPa8V0HfwEfBCxgUpqbUTvRUOY0odvECE5tmU0IHsvPCzAYO87kAej+ojK2yg2AH5/8 7kRc6zbFb+2gkPxt0GuLLPokXQLfnkcLMBk/d3SGnRWSxFH9ARXWDseJqYNmgK9AzmBV Sh+xtQBrC3BChXpYJtk8x0DwZ4bhML7B3uGcm5LXznKnGC7g0ShZ4lmvVQif+kXB3TjD 5MlXOkn6ypWR1U7UeER+aezbP9ecxX1bksY5AirrjTBK5oE/QjwCpCr9XqafsvA/sa7F g51A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=HXTjiGFdNHhzdFLw7AIobD29hn7yGGg8KJIizS3u8RI=; b=EvDSb471mpyvJ56KwvhhlMYpRVrd3fFWM1cyXKniaf6kNNCOa2+AlhnRsWQqEvO/w5 YhKpr8kCiVaUjZZx++WfpKHcJaVZwh7hb6A6SoNN5sC76ZyWyJwEyybwkS3ziTNnG5uy P0bz3/mQzvX/bi/m+jNrnPLzxoDMicoVzZMzgPV6lTyIkcSAwla9SgWrp6BVI7mFBfm1 MYEHjOz/6G26VQ/y/ijaBADV4gqgGcJaYI/gfehAiiOPGMW480MpVbsaYkY3ChOzH6o4 z+uKBl2dNyBpZxYim23CMIHWXJQ0z/3bw3XyQL/zS37jzDlmSmqw7a/bXVrYwPjXUOnM pzWw== X-Gm-Message-State: AOAM533qRIjXqRLjgCL+Djg2EzR/T3+XYvPAmsXf4jnVZ932360VzXbx xVeDEtdJ2GAySkYmtt1fBGKgMw== X-Google-Smtp-Source: ABdhPJxalFlKtZBzjuMVdCsG2Lt+VP0teg4F8/goe7pjGRj9Srq63C4/ZSvHMooNgWbLQmjUcMDmXA== X-Received: by 2002:a9d:7644:: with SMTP id o4mr12975724otl.270.1633412746299; Mon, 04 Oct 2021 22:45:46 -0700 (PDT) Received: from localhost.localdomain ([37.218.244.251]) by smtp.gmail.com with ESMTPSA id 12sm3299821otg.69.2021.10.04.22.45.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Oct 2021 22:45:45 -0700 (PDT) From: Glenn Washburn To: Daniel Kiper , grub-devel@gnu.org Cc: Glenn Washburn Subject: [PATCH v2] docs: Add fuller accounting of make check prerequisites Date: Tue, 5 Oct 2021 00:45:04 -0500 Message-Id: <20211005054504.9990-1-development@efficientek.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=2607:f8b0:4864:20::32c; envelope-from=development@efficientek.com; helo=mail-ot1-x32c.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Oct 2021 05:45:52 -0000 Many of the prerequisites for exercising the full `make check' test suite have not been documented. This adds them along with a note that some tests require elevated privileges to run. Also add documentation on trusted sources for finding cross compiling tool chains. Signed-off-by: Glenn Washburn --- Changes since v1 * Add section on where to find cross compiling tool chains per Daniel's request. * Missed needed modules loop and we need fuse for ntfs and exfat (though on very recent kernels the exfat module would be better to use). * Also, romfs, isofs, and squashfs are not required either because we don't mount or use these images in loopback devices. * Need exfat-fuse for all but recent kernels. And exfatprogs is better than exfat-utils (more compete support). But its a newer package, so may not be available on older systems. * g++ package is needed to build some tests. * Gawk is not strictly needed, in that testing will work, but the process will complain without it. --- Interdiff against v1: diff --git a/INSTALL b/INSTALL index 25e3740ff..bb086a902 100644 --- a/INSTALL +++ b/INSTALL @@ -46,6 +46,11 @@ need the following. * Autoconf 2.63 or later * Automake 1.11 or later +Cross compiling tool chains can be found at the following trusted sites: + +* https://mirrors.kernel.org/pub/tools/crosstool/ +* https://toolchains.bootlin.com/ + Prerequisites for make-check: * qemu, specifically the binary 'qemu-system-ARCH' where ARCH is the @@ -57,14 +62,17 @@ Prerequisites for make-check: * mtools, FAT tools for EFI platforms * If running a Linux kernel the following modules must be loaded: - - minix, hfs, mac-roman, hfsplus, exfat, reiserfs, xfs, f2fs, btrfs, - nilfs2, jfs, fat, ext4, udf, romfs, isofs, squashfs + - fuse, loop, minix, hfs, mac-roman, hfsplus, reiserfs, xfs, f2fs, btrfs, + nilfs2, jfs, fat, ext4, udf + - On newer kernels, the exfat kernel modules may be used instead of the + exfat FUSE filesystem. * The following are debian named packages required mostly for the full suite of filesystem testing (but some are needed by other tests as well - tar, cpio, gzip, lzop, xz-utils, parted, util-linux, squashfs-tools, - zfs-fuse, dosfstools, exfat-utils, ntfs-3g, e2fsprogs, btrfs-progs, + zfs-fuse, dosfstools, exfatprogs, ntfs-3g, e2fsprogs, btrfs-progs, xfsprogs, hfsprogs, recode, jfsutils, reiserfsprogs, udftools, - nilfs-tools, f2fs-tools, genromfs, attr + nilfs-tools, f2fs-tools, genromfs, attr, g++, gawk + - exfat-fuse, if not using the exfat kernel module Note that `make check' will run and many tests may complete successfully with only a subset of these prerequisites. However, some tests may be INSTALL | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/INSTALL b/INSTALL index 5e152b71f..bb086a902 100644 --- a/INSTALL +++ b/INSTALL @@ -46,10 +46,37 @@ need the following. * Autoconf 2.63 or later * Automake 1.11 or later +Cross compiling tool chains can be found at the following trusted sites: + +* https://mirrors.kernel.org/pub/tools/crosstool/ +* https://toolchains.bootlin.com/ + Prerequisites for make-check: -* qemu, specifically the binary 'qemu-system-i386' +* qemu, specifically the binary 'qemu-system-ARCH' where ARCH is the + architecture GRUB has been built for +* OVMF, for EFI platforms +* OpenBIOS, for ieee1275 platforms * xorriso 1.2.9 or later, for grub-mkrescue and grub-shell +* wamerican, for grub-fs-tester +* mtools, FAT tools for EFI platforms + +* If running a Linux kernel the following modules must be loaded: + - fuse, loop, minix, hfs, mac-roman, hfsplus, reiserfs, xfs, f2fs, btrfs, + nilfs2, jfs, fat, ext4, udf + - On newer kernels, the exfat kernel modules may be used instead of the + exfat FUSE filesystem. +* The following are debian named packages required mostly for the full + suite of filesystem testing (but some are needed by other tests as well + - tar, cpio, gzip, lzop, xz-utils, parted, util-linux, squashfs-tools, + zfs-fuse, dosfstools, exfatprogs, ntfs-3g, e2fsprogs, btrfs-progs, + xfsprogs, hfsprogs, recode, jfsutils, reiserfsprogs, udftools, + nilfs-tools, f2fs-tools, genromfs, attr, g++, gawk + - exfat-fuse, if not using the exfat kernel module + +Note that `make check' will run and many tests may complete successfully +with only a subset of these prerequisites. However, some tests may be +skipped or fail due to missing prerequisites. Configuring the GRUB ==================== @@ -101,7 +128,8 @@ The simplest way to compile this package is: 6. Type `make' to compile the package. 7. Optionally, type `make check' to run any self-tests that come with - the package. + the package. Note that many of the tests require root privileges in + order to run. 8. Type `make install' to install the programs and any data files and documentation. -- 2.27.0