# Recipe for building GNU grep at specific snapshot # # SPDX-FileCopyrightText: 2003-2012 Eelco Dolstra # SPDX-FileCopyrightText: 2009-2011 Ludovic Courtès # SPDX-FileCopyrightText: 2009-2010 Rob Vermaas # SPDX-FileCopyrightText: 2010 Lluís Batlle i Rossell # SPDX-License-Identifier: MIT # # SPDX-FileCopyrightText: 2023 Nguyễn Gia Phong # SPDX-License-Identifier: AGPL-3.0-or-later { lib, stdenv, version, base, snapshot , bcExtractHook, binRenameHook, pcre, libiconv }: stdenv.mkDerivation rec { pname = "grep"; inherit version; nativeBuildInputs = [ bcExtractHook binRenameHook ]; buildInputs = [ pcre libiconv ]; hardeningDisable = [ "all" ]; src = base; # bootstrap files postPatch = '' tar xf ${snapshot} --strip-components=1 ''; preConfigure = '' # On macOS, force use of mkdir -p, # since grep's fallback (./install-sh) is broken. export MKDIR_P="mkdir -p" # Skip extra initialization and optimizations configureFlagsArray+=(--disable-nls) ''; doCheck = false; meta = with lib; { homepage = "https://www.gnu.org/software/grep"; description = "GNU implementation of the Unix grep command"; longDescription = '' The grep command searches one or more input files for lines containing a match to a specified pattern. By default, grep prints the matching lines. ''; license = licenses.gpl3Plus; platforms = platforms.all; }; }