text: # Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
  # Spack Project Developers. See the top-level COPYRIGHT file for details.
  #
  # SPDX-License-Identifier: (Apache-2.0 OR MIT)
  
  from spack import *
  
  
  class Bmake(Package):
      """Portable version of NetBSD make(1)."""
  
      homepage = "https://www.crufty.net/help/sjg/bmake.htm"
      url      = "http://www.crufty.net/ftp/pub/sjg/bmake-20180512.tar.gz"
  
      version('20200710', sha256='6538fc4319ef79d178dca76d3b869f7aa93a9bb7b510df08a7d872c01a56b76c')
      version('20180512', sha256='ac3cd262065fcc20c1dec7c95f06306c8138b3e17025b949343a06a8980a5508')
      version('20171207', sha256='1703667e53a0498c0903b20612ebcbb41b886a94b238624cfeadd91a4111d39a')
  
      phases = ['configure', 'build', 'install']
  
      def patch(self):
          # Do not pre-roff cat pages
          filter_file('MANTARGET?', 'MANTARGET', 'mk/man.mk', string=True)
          # boot-strap hardcodes the directory it expects to be extracted to
          filter_file('GetDir /bmake', 'GetDir ' + self.stage.source_path,
                      'boot-strap', string=True)
  
      def configure(self, spec, prefix):
          sh = which('sh')
          sh('boot-strap', 'op=configure')
  
      def build(self, spec, prefix):
          sh = which('sh')
          sh('boot-strap', 'op=build')
  
      def install(self, spec, prefix):
          sh = which('sh')
          sh('boot-strap', '--prefix={0}'.format(prefix), 'op=install')
  