CMake Warning \(dev\) at MissingNormalWarnNoModuleOld.cmake:2 \(find_package\):
  find_package called without NO_MODULE option and no FindNotHere.cmake
  module is in CMAKE_MODULE_PATH.  Add NO_MODULE to exclusively request
  Config mode and search for a package configuration file provided by NotHere
  \(NotHereConfig.cmake or nothere-config.cmake\).  Otherwise make
  FindNotHere.cmake available in CMAKE_MODULE_PATH.

  \(Variable CMAKE_FIND_PACKAGE_WARN_NO_MODULE enabled this warning.\)
Call Stack \(most recent call first\):
  CMakeLists.txt:3 \(include\)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning at MissingNormalWarnNoModuleOld.cmake:2 \(find_package\):
  By not providing "FindNotHere.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "NotHere", but
  CMake did not find one.

  Could not find a package configuration file provided by "NotHere" with any
  of the following names:

    NotHereConfig.cmake
    nothere-config.cmake

  Add the installation prefix of "NotHere" to CMAKE_PREFIX_PATH or set
  "NotHere_DIR" to a directory containing one of the above files.  If
  "NotHere" provides a separate development package or SDK, be sure it has
  been installed.
Call Stack \(most recent call first\):
  CMakeLists.txt:3 \(include\)
