code: private File findBuildFile(final String start, final String suffix) {
          if (args.msgOutputLevel >= Project.MSG_INFO) {
              System.out.println("Searching for " + suffix + " ...");
          }
  
          File parent = new File(new File(start).getAbsolutePath());
          File file = new File(parent, suffix);
  
          // check if the target file exists in the current directory
          while (!file.exists()) {
              // change to parent directory
              parent = getParentFile(parent);
  
              // if parent is null, then we are at the root of the fs,
              // complain that we can't find the build file.
              if (parent == null) {
                  return null;
              }
  
              // refresh our file handle
              file = new File(parent, suffix);
          }
  
          return file;
      }
docs: Search parent directories for the build file.
  <p>
  Takes the given target as a suffix to append to each parent directory in
  search of a build file. Once the root of the file-system has been reached
  <code>null</code> is returned.
  
  @param start  Leaf directory of search. Must not be <code>null</code>.
  @param suffix Suffix filename to look for in parents. Must not be
  <code>null</code>.
  @return A handle to the build file if one is found, <code>null</code> if
  not