code: def run(self):
          
  
          self.announce("Moving scripts files", level=3)
  
          self.skip_build = True
  
          bin_dir = self.distribution.bin_dir
  
          scripts_dirs = [os.path.join(bin_dir, _dir) for _dir in
                          os.listdir(bin_dir) if
                          os.path.isdir(os.path.join(bin_dir, _dir))]
  
          for scripts_dir in scripts_dirs:
  
              dst_dir = os.path.join(self.build_dir,
                                     os.path.basename(scripts_dir))
  
              # Mostly in case of weird things happening during build
              if os.path.exists(dst_dir):
                  
                  if os.path.isdir(dst_dir): 
  
                      shutil.rmtree(dst_dir)
  
                  elif os.path.isfile(dst_dir):
  
                      os.remove(dst_dir)
  
              shutil.move(scripts_dir,
                          os.path.join(self.build_dir,
                                       os.path.basename(scripts_dir)))
  
          # Mark the scripts for installation, adding them to 
          # distribution.scripts seems to ensure that the setuptools' record 
          # writer appends them to installed-files.txt in the package's egg-info
  
          self.distribution.scripts = scripts_dirs
  
          super().run()
docs: Copy the required directory to the build directory and super().run()