Step1/                                                                                               40755     765      24            0 11115336744  11320  5                                                                                                    ustar 00davidcole                       staff                                                                                                                                                                                                                  Step1/CMakeLists.txt                                                                                100755     765      24         1033 11115336573  14155  0                                                                                                    ustar 00davidcole                       staff                                                                                                                                                                                                                  cmake_minimum_required (VERSION 2.6)
project (Tutorial)

# The version number.
set (Tutorial_VERSION_MAJOR 1)
set (Tutorial_VERSION_MINOR 0)

# configure a header file to pass some of the CMake settings
# to the source code
configure_file (
  "${PROJECT_SOURCE_DIR}/TutorialConfig.h.in"
  "${PROJECT_BINARY_DIR}/TutorialConfig.h"
  )

# add the binary tree to the search path for include files
# so that we will find TutorialConfig.h
include_directories("${PROJECT_BINARY_DIR}")

# add the executable
add_executable(Tutorial tutorial.cxx)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     Step1/tutorial.cxx                                                                                  100755     765      24         1115 11115336573  14005  0                                                                                                    ustar 00davidcole                       staff                                                                                                                                                                                                                  // A simple program that computes the square root of a number
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include "TutorialConfig.h"

int main (int argc, char *argv[])
{
  if (argc < 2)
    {
    fprintf(stdout,"%s Version %d.%d\n",
            argv[0],
            Tutorial_VERSION_MAJOR,
            Tutorial_VERSION_MINOR);
    fprintf(stdout,"Usage: %s number\n",argv[0]);
    return 1;
    }
  double inputValue = atof(argv[1]);
  double outputValue = sqrt(inputValue);
  fprintf(stdout,"The square root of %g is %g\n",
          inputValue, outputValue);
  return 0;
}
                                                                                                                                                                                                                                                                                                                                                                                                                                                   Step1/TutorialConfig.h.in                                                                           100755     765      24          245 11115336573  15110  0                                                                                                    ustar 00davidcole                       staff                                                                                                                                                                                                                  // the configured options and settings for Tutorial
#define Tutorial_VERSION_MAJOR @Tutorial_VERSION_MAJOR@
#define Tutorial_VERSION_MINOR @Tutorial_VERSION_MINOR@

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           