[liblas] 01/01: Imported Upstream version 1.8.0

Bas Couwenberg sebastic at xs4all.nl
Sun Aug 3 12:17:13 UTC 2014


This is an automated email from the git hooks/post-receive script.

sebastic-guest pushed a commit to branch upstream
in repository liblas.

commit 0a47b1edc1a22efb7de5599e5971b59c9c1152e2
Author: Bas Couwenberg <sebastic at xs4all.nl>
Date:   Sun Aug 3 12:07:11 2014 +0200

    Imported Upstream version 1.8.0
---
 .gitignore                                         |  116 --
 .hgtags                                            |   17 +
 AUTHORS                                            |    0
 CMakeFiles/CMakeCCompiler.cmake                    |   49 -
 CMakeFiles/CMakeCXXCompiler.cmake                  |   50 -
 CMakeFiles/CMakeDetermineCompilerABI_C.bin         |  Bin 8696 -> 0 bytes
 CMakeFiles/CMakeDetermineCompilerABI_CXX.bin       |  Bin 8680 -> 0 bytes
 CMakeFiles/CMakeDirectoryInformation.cmake         |   22 -
 CMakeFiles/CMakeOutput.log                         |  218 ----
 CMakeFiles/CMakeRuleHashes.txt                     |    2 -
 CMakeFiles/CMakeSystem.cmake                       |   15 -
 CMakeFiles/CompilerIdC/CMakeCCompilerId.c          |  229 ----
 CMakeFiles/CompilerIdC/a.out                       |  Bin 8776 -> 0 bytes
 CMakeFiles/CompilerIdCXX/CMakeCXXCompilerId.cpp    |  215 ----
 CMakeFiles/CompilerIdCXX/a.out                     |  Bin 8776 -> 0 bytes
 CMakeFiles/Makefile.cmake                          |   87 --
 CMakeFiles/Makefile2                               |  704 ------------
 CMakeFiles/TargetDirectories.txt                   |   16 -
 CMakeFiles/cmake.check_cache                       |    1 -
 CMakeFiles/dist.dir/DependInfo.cmake               |    8 -
 CMakeFiles/dist.dir/build.make                     |   63 --
 CMakeFiles/dist.dir/cmake_clean.cmake              |    8 -
 CMakeFiles/dist.dir/depend.internal                |    3 -
 CMakeFiles/dist.dir/depend.make                    |    3 -
 CMakeFiles/dist.dir/progress.make                  |    1 -
 CMakeFiles/progress.marks                          |    1 -
 CMakeLists.txt                                     |  799 +++++++-------
 COPYING                                            |    0
 CPackSourceConfig.cmake                            |   88 --
 CTestConfig.cmake                                  |    0
 CTestTestfile.cmake                                |    9 -
 INSTALL                                            |    0
 LICENSE.txt                                        |   24 +-
 Makefile                                           |  424 -------
 NEWS                                               |    0
 apps/CMakeFiles/CMakeDirectoryInformation.cmake    |   25 -
 apps/CMakeFiles/bigfile_test.dir/DependInfo.cmake  |   15 -
 apps/CMakeFiles/bigfile_test.dir/build.make        |  106 --
 apps/CMakeFiles/bigfile_test.dir/cmake_clean.cmake |   10 -
 apps/CMakeFiles/bigfile_test.dir/depend.make       |    2 -
 apps/CMakeFiles/bigfile_test.dir/flags.make        |    8 -
 apps/CMakeFiles/bigfile_test.dir/link.txt          |    1 -
 apps/CMakeFiles/bigfile_test.dir/progress.make     |    2 -
 apps/CMakeFiles/las2las-old.dir/DependInfo.cmake   |   16 -
 apps/CMakeFiles/las2las-old.dir/build.make         |  132 ---
 apps/CMakeFiles/las2las-old.dir/cmake_clean.cmake  |   11 -
 apps/CMakeFiles/las2las-old.dir/depend.make        |    2 -
 apps/CMakeFiles/las2las-old.dir/flags.make         |    8 -
 apps/CMakeFiles/las2las-old.dir/link.txt           |    1 -
 apps/CMakeFiles/las2las-old.dir/progress.make      |    3 -
 apps/CMakeFiles/las2las.dir/DependInfo.cmake       |   15 -
 apps/CMakeFiles/las2las.dir/build.make             |  131 ---
 apps/CMakeFiles/las2las.dir/cmake_clean.cmake      |   11 -
 apps/CMakeFiles/las2las.dir/depend.make            |    2 -
 apps/CMakeFiles/las2las.dir/flags.make             |    8 -
 apps/CMakeFiles/las2las.dir/link.txt               |    1 -
 apps/CMakeFiles/las2las.dir/progress.make          |    3 -
 apps/CMakeFiles/las2txt-old.dir/DependInfo.cmake   |   16 -
 apps/CMakeFiles/las2txt-old.dir/build.make         |  132 ---
 apps/CMakeFiles/las2txt-old.dir/cmake_clean.cmake  |   11 -
 apps/CMakeFiles/las2txt-old.dir/depend.make        |    2 -
 apps/CMakeFiles/las2txt-old.dir/flags.make         |    8 -
 apps/CMakeFiles/las2txt-old.dir/link.txt           |    1 -
 apps/CMakeFiles/las2txt-old.dir/progress.make      |    3 -
 apps/CMakeFiles/las2txt.dir/DependInfo.cmake       |   15 -
 apps/CMakeFiles/las2txt.dir/build.make             |  131 ---
 apps/CMakeFiles/las2txt.dir/cmake_clean.cmake      |   11 -
 apps/CMakeFiles/las2txt.dir/depend.make            |    2 -
 apps/CMakeFiles/las2txt.dir/flags.make             |    8 -
 apps/CMakeFiles/las2txt.dir/link.txt               |    1 -
 apps/CMakeFiles/las2txt.dir/progress.make          |    3 -
 apps/CMakeFiles/lasblock.dir/DependInfo.cmake      |   15 -
 apps/CMakeFiles/lasblock.dir/build.make            |  131 ---
 apps/CMakeFiles/lasblock.dir/cmake_clean.cmake     |   11 -
 apps/CMakeFiles/lasblock.dir/depend.make           |    2 -
 apps/CMakeFiles/lasblock.dir/flags.make            |    8 -
 apps/CMakeFiles/lasblock.dir/link.txt              |    1 -
 apps/CMakeFiles/lasblock.dir/progress.make         |    3 -
 apps/CMakeFiles/lasindex_test.dir/DependInfo.cmake |   14 -
 apps/CMakeFiles/lasindex_test.dir/build.make       |  105 --
 .../CMakeFiles/lasindex_test.dir/cmake_clean.cmake |   10 -
 apps/CMakeFiles/lasindex_test.dir/depend.make      |    2 -
 apps/CMakeFiles/lasindex_test.dir/flags.make       |    8 -
 apps/CMakeFiles/lasindex_test.dir/link.txt         |    1 -
 apps/CMakeFiles/lasindex_test.dir/progress.make    |    2 -
 apps/CMakeFiles/lasinfo-old.dir/DependInfo.cmake   |   16 -
 apps/CMakeFiles/lasinfo-old.dir/build.make         |  132 ---
 apps/CMakeFiles/lasinfo-old.dir/cmake_clean.cmake  |   11 -
 apps/CMakeFiles/lasinfo-old.dir/depend.make        |    2 -
 apps/CMakeFiles/lasinfo-old.dir/flags.make         |    8 -
 apps/CMakeFiles/lasinfo-old.dir/link.txt           |    1 -
 apps/CMakeFiles/lasinfo-old.dir/progress.make      |    3 -
 apps/CMakeFiles/lasinfo.dir/DependInfo.cmake       |   15 -
 apps/CMakeFiles/lasinfo.dir/build.make             |  131 ---
 apps/CMakeFiles/lasinfo.dir/cmake_clean.cmake      |   11 -
 apps/CMakeFiles/lasinfo.dir/depend.make            |    2 -
 apps/CMakeFiles/lasinfo.dir/flags.make             |    8 -
 apps/CMakeFiles/lasinfo.dir/link.txt               |    1 -
 apps/CMakeFiles/lasinfo.dir/progress.make          |    3 -
 apps/CMakeFiles/lasmerge.dir/DependInfo.cmake      |   16 -
 apps/CMakeFiles/lasmerge.dir/build.make            |  132 ---
 apps/CMakeFiles/lasmerge.dir/cmake_clean.cmake     |   11 -
 apps/CMakeFiles/lasmerge.dir/depend.make           |    2 -
 apps/CMakeFiles/lasmerge.dir/flags.make            |    8 -
 apps/CMakeFiles/lasmerge.dir/link.txt              |    1 -
 apps/CMakeFiles/lasmerge.dir/progress.make         |    3 -
 apps/CMakeFiles/progress.marks                     |    1 -
 apps/CMakeFiles/ts2las.dir/DependInfo.cmake        |   15 -
 apps/CMakeFiles/ts2las.dir/build.make              |  131 ---
 apps/CMakeFiles/ts2las.dir/cmake_clean.cmake       |   11 -
 apps/CMakeFiles/ts2las.dir/depend.make             |    2 -
 apps/CMakeFiles/ts2las.dir/flags.make              |    8 -
 apps/CMakeFiles/ts2las.dir/link.txt                |    1 -
 apps/CMakeFiles/ts2las.dir/progress.make           |    3 -
 apps/CMakeFiles/txt2las.dir/DependInfo.cmake       |   16 -
 apps/CMakeFiles/txt2las.dir/build.make             |  132 ---
 apps/CMakeFiles/txt2las.dir/cmake_clean.cmake      |   11 -
 apps/CMakeFiles/txt2las.dir/depend.make            |    2 -
 apps/CMakeFiles/txt2las.dir/flags.make             |    8 -
 apps/CMakeFiles/txt2las.dir/link.txt               |    1 -
 apps/CMakeFiles/txt2las.dir/progress.make          |    3 -
 apps/CMakeLists.txt                                |   61 +-
 apps/Makefile                                      |  782 -------------
 apps/bigfile_boost_iostreams_test.cpp              |   10 +-
 apps/bigtest.c                                     |    0
 apps/cmake_install.cmake                           |  181 ---
 apps/las2las-old.c                                 | 1165 --------------------
 apps/las2las.cpp                                   |    0
 apps/las2ogr.cpp                                   |    0
 apps/las2txt.c                                     |    2 +-
 apps/las2txt.cpp                                   |    0
 apps/lasblock.cpp                                  |    2 +-
 apps/lascommon.c                                   |    0
 apps/lascommon.h                                   |    0
 apps/lasdiff.c                                     |    0
 apps/lasindex.cpp                                  |    0
 apps/lasindex_test.cpp                             |    0
 apps/lasinfo-old.c                                 |  420 -------
 apps/lasinfo.cpp                                   |    0
 apps/laskernel.cpp                                 |   23 +-
 apps/laskernel.hpp                                 |    0
 apps/lasmerge.c                                    |  507 ---------
 apps/liblas-config                                 |   24 +-
 apps/liblas-config.in                              |    0
 apps/liblas.pc.in                                  |    0
 apps/ts2las.cpp                                    |    4 +-
 apps/ts2las.hpp                                    |    0
 apps/txt2las.c                                     |    2 +-
 bin/ci/before_install.sh                           |   25 +
 bin/ci/common.sh                                   |   15 +
 bin/ci/script.sh                                   |   17 +
 buildout/bootstrap.py                              |    0
 buildout/buildout.cfg                              |    0
 buildout/setenv.in                                 |    0
 cmake/CMakeLists.txt                               |   33 +
 cmake/libLAS.vcproj.user.template                  |    0
 cmake/liblas-config-version.cmake                  |   18 +
 cmake/liblas-config-version.cmake.in               |   18 +
 cmake/liblas-config.cmake                          |   29 +
 cmake/liblas-config.cmake.in                       |   29 +
 cmake/modules/BuildOSGeo4W.cmake                   |    0
 cmake/modules/FindGDAL.cmake                       |  110 +-
 cmake/modules/FindGeoTIFF.cmake                    |    6 +-
 cmake/modules/FindLASzip.cmake                     |    2 +-
 cmake/modules/FindOracle.cmake                     |    0
 cmake/modules/FindSpatialIndex.cmake               |    0
 cmake_install.cmake                                |   57 -
 csharp-new/liblas_swig.sln                         |    0
 csharp-new/liblas_swig_cpp/liblas.i                |    0
 csharp-new/liblas_swig_cpp/liblas_swig_cpp.vcxproj |    0
 .../liblas_swig_cpp.vcxproj.filters                |    0
 .../liblas_swig_cpp/liblas_swig_cpp.vcxproj.user   |    0
 .../liblas_swig_cs/Properties/AssemblyInfo.cs      |    0
 csharp-new/liblas_swig_cs/liblas_swig_cs.csproj    |    0
 csharp-new/liblas_swig_test/Program.cs             |    0
 .../liblas_swig_test/Properties/AssemblyInfo.cs    |    0
 csharp-new/liblas_swig_test/TestGuid.cs            |    0
 csharp-new/liblas_swig_test/TestHeader.cs          |    0
 csharp-new/liblas_swig_test/TestPoint.cs           |    0
 csharp-new/liblas_swig_test/TestReader.cs          |    0
 .../liblas_swig_test/TestSpatialReference.cs       |    0
 csharp-new/liblas_swig_test/TestVariableRecord.cs  |    0
 .../liblas_swig_test/liblas_swig_test.csproj       |    0
 csharp/HelloWorldLAS/HelloWorldLAS.csproj          |    0
 csharp/HelloWorldLAS/HelloWorldLAS_Express.csproj  |    0
 csharp/HelloWorldLAS/Program.cs                    |    0
 csharp/HelloWorldLAS/Properties/AssemblyInfo.cs    |    0
 csharp/NUnitTest/LASFilesClass.cs                  |    0
 csharp/NUnitTest/LASGuidTest.cs                    |    0
 csharp/NUnitTest/LASHeaderTest.cs                  |    0
 csharp/NUnitTest/LASPointTest.cs                   |    0
 csharp/NUnitTest/LASReaderTest.cs                  |    0
 csharp/NUnitTest/LASVariableLengthRecordTest.cs    |    0
 csharp/NUnitTest/LASWriterTest.cs                  |    0
 csharp/NUnitTest/NUnitTest.csproj                  |    0
 csharp/NUnitTest/NUnitTest_Express.csproj          |    0
 csharp/NUnitTest/Properties/AssemblyInfo.cs        |    0
 csharp/Samples/Read_Express/ReadLAS.cs             |    0
 csharp/Samples/Read_Express/Read_Express.csproj    |    0
 csharp/Samples/WriteLAS/Properties/AssemblyInfo.cs |    0
 csharp/Samples/WriteLAS/WriteLAS.cs                |    0
 csharp/Samples/WriteLAS/Write_Express.csproj       |    0
 csharp/dotnetLibLAS.sln                            |    0
 csharp/dotnetLibLAS/AssemblyInfo.cs                |    0
 csharp/dotnetLibLAS/LASException.cs                |    0
 csharp/dotnetLibLAS/LASGuid.cs                     |    0
 csharp/dotnetLibLAS/LASHeader.cs                   |    0
 csharp/dotnetLibLAS/LASPoint.cs                    |    0
 csharp/dotnetLibLAS/LASReader.cs                   |    0
 csharp/dotnetLibLAS/LASVariableLengthRecord.cs     |    0
 csharp/dotnetLibLAS/LASWriter.cs                   |    0
 csharp/dotnetLibLAS/LibLASCAPI.cs                  |    0
 csharp/dotnetLibLAS/dotnetLibLAS.csproj            |    0
 csharp/dotnetLibLAS/dotnetLibLAS.dll.config        |    0
 csharp/dotnetLibLAS/dotnetLibLAS_Express.csproj    |    0
 csharp/dotnetLibLAS/dotnetLibLas.xml               |    0
 csharp/dotnetLibLAS/liblas.snk                     |  Bin
 csharp/dotnetLibLAS_xpress.sln                     |    0
 csharp/makefile.vc                                 |    0
 doc/Makefile                                       |  141 ---
 doc/_static/liblas-color-pallette.css              |    0
 doc/_static/liblaslogo.png                         |  Bin
 doc/_static/pdf.png                                |  Bin
 doc/_static/sphinx.css                             |    0
 doc/_templates/indexsidebar.html                   |   42 +-
 doc/_templates/layout.html                         |    4 +-
 doc/api/TracFooter.html                            |    0
 doc/api/TracHeader.html                            |    0
 doc/api/doxygen.conf                               |    0
 doc/api/doxygen.css                                |    0
 doc/api/doxygen_dev.conf                           |    0
 doc/community.txt                                  |    2 +-
 doc/compilation.txt                                |    0
 doc/conf.py                                        |    2 +-
 doc/copyright.txt                                  |    0
 doc/development/annual_report_2010.txt             |    0
 doc/development/buildbot.txt                       |   21 +-
 doc/development/format_elements.txt                |    0
 doc/development/index.txt                          |    0
 doc/development/rfc/index.txt                      |    0
 doc/development/rfc/rfc_1_verticalcs.txt           |    0
 doc/development/rfc/rfc_2_spatialreference.txt     |    0
 doc/development/source.txt                         |    0
 doc/development/specifications.txt                 |    0
 doc/development/wkt.txt                            |    0
 doc/docs.txt                                       |    4 +-
 doc/download.txt                                   |  138 +--
 doc/faq.txt                                        |   39 +-
 doc/features.txt                                   |    0
 doc/images/boostpro-options.png                    |  Bin
 doc/images/ccmake-osx-start.png                    |  Bin
 doc/images/cmake-gui-osx-configured.png            |  Bin
 doc/images/cmake-gui-osx-start.png                 |  Bin
 doc/images/lasblock_big.png                        |  Bin
 doc/images/lasblock_small.png                      |  Bin
 doc/images/liblas-logo.svg                         |    0
 doc/images/liblas-twitter-logo.png                 |  Bin
 doc/images/osgeo4w-advanced-install.png            |  Bin
 doc/images/osgeo4w-las2las-reproject.png           |  Bin
 doc/images/osgeo4w-lasinfo-output.png              |  Bin
 doc/images/osgeo4w-lasinfo-point.png               |  Bin
 doc/images/osgeo4w-run-liblas-shell.png            |  Bin
 doc/images/osgeo4w-select-liblas.png               |  Bin
 doc/images/windows-cmake-generator-makefiles.png   |  Bin
 .../windows-cmake-generator-visual-studio-9.png    |  Bin
 doc/images/windows-cmake-start.png                 |  Bin
 doc/images/windows-command-prompt.png              |  Bin
 doc/images/windows-msvc-build.png                  |  Bin
 doc/images/windows-osgeo4w-advanced-install.png    |  Bin
 doc/images/windows-osgeo4w-choosing-packages.png   |  Bin
 doc/images/xcode-lasinfo-arguments.png             |  Bin
 doc/images/xcode-lasinfo-output.png                |  Bin
 doc/images/xcode-set-default-executable.png        |  Bin
 doc/images/xcode-start.png                         |  Bin
 doc/index.txt                                      |   19 +-
 doc/lastools.txt                                   |    0
 doc/liblas.json                                    |    0
 doc/make.bat                                       |    0
 doc/osgeo4w.txt                                    |    0
 doc/python.txt                                     |   11 -
 doc/start.txt                                      |   15 +
 doc/tutorial/boo.txt                               |    0
 doc/tutorial/cpp.txt                               |   12 +-
 doc/tutorial/csharp.txt                            |    0
 doc/tutorial/index.txt                             |    0
 doc/tutorial/ironpython.txt                        |    0
 doc/tutorial/python.txt                            |    0
 doc/tutorial/qhull.txt                             |    0
 doc/tutorial/vbnet.txt                             |    0
 doc/utilities/index.txt                            |    3 +-
 doc/utilities/las2las-old.txt                      |    6 +-
 doc/utilities/las2las.txt                          |    0
 doc/utilities/las2ogr.txt                          |    3 -
 doc/utilities/las2tindex.txt                       |   50 +
 doc/utilities/las2txt.txt                          |    0
 doc/utilities/lasblock.txt                         |    0
 doc/utilities/lasdiff.txt                          |    0
 doc/utilities/lasinfo-old.txt                      |    0
 doc/utilities/lasinfo.txt                          |    0
 doc/utilities/lasmerge.txt                         |    0
 doc/utilities/ts2las.txt                           |    0
 doc/utilities/txt2las.txt                          |    0
 include/CMakeLists.txt                             |    0
 include/liblas/bounds.hpp                          |   81 +-
 include/liblas/capi/las_config.h                   |    0
 include/liblas/capi/las_version.h                  |    6 +-
 include/liblas/capi/liblas.h                       |    0
 include/liblas/chipper.hpp                         |   36 +-
 include/liblas/classification.hpp                  |   16 +-
 include/liblas/color.hpp                           |    6 +-
 include/liblas/compatibility.hpp                   |    0
 include/liblas/detail/binary.hpp                   |   11 +-
 include/liblas/detail/endian.hpp                   |    0
 include/liblas/detail/file_ptr_stream.hpp          |    0
 include/liblas/detail/fwd.hpp                      |    0
 include/liblas/detail/index/indexcell.hpp          |   46 +-
 include/liblas/detail/index/indexoutput.hpp        |    8 +-
 include/liblas/detail/opt_allocator.hpp            |    0
 include/liblas/detail/pointrecord.hpp              |   21 +-
 include/liblas/detail/private_utility.hpp          |   11 +-
 include/liblas/detail/reader/cachedreader.hpp      |   11 +-
 include/liblas/detail/reader/header.hpp            |    0
 include/liblas/detail/reader/reader.hpp            |    8 +-
 include/liblas/detail/reader/zipreader.hpp         |    6 +-
 include/liblas/detail/sha1.hpp                     |    0
 include/liblas/detail/singleton.hpp                |    0
 include/liblas/detail/timer.hpp                    |    0
 include/liblas/detail/writer/header.hpp            |    8 +-
 include/liblas/detail/writer/point.hpp             |    8 +-
 include/liblas/detail/writer/writer.hpp            |    7 +-
 include/liblas/detail/writer/zipwriter.hpp         |    7 +-
 include/liblas/detail/zippoint.hpp                 |    3 +-
 include/liblas/dimension.hpp                       |    7 +-
 include/liblas/error.hpp                           |    0
 include/liblas/exception.hpp                       |    0
 include/liblas/export.hpp                          |    0
 .../detail/exception_implementation.hpp            |    0
 .../property_tree/detail/file_parser_error.hpp     |    0
 .../property_tree/detail/info_parser_error.hpp     |    0
 .../property_tree/detail/info_parser_read.hpp      |    0
 .../property_tree/detail/info_parser_utils.hpp     |    0
 .../property_tree/detail/info_parser_write.hpp     |    0
 .../detail/info_parser_writer_settings.hpp         |    0
 .../property_tree/detail/json_parser_error.hpp     |    0
 .../property_tree/detail/json_parser_read.hpp      |    0
 .../property_tree/detail/json_parser_write.hpp     |    0
 .../property_tree/detail/ptree_implementation.hpp  |    0
 .../external/property_tree/detail/ptree_utils.hpp  |    0
 .../external/property_tree/detail/rapidxml.hpp     |    0
 .../property_tree/detail/xml_parser_error.hpp      |    0
 .../property_tree/detail/xml_parser_flags.hpp      |    0
 .../detail/xml_parser_read_rapidxml.hpp            |    0
 .../property_tree/detail/xml_parser_utils.hpp      |    0
 .../property_tree/detail/xml_parser_write.hpp      |    0
 .../detail/xml_parser_writer_settings.hpp          |    0
 .../liblas/external/property_tree/exceptions.hpp   |    0
 .../external/property_tree/id_translator.hpp       |    0
 .../liblas/external/property_tree/info_parser.hpp  |    0
 .../liblas/external/property_tree/ini_parser.hpp   |    0
 .../liblas/external/property_tree/json_parser.hpp  |    0
 include/liblas/external/property_tree/ptree.hpp    |    0
 .../liblas/external/property_tree/ptree_fwd.hpp    |    0
 .../external/property_tree/ptree_serialization.hpp |    0
 .../external/property_tree/stream_translator.hpp   |    0
 .../liblas/external/property_tree/string_path.hpp  |    0
 .../liblas/external/property_tree/xml_parser.hpp   |    0
 include/liblas/factory.hpp                         |    5 +-
 include/liblas/filter.hpp                          |    9 +-
 include/liblas/guid.hpp                            |  623 -----------
 include/liblas/header.hpp                          |   94 +-
 include/liblas/index.hpp                           |  132 +--
 include/liblas/iterator.hpp                        |    0
 include/liblas/liblas.hpp                          |    6 +-
 include/liblas/point.hpp                           |   63 +-
 include/liblas/reader.hpp                          |    0
 include/liblas/schema.hpp                          |    9 +-
 include/liblas/spatialreference.hpp                |    6 +-
 include/liblas/transform.hpp                       |    8 +-
 include/liblas/utility.hpp                         |   32 +-
 include/liblas/variablerecord.hpp                  |   25 +-
 include/liblas/version.hpp                         |    0
 include/liblas/writer.hpp                          |    0
 python/examples/add_vlr.py                         |    0
 python/examples/grab_classes.py                    |    0
 python/examples/oci_pc.py                          |    0
 python/liblas/__init__.py                          |   16 +-
 python/liblas/color.py                             |    2 +-
 python/liblas/core.py                              |    4 +-
 python/liblas/file.py                              |   17 +-
 python/liblas/guid.py                              |    4 +-
 python/liblas/header.py                            |   26 +-
 python/liblas/point.py                             |   72 +-
 python/liblas/schema.py                            |    2 +-
 python/liblas/srs.py                               |    6 +-
 python/liblas/vlr.py                               |    2 +-
 python/scripts/las2tindex.py                       |  175 +++
 python/setup.py                                    |    2 +-
 python/tests/Color.txt                             |    8 +-
 python/tests/File.txt                              |  231 ++--
 python/tests/GUID.txt                              |   16 +-
 python/tests/Header.txt                            |   72 +-
 python/tests/Point.txt                             |   37 +-
 python/tests/SRS-GDAL.txt                          |   73 +-
 python/tests/SRS-GeoTIFF.txt                       |    0
 python/tests/SRS.txt                               |    0
 python/tests/Schema.txt                            |    0
 python/tests/VLR.txt                               |   77 +-
 python/tests/__init__.py                           |    0
 python/tests/test_doctests.py                      |   14 +-
 rpm/libLAS.spec                                    |    0
 src/CMakeFiles/CMakeDirectoryInformation.cmake     |   23 -
 src/CMakeFiles/las.dir/DependInfo.cmake            |   48 -
 src/CMakeFiles/las.dir/build.make                  |  861 ---------------
 src/CMakeFiles/las.dir/cmake_clean.cmake           |   40 -
 src/CMakeFiles/las.dir/depend.make                 |    2 -
 src/CMakeFiles/las.dir/flags.make                  |    8 -
 src/CMakeFiles/las.dir/link.txt                    |    1 -
 src/CMakeFiles/las.dir/progress.make               |   31 -
 src/CMakeFiles/las_c.dir/DependInfo.cmake          |   20 -
 src/CMakeFiles/las_c.dir/build.make                |  108 --
 src/CMakeFiles/las_c.dir/cmake_clean.cmake         |   11 -
 src/CMakeFiles/las_c.dir/depend.make               |    2 -
 src/CMakeFiles/las_c.dir/flags.make                |    8 -
 src/CMakeFiles/las_c.dir/link.txt                  |    1 -
 src/CMakeFiles/las_c.dir/progress.make             |    2 -
 src/CMakeFiles/progress.marks                      |    1 -
 src/CMakeLists.txt                                 |   26 +-
 src/Makefile                                       | 1067 ------------------
 src/Version.rc                                     |    0
 src/c_api.cpp                                      |  259 ++---
 src/chipper.cpp                                    |  108 +-
 src/classification.cpp                             |    8 +-
 src/cmake_install.cmake                            |   76 --
 src/color.cpp                                      |   10 +-
 src/detail/index/indexcell.cpp                     |   34 +-
 src/detail/index/indexoutput.cpp                   |   80 +-
 src/detail/reader/cachedreader.cpp                 |   14 +-
 src/detail/reader/header.cpp                       |   54 +-
 src/detail/reader/reader.cpp                       |    4 +-
 src/detail/reader/zipreader.cpp                    |   13 +-
 src/detail/sha1.cpp                                |    0
 src/detail/utility.cpp                             |    0
 src/detail/writer/header.cpp                       |   50 +-
 src/detail/writer/point.cpp                        |    0
 src/detail/writer/writer.cpp                       |    4 +-
 src/detail/writer/zipwriter.cpp                    |    0
 src/detail/zippoint.cpp                            |   10 +-
 src/dimension.cpp                                  |   12 +-
 src/error.cpp                                      |    0
 src/factory.cpp                                    |    2 +-
 src/filter.cpp                                     |    0
 src/gt_citation.cpp                                |    0
 src/gt_citation.h                                  |    0
 src/gt_wkt_srs.cpp                                 |  812 +++++++++-----
 src/gt_wkt_srs.h                                   |    4 +-
 src/gt_wkt_srs_for_gdal.h                          |   18 +-
 src/header.cpp                                     |   77 +-
 src/index.cpp                                      |  258 ++---
 src/point.cpp                                      |  342 +++---
 src/reader.cpp                                     |    0
 src/schema.cpp                                     |   30 +-
 src/spatialreference.cpp                           |   16 +-
 src/tifvsi.cpp                                     |   39 +-
 src/tifvsi.h                                       |    3 +-
 src/transform.cpp                                  |   49 +-
 src/utility.cpp                                    |  296 ++---
 src/variablerecord.cpp                             |    6 +-
 src/version.cpp                                    |    0
 src/writer.cpp                                     |    0
 test/CMakeFiles/CMakeDirectoryInformation.cmake    |   22 -
 test/CMakeFiles/progress.marks                     |    1 -
 test/CMakeLists.txt                                |    0
 test/CTestTestfile.cmake                           |    7 -
 test/Makefile                                      |  200 ----
 test/cmake_install.cmake                           |   35 -
 test/data/1.0_0.las                                |  Bin
 test/data/1.0_1.las                                |  Bin
 test/data/1.1_0.las                                |  Bin
 test/data/1.1_1.las                                |  Bin
 test/data/1.2-with-color.las                       |  Bin
 test/data/1.2-with-color.laz                       |  Bin
 test/data/1.2_0.las                                |  Bin
 test/data/1.2_1.las                                |  Bin
 test/data/1.2_2.las                                |  Bin
 test/data/1.2_3.las                                |  Bin
 test/data/TO_core_last_clip.las                    |  Bin
 test/data/autzen.jpg                               |  Bin
 test/data/autzen.jpg.aux.xml                       |    0
 test/data/autzen.las                               |  Bin
 test/data/autzen.wld                               |    0
 test/data/bad_points_1.1.las                       |  Bin
 test/data/certainty3d-color-utm-feet-navd88.las    |  Bin
 test/data/lots_of_vlr.las                          |  Bin
 test/data/make_bad_points.py                       |    0
 test/data/srs.las                                  |  Bin
 test/data/srs_utm17.las                            |  Bin
 test/data/srs_vertcs.las                           |  Bin
 test/sample/CMakeLists.txt                         |    0
 test/sample/files.cpp                              |    0
 test/sample/files.vcproj                           |    0
 test/sample/liblas.vsprops                         |    0
 test/sample/liblas_sample.sln                      |    0
 test/sample/read.cpp                               |    0
 test/sample/read.vcproj                            |    0
 test/sample/update.cpp                             |    1 -
 test/sample/update.vcproj                          |    0
 test/sample/utility.hpp                            |    0
 test/sample/write.cpp                              |    1 -
 test/sample/write.vcproj                           |    0
 .../CMakeFiles/CMakeDirectoryInformation.cmake     |   24 -
 .../CMakeFiles/liblas_test.dir/DependInfo.cmake    |   33 -
 test/unit/CMakeFiles/liblas_test.dir/build.make    |  469 --------
 .../CMakeFiles/liblas_test.dir/cmake_clean.cmake   |   24 -
 test/unit/CMakeFiles/liblas_test.dir/depend.make   |    2 -
 test/unit/CMakeFiles/liblas_test.dir/flags.make    |    8 -
 test/unit/CMakeFiles/liblas_test.dir/link.txt      |    1 -
 test/unit/CMakeFiles/liblas_test.dir/progress.make |   16 -
 test/unit/CMakeFiles/progress.marks                |    1 -
 test/unit/CMakeLists.txt                           |   89 +-
 test/unit/CTestTestfile.cmake                      |    7 -
 test/unit/Makefile                                 |  620 -----------
 test/unit/bounds_test.cpp                          |    1 -
 test/unit/classification_test.cpp                  |    0
 test/unit/cmake_install.cmake                      |   29 -
 test/unit/common.cpp                               |    7 +-
 test/unit/common.hpp                               |    0
 test/unit/error_test.cpp                           |    0
 test/unit/guid_test.cpp                            |  181 ---
 test/unit/header_test.cpp                          |   12 +-
 test/unit/liblas_test.hpp                          |    0
 test/unit/liblas_test_suite.cpp                    |    0
 test/unit/point_test.cpp                           |   22 +-
 test/unit/reader_iterator_test.cpp                 |    5 +-
 test/unit/reader_test.cpp                          |    3 +-
 test/unit/spatialreference_test.cpp                |    4 +-
 test/unit/transform_test.cpp                       |    1 -
 test/unit/tut/tut.hpp                              |    0
 test/unit/tut/tut_assert.hpp                       |    9 +
 test/unit/tut/tut_config.hpp                       |    0
 test/unit/tut/tut_console_reporter.hpp             |    0
 test/unit/tut/tut_exception.hpp                    |    0
 test/unit/tut/tut_posix.hpp                        |    0
 test/unit/tut/tut_reporter.hpp                     |    0
 test/unit/tut/tut_restartable.hpp                  |    0
 test/unit/tut/tut_result.hpp                       |    0
 test/unit/tut/tut_runner.hpp                       |    0
 test/unit/variablerecord_test.cpp                  |    0
 test/unit/writer_test.cpp                          |   10 +-
 test/unit/zipreader_test.cpp                       |    0
 test/unit/zipwriter_test.cpp                       |    6 +-
 550 files changed, 3299 insertions(+), 14933 deletions(-)

diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index e55e0ab..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,116 +0,0 @@
-*~
-\#*\#
-.\#*
-*.bak
-*.dll
-*.dll.manifest
-*.embed.manifest
-*.exe
-*.exe.manifest
-*.exp
-*.idb
-*.ilk
-*.intermediate.manifest
-*.kdev4
-*.la
-*.lib
-*.lo
-*.ncb
-*.o
-*.obj
-*.orig
-*.pdb
-*.pyc
-*.res
-*.suo
-*.swp
-*.user
-*.vcproj
-*.sln
-*.sln.docstates
-.deps
-./bin
-.DS_Store
-.libs
-aclocal.m4
-apps/las2las
-apps/las2oci
-apps/las2ogr
-apps/las2txt
-apps/lasindex
-apps/lasinfo
-apps/lasmerge
-apps/liblas-config
-apps/ts2las
-apps/txt2las
-autom4te.cache
-build.hobu
-cmake_install.cmake
-CMakeCache.txt
-CMakeFiles
-CTestTestfile.cmake
-CPackConfig.cmake
-CPackSourceConfig.cmake
-buildout/setenv
-install_manifest.txt
-_CPack_Packages/
-src/CMakeFiles
-config.guess
-config.log
-config.status
-config.sub
-configure
-Debug
-depcomp
-install-sh
-liblas_test
-libtool
-ltmain.sh
-Makefile
-Makefile.in
-missing
-python/build/*
-python/dist/*
-python/libLAS.egg-info/*
-Release
-src/liblas.a
-test/data/*.dat
-test/data/*.idx
-.dirstamp
-*.dir
-CMakeScripts
-libLAS.xcodeproj
-build/libLAS.build
-buildout/source
-buildout/share
-buildout/lib
-buildout/include
-buildout/bin
-buildout/eggs
-buildout/parts
-buildout/develop-eggs
-buildout/doc
-buildout/man
-doc/build
-doc/api/xml
-doc/api/html
-*.mshark
-Testing/
-README.txt
-osgeo4w/
-test/data/Autzen_Stadium/
-DartConfiguration.tcl
-
-# stuff generated by VS2010
-*.ipch
-*.vcxproj
-*.vcxproj.filters
-libLAS.opensdf
-libLAS.sdf
-*.tlog
-csharp-new/liblas_swig.opensdf
-csharp-new/liblas_swig.sdf
-
-# swig-generated files
-csharp-new/liblas_swig_cs/*.cs
-csharp-new/liblas_swig_cpp/liblas_wrap.cpp
diff --git a/.hgtags b/.hgtags
new file mode 100755
index 0000000..8ecfb27
--- /dev/null
+++ b/.hgtags
@@ -0,0 +1,17 @@
+13180d8f1af2b1a7ac87bead61dfa18fcfc27006 0.9.5
+313a6b616581117c4442879e5fbc802e86abdfbd 1.0.0
+364bfba7eb92fc69d61043c024a420e612acd179 0.9.2
+4cf469351500007cb2debaf771d0cf05bd8a7b95 0.9.4
+5000ca6cf0209bcc6b958edc74a423c31ebec46d 1.2.0
+5a2acbd6026e7676d0d2f2c781759c439778cc3d original
+638bbf7b5efe56f3bf3543d38251a2dd1ff9ebbc 1.2.0b1
+71d37955d38952e3ee7e2547e4a66b8e70ff4c61 0.9.7
+8000ff90a5ddafcb064acd41a31a98e2f5b90cf5 progress-20071229
+b50f6cfaec1b5125efa4efe5bd39348193f1f190 0.9.1
+cc66e8ab77df6bf45c6f214637981d4e0cc51625 1.0.0b2
+ce270daca68bb887104c1d75f0c0f1557172bfa9 0.9.0
+d779dd09e547cd56c48ae5d3da3959193fc07cb0 1.0.0b1
+e4baaf6287a20b01e0fbe3632a37c3c559ca9ca2 0.9.6
+f93c63e4384fd4ad3fae69b72db3643455539919 1.0.1
+d1bf7693076ccd8245bd98acea9a1a10553be066 1.6.0
+58c409e18a5323f60a0f1c6afb5738ae4256a364 1.7.0b2
diff --git a/AUTHORS b/AUTHORS
old mode 100644
new mode 100755
diff --git a/CMakeFiles/CMakeCCompiler.cmake b/CMakeFiles/CMakeCCompiler.cmake
deleted file mode 100644
index ed7026e..0000000
--- a/CMakeFiles/CMakeCCompiler.cmake
+++ /dev/null
@@ -1,49 +0,0 @@
-SET(CMAKE_C_COMPILER "/usr/bin/gcc")
-SET(CMAKE_C_COMPILER_ARG1 "")
-SET(CMAKE_C_COMPILER_ID "GNU")
-SET(CMAKE_C_PLATFORM_ID "Darwin")
-
-SET(CMAKE_AR "/usr/bin/ar")
-SET(CMAKE_RANLIB "/usr/bin/ranlib")
-SET(CMAKE_LINKER "/usr/bin/ld")
-SET(CMAKE_COMPILER_IS_GNUCC 1)
-SET(CMAKE_C_COMPILER_LOADED 1)
-SET(CMAKE_COMPILER_IS_MINGW )
-SET(CMAKE_COMPILER_IS_CYGWIN )
-IF(CMAKE_COMPILER_IS_CYGWIN)
-  SET(CYGWIN 1)
-  SET(UNIX 1)
-ENDIF(CMAKE_COMPILER_IS_CYGWIN)
-
-SET(CMAKE_C_COMPILER_ENV_VAR "CC")
-
-IF(CMAKE_COMPILER_IS_MINGW)
-  SET(MINGW 1)
-ENDIF(CMAKE_COMPILER_IS_MINGW)
-SET(CMAKE_C_COMPILER_ID_RUN 1)
-SET(CMAKE_C_SOURCE_FILE_EXTENSIONS c)
-SET(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
-SET(CMAKE_C_LINKER_PREFERENCE 10)
-
-# Save compiler ABI information.
-SET(CMAKE_C_SIZEOF_DATA_PTR "8")
-SET(CMAKE_C_COMPILER_ABI "")
-SET(CMAKE_C_LIBRARY_ARCHITECTURE "")
-
-IF(CMAKE_C_SIZEOF_DATA_PTR)
-  SET(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
-ENDIF(CMAKE_C_SIZEOF_DATA_PTR)
-
-IF(CMAKE_C_COMPILER_ABI)
-  SET(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
-ENDIF(CMAKE_C_COMPILER_ABI)
-
-IF(CMAKE_C_LIBRARY_ARCHITECTURE)
-  SET(CMAKE_LIBRARY_ARCHITECTURE "")
-ENDIF()
-
-SET(CMAKE_C_HAS_ISYSROOT "1")
-SET(CMAKE_C_OSX_DEPLOYMENT_TARGET_FLAG "-mmacosx-version-min=")
-
-SET(CMAKE_C_IMPLICIT_LINK_LIBRARIES "")
-SET(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64;/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64;/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64;/usr/lib/i686-apple-darwin10/4.2.1;/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1;/usr/llvm-gcc-4.2/lib/gcc;/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1;/usr/lib/gcc/i686-apple-darwin10/4.2.1;/usr/llvm-gcc-4.2/lib;/Developer/usr/llvm-gcc-4.2/lib")
diff --git a/CMakeFiles/CMakeCXXCompiler.cmake b/CMakeFiles/CMakeCXXCompiler.cmake
deleted file mode 100644
index 875217a..0000000
--- a/CMakeFiles/CMakeCXXCompiler.cmake
+++ /dev/null
@@ -1,50 +0,0 @@
-SET(CMAKE_CXX_COMPILER "/usr/bin/c++")
-SET(CMAKE_CXX_COMPILER_ARG1 "")
-SET(CMAKE_CXX_COMPILER_ID "GNU")
-SET(CMAKE_CXX_PLATFORM_ID "Darwin")
-
-SET(CMAKE_AR "/usr/bin/ar")
-SET(CMAKE_RANLIB "/usr/bin/ranlib")
-SET(CMAKE_LINKER "/usr/bin/ld")
-SET(CMAKE_COMPILER_IS_GNUCXX 1)
-SET(CMAKE_CXX_COMPILER_LOADED 1)
-SET(CMAKE_COMPILER_IS_MINGW )
-SET(CMAKE_COMPILER_IS_CYGWIN )
-IF(CMAKE_COMPILER_IS_CYGWIN)
-  SET(CYGWIN 1)
-  SET(UNIX 1)
-ENDIF(CMAKE_COMPILER_IS_CYGWIN)
-
-SET(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
-
-IF(CMAKE_COMPILER_IS_MINGW)
-  SET(MINGW 1)
-ENDIF(CMAKE_COMPILER_IS_MINGW)
-SET(CMAKE_CXX_COMPILER_ID_RUN 1)
-SET(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
-SET(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;CPP)
-SET(CMAKE_CXX_LINKER_PREFERENCE 30)
-SET(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
-
-# Save compiler ABI information.
-SET(CMAKE_CXX_SIZEOF_DATA_PTR "8")
-SET(CMAKE_CXX_COMPILER_ABI "")
-SET(CMAKE_CXX_LIBRARY_ARCHITECTURE "")
-
-IF(CMAKE_CXX_SIZEOF_DATA_PTR)
-  SET(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
-ENDIF(CMAKE_CXX_SIZEOF_DATA_PTR)
-
-IF(CMAKE_CXX_COMPILER_ABI)
-  SET(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
-ENDIF(CMAKE_CXX_COMPILER_ABI)
-
-IF(CMAKE_CXX_LIBRARY_ARCHITECTURE)
-  SET(CMAKE_LIBRARY_ARCHITECTURE "")
-ENDIF()
-
-SET(CMAKE_CXX_HAS_ISYSROOT "1")
-SET(CMAKE_CXX_OSX_DEPLOYMENT_TARGET_FLAG "-mmacosx-version-min=")
-
-SET(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++")
-SET(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64;/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64;/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64;/usr/lib/i686-apple-darwin10/4.2.1;/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1;/usr/llvm-gcc-4.2/lib/gcc;/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1;/usr/lib/gcc/i686-apple-darwin10/4.2.1;/usr/llvm-gcc-4.2/lib;/Developer/usr/llvm-gcc-4.2/lib")
diff --git a/CMakeFiles/CMakeDetermineCompilerABI_C.bin b/CMakeFiles/CMakeDetermineCompilerABI_C.bin
deleted file mode 100755
index 0387a74..0000000
Binary files a/CMakeFiles/CMakeDetermineCompilerABI_C.bin and /dev/null differ
diff --git a/CMakeFiles/CMakeDetermineCompilerABI_CXX.bin b/CMakeFiles/CMakeDetermineCompilerABI_CXX.bin
deleted file mode 100755
index a9dfb08..0000000
Binary files a/CMakeFiles/CMakeDetermineCompilerABI_CXX.bin and /dev/null differ
diff --git a/CMakeFiles/CMakeDirectoryInformation.cmake b/CMakeFiles/CMakeDirectoryInformation.cmake
deleted file mode 100644
index fecdbe6..0000000
--- a/CMakeFiles/CMakeDirectoryInformation.cmake
+++ /dev/null
@@ -1,22 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# Relative path conversion top directories.
-SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/hobu/foo/clean")
-SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/hobu/foo/clean")
-
-# Force unix paths in dependencies.
-SET(CMAKE_FORCE_UNIX_PATHS 1)
-
-# The C and CXX include file search paths:
-SET(CMAKE_C_INCLUDE_PATH
-  "/usr/local/include"
-  )
-SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
-SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
-
-# The C and CXX include file regular expressions for this directory.
-SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
-SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
-SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
-SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/CMakeFiles/CMakeOutput.log b/CMakeFiles/CMakeOutput.log
deleted file mode 100644
index 59ebe5d..0000000
--- a/CMakeFiles/CMakeOutput.log
+++ /dev/null
@@ -1,218 +0,0 @@
-The system is: Darwin - 10.8.0 - i386
-Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
-Compiler: /usr/bin/gcc 
-Build flags: 
-Id flags: 
-
-The output was:
-0
-
-
-Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out"
-
-The C compiler identification is GNU, found in "/Users/hobu/foo/clean/CMakeFiles/CompilerIdC/a.out"
-
-Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
-Compiler: /usr/bin/c++ 
-Build flags: 
-Id flags: 
-
-The output was:
-0
-
-
-Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out"
-
-The CXX compiler identification is GNU, found in "/Users/hobu/foo/clean/CMakeFiles/CompilerIdCXX/a.out"
-
-Determining if the C compiler works passed with the following output:
-Change Dir: /Users/hobu/foo/clean/CMakeFiles/CMakeTmp
-
-Run Build Command:/usr/bin/make "cmTryCompileExec/fast"
-/usr/bin/make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
-"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles/CMakeTmp/CMakeFiles 1
-Building C object CMakeFiles/cmTryCompileExec.dir/testCCompiler.c.o
-/usr/bin/gcc    -o CMakeFiles/cmTryCompileExec.dir/testCCompiler.c.o   -c /Users/hobu/foo/clean/CMakeFiles/CMakeTmp/testCCompiler.c
-Linking C executable cmTryCompileExec
-"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_link_script CMakeFiles/cmTryCompileExec.dir/link.txt --verbose=1
-/usr/bin/gcc      -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/cmTryCompileExec.dir/testCCompiler.c.o  -o cmTryCompileExec  
-
-
-Detecting C compiler ABI info compiled with the following output:
-Change Dir: /Users/hobu/foo/clean/CMakeFiles/CMakeTmp
-
-Run Build Command:/usr/bin/make "cmTryCompileExec/fast"
-/usr/bin/make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
-"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles/CMakeTmp/CMakeFiles 1
-Building C object CMakeFiles/cmTryCompileExec.dir/CMakeCCompilerABI.c.o
-/usr/bin/gcc    -o CMakeFiles/cmTryCompileExec.dir/CMakeCCompilerABI.c.o   -c "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeCCompilerABI.c"
-Linking C executable cmTryCompileExec
-"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_link_script CMakeFiles/cmTryCompileExec.dir/link.txt --verbose=1
-/usr/bin/gcc      -Wl,-search_paths_first -Wl,-headerpad_max_install_names -v CMakeFiles/cmTryCompileExec.dir/CMakeCCompilerABI.c.o  -o cmTryCompileExec   
-Using built-in specs.
-Target: i686-apple-darwin10
-Configured with: /private/var/tmp/llvmgcc42/llvmgcc42-2336.1~3/src/configure --disable-checking --enable-werror --prefix=/Developer/usr/llvm-gcc-4.2 --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-prefix=llvm- --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin10 --enable-llvm=/private/var/tmp/llvmgcc42/llvmgcc42-2336.1~3/dst-llvmCore/Developer/usr/local --program-prefix=i686-apple-darwin10- --host=x86_64-apple-darwin10 - [...]
-Thread model: posix
-gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)
- /usr/llvm-gcc-4.2/bin/../libexec/gcc/i686-apple-darwin10/4.2.1/collect2 -dynamic -arch x86_64 -macosx_version_min 10.6.8 -weak_reference_mismatches non-weak -o cmTryCompileExec -lcrt1.10.6.o -L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/x86_64 -L/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64 -L/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64 -L/usr/lib/i686-apple-darwin10/4.2.1 -L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1 -L/usr/llvm-gcc [...]
-
-
-Parsed C implicit link information from above output:
-  link line regex: [^( *|.*[/\])(ld|ld|collect2)[^/\]*( |$)]
-  ignore line: [Change Dir: /Users/hobu/foo/clean/CMakeFiles/CMakeTmp]
-  ignore line: []
-  ignore line: [Run Build Command:/usr/bin/make "cmTryCompileExec/fast"]
-  ignore line: [/usr/bin/make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build]
-  ignore line: ["/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles/CMakeTmp/CMakeFiles 1]
-  ignore line: [Building C object CMakeFiles/cmTryCompileExec.dir/CMakeCCompilerABI.c.o]
-  ignore line: [/usr/bin/gcc    -o CMakeFiles/cmTryCompileExec.dir/CMakeCCompilerABI.c.o   -c "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeCCompilerABI.c"]
-  ignore line: [Linking C executable cmTryCompileExec]
-  ignore line: ["/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_link_script CMakeFiles/cmTryCompileExec.dir/link.txt --verbose=1]
-  ignore line: [/usr/bin/gcc      -Wl,-search_paths_first -Wl,-headerpad_max_install_names -v CMakeFiles/cmTryCompileExec.dir/CMakeCCompilerABI.c.o  -o cmTryCompileExec   ]
-  ignore line: [Using built-in specs.]
-  ignore line: [Target: i686-apple-darwin10]
-  ignore line: [Configured with: /private/var/tmp/llvmgcc42/llvmgcc42-2336.1~3/src/configure --disable-checking --enable-werror --prefix=/Developer/usr/llvm-gcc-4.2 --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-prefix=llvm- --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin10 --enable-llvm=/private/var/tmp/llvmgcc42/llvmgcc42-2336.1~3/dst-llvmCore/Developer/usr/local --program-prefix=i686-apple-darwin10- --host=x86_64- [...]
-  ignore line: [Thread model: posix]
-  ignore line: [gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)]
-  link line: [ /usr/llvm-gcc-4.2/bin/../libexec/gcc/i686-apple-darwin10/4.2.1/collect2 -dynamic -arch x86_64 -macosx_version_min 10.6.8 -weak_reference_mismatches non-weak -o cmTryCompileExec -lcrt1.10.6.o -L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/x86_64 -L/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64 -L/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64 -L/usr/lib/i686-apple-darwin10/4.2.1 -L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1 - [...]
-    arg [/usr/llvm-gcc-4.2/bin/../libexec/gcc/i686-apple-darwin10/4.2.1/collect2] ==> ignore
-    arg [-dynamic] ==> ignore
-    arg [-arch] ==> ignore
-    arg [x86_64] ==> ignore
-    arg [-macosx_version_min] ==> ignore
-    arg [10.6.8] ==> ignore
-    arg [-weak_reference_mismatches] ==> ignore
-    arg [non-weak] ==> ignore
-    arg [-o] ==> ignore
-    arg [cmTryCompileExec] ==> ignore
-    arg [-lcrt1.10.6.o] ==> lib [crt1.10.6.o]
-    arg [-L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/x86_64] ==> dir [/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/x86_64]
-    arg [-L/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64] ==> dir [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64]
-    arg [-L/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64] ==> dir [/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64]
-    arg [-L/usr/lib/i686-apple-darwin10/4.2.1] ==> dir [/usr/lib/i686-apple-darwin10/4.2.1]
-    arg [-L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1] ==> dir [/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1]
-    arg [-L/usr/llvm-gcc-4.2/bin/../lib/gcc] ==> dir [/usr/llvm-gcc-4.2/bin/../lib/gcc]
-    arg [-L/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1] ==> dir [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1]
-    arg [-L/usr/lib/gcc/i686-apple-darwin10/4.2.1] ==> dir [/usr/lib/gcc/i686-apple-darwin10/4.2.1]
-    arg [-L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/../../..] ==> dir [/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/../../..]
-    arg [-L/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/../../..] ==> dir [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/../../..]
-    arg [-search_paths_first] ==> ignore
-    arg [-headerpad_max_install_names] ==> ignore
-    arg [CMakeFiles/cmTryCompileExec.dir/CMakeCCompilerABI.c.o] ==> ignore
-    arg [-lSystem] ==> lib [System]
-    arg [-lgcc] ==> lib [gcc]
-    arg [-lSystem] ==> lib [System]
-  remove lib [crt1.10.6.o]
-  remove lib [System]
-  remove lib [gcc]
-  remove lib [System]
-  collapse dir [/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/x86_64] ==> [/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64]
-  collapse dir [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64] ==> [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64]
-  collapse dir [/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64] ==> [/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64]
-  collapse dir [/usr/lib/i686-apple-darwin10/4.2.1] ==> [/usr/lib/i686-apple-darwin10/4.2.1]
-  collapse dir [/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1] ==> [/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1]
-  collapse dir [/usr/llvm-gcc-4.2/bin/../lib/gcc] ==> [/usr/llvm-gcc-4.2/lib/gcc]
-  collapse dir [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1] ==> [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1]
-  collapse dir [/usr/lib/gcc/i686-apple-darwin10/4.2.1] ==> [/usr/lib/gcc/i686-apple-darwin10/4.2.1]
-  collapse dir [/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/../../..] ==> [/usr/llvm-gcc-4.2/lib]
-  collapse dir [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/../../..] ==> [/Developer/usr/llvm-gcc-4.2/lib]
-  implicit libs: []
-  implicit dirs: [/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64;/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64;/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64;/usr/lib/i686-apple-darwin10/4.2.1;/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1;/usr/llvm-gcc-4.2/lib/gcc;/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1;/usr/lib/gcc/i686-apple-darwin10/4.2.1;/usr/llvm-gcc-4.2/lib;/Developer/usr/llvm-gcc-4.2/lib]
-
-
-Determining if the CXX compiler works passed with the following output:
-Change Dir: /Users/hobu/foo/clean/CMakeFiles/CMakeTmp
-
-Run Build Command:/usr/bin/make "cmTryCompileExec/fast"
-/usr/bin/make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
-"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles/CMakeTmp/CMakeFiles 1
-Building CXX object CMakeFiles/cmTryCompileExec.dir/testCXXCompiler.cxx.o
-/usr/bin/c++     -o CMakeFiles/cmTryCompileExec.dir/testCXXCompiler.cxx.o -c /Users/hobu/foo/clean/CMakeFiles/CMakeTmp/testCXXCompiler.cxx
-Linking CXX executable cmTryCompileExec
-"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_link_script CMakeFiles/cmTryCompileExec.dir/link.txt --verbose=1
-/usr/bin/c++       -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/cmTryCompileExec.dir/testCXXCompiler.cxx.o  -o cmTryCompileExec  
-
-
-Detecting CXX compiler ABI info compiled with the following output:
-Change Dir: /Users/hobu/foo/clean/CMakeFiles/CMakeTmp
-
-Run Build Command:/usr/bin/make "cmTryCompileExec/fast"
-/usr/bin/make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
-"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles/CMakeTmp/CMakeFiles 1
-Building CXX object CMakeFiles/cmTryCompileExec.dir/CMakeCXXCompilerABI.cpp.o
-/usr/bin/c++     -o CMakeFiles/cmTryCompileExec.dir/CMakeCXXCompilerABI.cpp.o -c "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeCXXCompilerABI.cpp"
-Linking CXX executable cmTryCompileExec
-"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_link_script CMakeFiles/cmTryCompileExec.dir/link.txt --verbose=1
-/usr/bin/c++       -Wl,-search_paths_first -Wl,-headerpad_max_install_names -v CMakeFiles/cmTryCompileExec.dir/CMakeCXXCompilerABI.cpp.o  -o cmTryCompileExec   
-Using built-in specs.
-Target: i686-apple-darwin10
-Configured with: /private/var/tmp/llvmgcc42/llvmgcc42-2336.1~3/src/configure --disable-checking --enable-werror --prefix=/Developer/usr/llvm-gcc-4.2 --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-prefix=llvm- --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin10 --enable-llvm=/private/var/tmp/llvmgcc42/llvmgcc42-2336.1~3/dst-llvmCore/Developer/usr/local --program-prefix=i686-apple-darwin10- --host=x86_64-apple-darwin10 - [...]
-Thread model: posix
-gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)
- /usr/llvm-gcc-4.2/bin/../libexec/gcc/i686-apple-darwin10/4.2.1/collect2 -dynamic -arch x86_64 -macosx_version_min 10.6.8 -weak_reference_mismatches non-weak -o cmTryCompileExec -lcrt1.10.6.o -L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/x86_64 -L/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64 -L/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64 -L/usr/lib/i686-apple-darwin10/4.2.1 -L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1 -L/usr/llvm-gcc [...]
-
-
-Parsed CXX implicit link information from above output:
-  link line regex: [^( *|.*[/\])(ld|ld|collect2)[^/\]*( |$)]
-  ignore line: [Change Dir: /Users/hobu/foo/clean/CMakeFiles/CMakeTmp]
-  ignore line: []
-  ignore line: [Run Build Command:/usr/bin/make "cmTryCompileExec/fast"]
-  ignore line: [/usr/bin/make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build]
-  ignore line: ["/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles/CMakeTmp/CMakeFiles 1]
-  ignore line: [Building CXX object CMakeFiles/cmTryCompileExec.dir/CMakeCXXCompilerABI.cpp.o]
-  ignore line: [/usr/bin/c++     -o CMakeFiles/cmTryCompileExec.dir/CMakeCXXCompilerABI.cpp.o -c "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeCXXCompilerABI.cpp"]
-  ignore line: [Linking CXX executable cmTryCompileExec]
-  ignore line: ["/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_link_script CMakeFiles/cmTryCompileExec.dir/link.txt --verbose=1]
-  ignore line: [/usr/bin/c++       -Wl,-search_paths_first -Wl,-headerpad_max_install_names -v CMakeFiles/cmTryCompileExec.dir/CMakeCXXCompilerABI.cpp.o  -o cmTryCompileExec   ]
-  ignore line: [Using built-in specs.]
-  ignore line: [Target: i686-apple-darwin10]
-  ignore line: [Configured with: /private/var/tmp/llvmgcc42/llvmgcc42-2336.1~3/src/configure --disable-checking --enable-werror --prefix=/Developer/usr/llvm-gcc-4.2 --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-prefix=llvm- --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin10 --enable-llvm=/private/var/tmp/llvmgcc42/llvmgcc42-2336.1~3/dst-llvmCore/Developer/usr/local --program-prefix=i686-apple-darwin10- --host=x86_64- [...]
-  ignore line: [Thread model: posix]
-  ignore line: [gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)]
-  link line: [ /usr/llvm-gcc-4.2/bin/../libexec/gcc/i686-apple-darwin10/4.2.1/collect2 -dynamic -arch x86_64 -macosx_version_min 10.6.8 -weak_reference_mismatches non-weak -o cmTryCompileExec -lcrt1.10.6.o -L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/x86_64 -L/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64 -L/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64 -L/usr/lib/i686-apple-darwin10/4.2.1 -L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1 - [...]
-    arg [/usr/llvm-gcc-4.2/bin/../libexec/gcc/i686-apple-darwin10/4.2.1/collect2] ==> ignore
-    arg [-dynamic] ==> ignore
-    arg [-arch] ==> ignore
-    arg [x86_64] ==> ignore
-    arg [-macosx_version_min] ==> ignore
-    arg [10.6.8] ==> ignore
-    arg [-weak_reference_mismatches] ==> ignore
-    arg [non-weak] ==> ignore
-    arg [-o] ==> ignore
-    arg [cmTryCompileExec] ==> ignore
-    arg [-lcrt1.10.6.o] ==> lib [crt1.10.6.o]
-    arg [-L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/x86_64] ==> dir [/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/x86_64]
-    arg [-L/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64] ==> dir [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64]
-    arg [-L/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64] ==> dir [/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64]
-    arg [-L/usr/lib/i686-apple-darwin10/4.2.1] ==> dir [/usr/lib/i686-apple-darwin10/4.2.1]
-    arg [-L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1] ==> dir [/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1]
-    arg [-L/usr/llvm-gcc-4.2/bin/../lib/gcc] ==> dir [/usr/llvm-gcc-4.2/bin/../lib/gcc]
-    arg [-L/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1] ==> dir [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1]
-    arg [-L/usr/lib/gcc/i686-apple-darwin10/4.2.1] ==> dir [/usr/lib/gcc/i686-apple-darwin10/4.2.1]
-    arg [-L/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/../../..] ==> dir [/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/../../..]
-    arg [-L/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/../../..] ==> dir [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/../../..]
-    arg [-search_paths_first] ==> ignore
-    arg [-headerpad_max_install_names] ==> ignore
-    arg [CMakeFiles/cmTryCompileExec.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
-    arg [-lstdc++] ==> lib [stdc++]
-    arg [-lSystem] ==> lib [System]
-    arg [-lgcc] ==> lib [gcc]
-    arg [-lSystem] ==> lib [System]
-  remove lib [crt1.10.6.o]
-  remove lib [System]
-  remove lib [gcc]
-  remove lib [System]
-  collapse dir [/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/x86_64] ==> [/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64]
-  collapse dir [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64] ==> [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64]
-  collapse dir [/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64] ==> [/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64]
-  collapse dir [/usr/lib/i686-apple-darwin10/4.2.1] ==> [/usr/lib/i686-apple-darwin10/4.2.1]
-  collapse dir [/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1] ==> [/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1]
-  collapse dir [/usr/llvm-gcc-4.2/bin/../lib/gcc] ==> [/usr/llvm-gcc-4.2/lib/gcc]
-  collapse dir [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1] ==> [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1]
-  collapse dir [/usr/lib/gcc/i686-apple-darwin10/4.2.1] ==> [/usr/lib/gcc/i686-apple-darwin10/4.2.1]
-  collapse dir [/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/../../..] ==> [/usr/llvm-gcc-4.2/lib]
-  collapse dir [/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/../../..] ==> [/Developer/usr/llvm-gcc-4.2/lib]
-  implicit libs: [stdc++]
-  implicit dirs: [/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64;/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1/x86_64;/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64;/usr/lib/i686-apple-darwin10/4.2.1;/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1;/usr/llvm-gcc-4.2/lib/gcc;/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2.1;/usr/lib/gcc/i686-apple-darwin10/4.2.1;/usr/llvm-gcc-4.2/lib;/Developer/usr/llvm-gcc-4.2/lib]
-
-
diff --git a/CMakeFiles/CMakeRuleHashes.txt b/CMakeFiles/CMakeRuleHashes.txt
deleted file mode 100644
index 93cc3ea..0000000
--- a/CMakeFiles/CMakeRuleHashes.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-# Hashes of file build rules.
-3f70553057525b6671f22aeeb2df3933 CMakeFiles/dist
diff --git a/CMakeFiles/CMakeSystem.cmake b/CMakeFiles/CMakeSystem.cmake
deleted file mode 100644
index 64cedbb..0000000
--- a/CMakeFiles/CMakeSystem.cmake
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-SET(CMAKE_SYSTEM "Darwin-10.8.0")
-SET(CMAKE_SYSTEM_NAME "Darwin")
-SET(CMAKE_SYSTEM_VERSION "10.8.0")
-SET(CMAKE_SYSTEM_PROCESSOR "i386")
-
-SET(CMAKE_HOST_SYSTEM "Darwin-10.8.0")
-SET(CMAKE_HOST_SYSTEM_NAME "Darwin")
-SET(CMAKE_HOST_SYSTEM_VERSION "10.8.0")
-SET(CMAKE_HOST_SYSTEM_PROCESSOR "i386")
-
-SET(CMAKE_CROSSCOMPILING "FALSE")
-
-SET(CMAKE_SYSTEM_LOADED 1)
diff --git a/CMakeFiles/CompilerIdC/CMakeCCompilerId.c b/CMakeFiles/CompilerIdC/CMakeCCompilerId.c
deleted file mode 100644
index 2bb8392..0000000
--- a/CMakeFiles/CompilerIdC/CMakeCCompilerId.c
+++ /dev/null
@@ -1,229 +0,0 @@
-#ifdef __cplusplus
-# error "A C++ compiler has been selected for C."
-#endif
-
-#if defined(__18CXX)
-# define ID_VOID_MAIN
-#endif
-
-#if defined(__INTEL_COMPILER) || defined(__ICC)
-# define COMPILER_ID "Intel"
-
-#elif defined(__clang__)
-# define COMPILER_ID "Clang"
-
-#elif defined(__BORLANDC__)
-# define COMPILER_ID "Borland"
-
-#elif defined(__WATCOMC__)
-# define COMPILER_ID "Watcom"
-
-#elif defined(__SUNPRO_C)
-# define COMPILER_ID "SunPro"
-
-#elif defined(__HP_cc)
-# define COMPILER_ID "HP"
-
-#elif defined(__DECC)
-# define COMPILER_ID "Compaq"
-
-#elif defined(__IBMC__)
-# if defined(__COMPILER_VER__)
-#  define COMPILER_ID "zOS"
-# elif __IBMC__ >= 800
-#  define COMPILER_ID "XL"
-# else
-#  define COMPILER_ID "VisualAge"
-# endif
-
-#elif defined(__PGI)
-# define COMPILER_ID "PGI"
-
-#elif defined(__PATHSCALE__)
-# define COMPILER_ID "PathScale"
-
-#elif defined(_CRAYC)
-# define COMPILER_ID "Cray"
-
-#elif defined(__TI_COMPILER_VERSION__)
-# define COMPILER_ID "TI_DSP"
-
-#elif defined(__SCO_VERSION__)
-# define COMPILER_ID "SCO"
-
-#elif defined(__GNUC__)
-# define COMPILER_ID "GNU"
-
-#elif defined(_MSC_VER)
-# define COMPILER_ID "MSVC"
-
-#elif defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
-/* Analog Devices C++ compiler for Blackfin, TigerSHARC and
-   SHARC (21000) DSPs */
-# define COMPILER_ID "ADSP"
-
-/* IAR Systems compiler for embedded systems.
-   http://www.iar.com
-   Not supported yet by CMake
-#elif defined(__IAR_SYSTEMS_ICC__)
-# define COMPILER_ID "IAR" */
-
-/* sdcc, the small devices C compiler for embedded systems,
-   http://sdcc.sourceforge.net  */
-#elif defined(SDCC)
-# define COMPILER_ID "SDCC"
-
-#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION)
-# define COMPILER_ID "MIPSpro"
-
-/* This compiler is either not known or is too old to define an
-   identification macro.  Try to identify the platform and guess that
-   it is the native compiler.  */
-#elif defined(__sgi)
-# define COMPILER_ID "MIPSpro"
-
-#elif defined(__hpux) || defined(__hpua)
-# define COMPILER_ID "HP"
-
-#else /* unknown compiler */
-# define COMPILER_ID ""
-
-#endif
-
-/* Construct the string literal in pieces to prevent the source from
-   getting matched.  Store it in a pointer rather than an array
-   because some compilers will just produce instructions to fill the
-   array rather than assigning a pointer to a static array.  */
-char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
-
-/* Identify known platforms by name.  */
-#if defined(__linux) || defined(__linux__) || defined(linux)
-# define PLATFORM_ID "Linux"
-
-#elif defined(__CYGWIN__)
-# define PLATFORM_ID "Cygwin"
-
-#elif defined(__MINGW32__)
-# define PLATFORM_ID "MinGW"
-
-#elif defined(__APPLE__)
-# define PLATFORM_ID "Darwin"
-
-#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
-# define PLATFORM_ID "Windows"
-
-#elif defined(__FreeBSD__) || defined(__FreeBSD)
-# define PLATFORM_ID "FreeBSD"
-
-#elif defined(__NetBSD__) || defined(__NetBSD)
-# define PLATFORM_ID "NetBSD"
-
-#elif defined(__OpenBSD__) || defined(__OPENBSD)
-# define PLATFORM_ID "OpenBSD"
-
-#elif defined(__sun) || defined(sun)
-# define PLATFORM_ID "SunOS"
-
-#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
-# define PLATFORM_ID "AIX"
-
-#elif defined(__sgi) || defined(__sgi__) || defined(_SGI)
-# define PLATFORM_ID "IRIX"
-
-#elif defined(__hpux) || defined(__hpux__)
-# define PLATFORM_ID "HP-UX"
-
-#elif defined(__HAIKU) || defined(__HAIKU__) || defined(_HAIKU)
-# define PLATFORM_ID "Haiku"
-/* Haiku also defines __BEOS__ so we must 
-   put it prior to the check for __BEOS__
-*/
-
-#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
-# define PLATFORM_ID "BeOS"
-
-#elif defined(__QNX__) || defined(__QNXNTO__)
-# define PLATFORM_ID "QNX"
-
-#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
-# define PLATFORM_ID "Tru64"
-
-#elif defined(__riscos) || defined(__riscos__)
-# define PLATFORM_ID "RISCos"
-
-#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
-# define PLATFORM_ID "SINIX"
-
-#elif defined(__UNIX_SV__)
-# define PLATFORM_ID "UNIX_SV"
-
-#elif defined(__bsdos__)
-# define PLATFORM_ID "BSDOS"
-
-#elif defined(_MPRAS) || defined(MPRAS)
-# define PLATFORM_ID "MP-RAS"
-
-#elif defined(__osf) || defined(__osf__)
-# define PLATFORM_ID "OSF1"
-
-#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
-# define PLATFORM_ID "SCO_SV"
-
-#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
-# define PLATFORM_ID "ULTRIX"
-
-#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
-# define PLATFORM_ID "Xenix"
-
-#else /* unknown platform */
-# define PLATFORM_ID ""
-
-#endif
-
-/* For windows compilers MSVC and Intel we can determine
-   the architecture of the compiler being used.  This is because
-   the compilers do not have flags that can change the architecture,
-   but rather depend on which compiler is being used
-*/
-#if defined(_WIN32) && defined(_MSC_VER)
-# if defined(_M_IA64)
-#  define ARCHITECTURE_ID "IA64"
-
-# elif defined(_M_X64) || defined(_M_AMD64)
-#  define ARCHITECTURE_ID "x64" 
-
-# elif defined(_M_IX86)
-#  define ARCHITECTURE_ID "X86"
-
-# else /* unknown architecture */
-#  define ARCHITECTURE_ID ""
-# endif
-
-#else
-#  define ARCHITECTURE_ID ""
-#endif
-
-/* Construct the string literal in pieces to prevent the source from
-   getting matched.  Store it in a pointer rather than an array
-   because some compilers will just produce instructions to fill the
-   array rather than assigning a pointer to a static array.  */
-char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
-char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
-
-
-
-/*--------------------------------------------------------------------------*/
-
-#ifdef ID_VOID_MAIN
-void main() {}
-#else
-int main(int argc, char* argv[])
-{
-  int require = 0;
-  require += info_compiler[argc];
-  require += info_platform[argc];
-  require += info_arch[argc];
-  (void)argv;
-  return require;
-}
-#endif
diff --git a/CMakeFiles/CompilerIdC/a.out b/CMakeFiles/CompilerIdC/a.out
deleted file mode 100755
index 5a73ff9..0000000
Binary files a/CMakeFiles/CompilerIdC/a.out and /dev/null differ
diff --git a/CMakeFiles/CompilerIdCXX/CMakeCXXCompilerId.cpp b/CMakeFiles/CompilerIdCXX/CMakeCXXCompilerId.cpp
deleted file mode 100644
index 7414ddf..0000000
--- a/CMakeFiles/CompilerIdCXX/CMakeCXXCompilerId.cpp
+++ /dev/null
@@ -1,215 +0,0 @@
-/* This source file must have a .cpp extension so that all C++ compilers
-   recognize the extension without flags.  Borland does not know .cxx for
-   example.  */
-#ifndef __cplusplus
-# error "A C compiler has been selected for C++."
-#endif
-
-#if defined(__COMO__)
-# define COMPILER_ID "Comeau"
-
-#elif defined(__INTEL_COMPILER) || defined(__ICC)
-# define COMPILER_ID "Intel"
-
-#elif defined(__clang__)
-# define COMPILER_ID "Clang"
-
-#elif defined(__BORLANDC__)
-# define COMPILER_ID "Borland"
-
-#elif defined(__WATCOMC__)
-# define COMPILER_ID "Watcom"
-
-#elif defined(__SUNPRO_CC)
-# define COMPILER_ID "SunPro"
-
-#elif defined(__HP_aCC)
-# define COMPILER_ID "HP"
-
-#elif defined(__DECCXX)
-# define COMPILER_ID "Compaq"
-
-#elif defined(__IBMCPP__)
-# if defined(__COMPILER_VER__)
-#  define COMPILER_ID "zOS"
-# elif __IBMCPP__ >= 800
-#  define COMPILER_ID "XL"
-# else
-#  define COMPILER_ID "VisualAge"
-# endif
-
-#elif defined(__PGI)
-# define COMPILER_ID "PGI"
-
-#elif defined(__PATHSCALE__)
-# define COMPILER_ID "PathScale"
-
-#elif defined(_CRAYC)
-# define COMPILER_ID "Cray"
-
-#elif defined(__TI_COMPILER_VERSION__)
-# define COMPILER_ID "TI_DSP"
-
-#elif defined(__SCO_VERSION__)
-# define COMPILER_ID "SCO"
-
-#elif defined(__GNUC__)
-# define COMPILER_ID "GNU"
-
-#elif defined(_MSC_VER)
-# define COMPILER_ID "MSVC"
-
-#elif defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
-/* Analog Devices C++ compiler for Blackfin, TigerSHARC and
-   SHARC (21000) DSPs */
-# define COMPILER_ID "ADSP"
-
-#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION)
-# define COMPILER_ID "MIPSpro"
-
-/* This compiler is either not known or is too old to define an
-   identification macro.  Try to identify the platform and guess that
-   it is the native compiler.  */
-#elif defined(__sgi)
-# define COMPILER_ID "MIPSpro"
-
-#elif defined(__hpux) || defined(__hpua)
-# define COMPILER_ID "HP"
-
-#else /* unknown compiler */
-# define COMPILER_ID ""
-
-#endif
-
-/* Construct the string literal in pieces to prevent the source from
-   getting matched.  Store it in a pointer rather than an array
-   because some compilers will just produce instructions to fill the
-   array rather than assigning a pointer to a static array.  */
-char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
-
-/* Identify known platforms by name.  */
-#if defined(__linux) || defined(__linux__) || defined(linux)
-# define PLATFORM_ID "Linux"
-
-#elif defined(__CYGWIN__)
-# define PLATFORM_ID "Cygwin"
-
-#elif defined(__MINGW32__)
-# define PLATFORM_ID "MinGW"
-
-#elif defined(__APPLE__)
-# define PLATFORM_ID "Darwin"
-
-#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
-# define PLATFORM_ID "Windows"
-
-#elif defined(__FreeBSD__) || defined(__FreeBSD)
-# define PLATFORM_ID "FreeBSD"
-
-#elif defined(__NetBSD__) || defined(__NetBSD)
-# define PLATFORM_ID "NetBSD"
-
-#elif defined(__OpenBSD__) || defined(__OPENBSD)
-# define PLATFORM_ID "OpenBSD"
-
-#elif defined(__sun) || defined(sun)
-# define PLATFORM_ID "SunOS"
-
-#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
-# define PLATFORM_ID "AIX"
-
-#elif defined(__sgi) || defined(__sgi__) || defined(_SGI)
-# define PLATFORM_ID "IRIX"
-
-#elif defined(__hpux) || defined(__hpux__)
-# define PLATFORM_ID "HP-UX"
-
-#elif defined(__HAIKU) || defined(__HAIKU__) || defined(_HAIKU)
-# define PLATFORM_ID "Haiku"
-/* Haiku also defines __BEOS__ so we must 
-   put it prior to the check for __BEOS__
-*/
-
-#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
-# define PLATFORM_ID "BeOS"
-
-#elif defined(__QNX__) || defined(__QNXNTO__)
-# define PLATFORM_ID "QNX"
-
-#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
-# define PLATFORM_ID "Tru64"
-
-#elif defined(__riscos) || defined(__riscos__)
-# define PLATFORM_ID "RISCos"
-
-#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
-# define PLATFORM_ID "SINIX"
-
-#elif defined(__UNIX_SV__)
-# define PLATFORM_ID "UNIX_SV"
-
-#elif defined(__bsdos__)
-# define PLATFORM_ID "BSDOS"
-
-#elif defined(_MPRAS) || defined(MPRAS)
-# define PLATFORM_ID "MP-RAS"
-
-#elif defined(__osf) || defined(__osf__)
-# define PLATFORM_ID "OSF1"
-
-#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
-# define PLATFORM_ID "SCO_SV"
-
-#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
-# define PLATFORM_ID "ULTRIX"
-
-#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
-# define PLATFORM_ID "Xenix"
-
-#else /* unknown platform */
-# define PLATFORM_ID ""
-
-#endif
-
-/* For windows compilers MSVC and Intel we can determine
-   the architecture of the compiler being used.  This is because
-   the compilers do not have flags that can change the architecture,
-   but rather depend on which compiler is being used
-*/
-#if defined(_WIN32) && defined(_MSC_VER)
-# if defined(_M_IA64)
-#  define ARCHITECTURE_ID "IA64"
-
-# elif defined(_M_X64) || defined(_M_AMD64)
-#  define ARCHITECTURE_ID "x64" 
-
-# elif defined(_M_IX86)
-#  define ARCHITECTURE_ID "X86"
-
-# else /* unknown architecture */
-#  define ARCHITECTURE_ID ""
-# endif
-
-#else
-#  define ARCHITECTURE_ID ""
-#endif
-
-/* Construct the string literal in pieces to prevent the source from
-   getting matched.  Store it in a pointer rather than an array
-   because some compilers will just produce instructions to fill the
-   array rather than assigning a pointer to a static array.  */
-char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
-char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
-
-
-
-/*--------------------------------------------------------------------------*/
-
-int main(int argc, char* argv[])
-{
-  int require = 0;
-  require += info_compiler[argc];
-  require += info_platform[argc];
-  (void)argv;
-  return require;
-}
diff --git a/CMakeFiles/CompilerIdCXX/a.out b/CMakeFiles/CompilerIdCXX/a.out
deleted file mode 100755
index 65851f9..0000000
Binary files a/CMakeFiles/CompilerIdCXX/a.out and /dev/null differ
diff --git a/CMakeFiles/Makefile.cmake b/CMakeFiles/Makefile.cmake
deleted file mode 100644
index 3e1e8da..0000000
--- a/CMakeFiles/Makefile.cmake
+++ /dev/null
@@ -1,87 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# The generator used is:
-SET(CMAKE_DEPENDS_GENERATOR "Unix Makefiles")
-
-# The top level Makefile was generated from the following files:
-SET(CMAKE_MAKEFILE_DEPENDS
-  "CMakeCache.txt"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeCCompiler.cmake.in"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeCCompilerABI.c"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeCInformation.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeCXXCompiler.cmake.in"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeCXXCompilerABI.cpp"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeCXXInformation.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeCommonLanguageInclude.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeDetermineCCompiler.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeDetermineCXXCompiler.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeDetermineCompilerABI.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeDetermineCompilerId.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeDetermineSystem.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeFindBinUtils.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeGenericSystem.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeParseImplicitLinkInfo.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeSystem.cmake.in"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeSystemSpecificInformation.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeTestCCompiler.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeTestCXXCompiler.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeTestCompilerCommon.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CMakeUnixFindMake.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CPack.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/CPackComponent.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/Compiler/GNU-C.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/Compiler/GNU-CXX.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/Compiler/GNU.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/FindBoost.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/Platform/Darwin-GNU-C.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/Platform/Darwin-GNU-CXX.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/Platform/Darwin-GNU.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/Platform/Darwin.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Modules/Platform/UnixPaths.cmake"
-  "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Templates/CPackConfig.cmake.in"
-  "CMakeFiles/CMakeCCompiler.cmake"
-  "CMakeFiles/CMakeCXXCompiler.cmake"
-  "CMakeFiles/CMakeSystem.cmake"
-  "CMakeLists.txt"
-  "apps/CMakeLists.txt"
-  "apps/liblas-config.in"
-  "src/CMakeLists.txt"
-  "test/CMakeLists.txt"
-  "test/unit/CMakeLists.txt"
-  )
-
-# The corresponding makefile is:
-SET(CMAKE_MAKEFILE_OUTPUTS
-  "Makefile"
-  "CMakeFiles/cmake.check_cache"
-  )
-
-# Byproducts of CMake generate step:
-SET(CMAKE_MAKEFILE_PRODUCTS
-  "CMakeFiles/CMakeDirectoryInformation.cmake"
-  "src/CMakeFiles/CMakeDirectoryInformation.cmake"
-  "apps/CMakeFiles/CMakeDirectoryInformation.cmake"
-  "test/CMakeFiles/CMakeDirectoryInformation.cmake"
-  "test/unit/CMakeFiles/CMakeDirectoryInformation.cmake"
-  )
-
-# Dependency information for all targets:
-SET(CMAKE_DEPEND_INFO_FILES
-  "CMakeFiles/dist.dir/DependInfo.cmake"
-  "src/CMakeFiles/las.dir/DependInfo.cmake"
-  "src/CMakeFiles/las_c.dir/DependInfo.cmake"
-  "apps/CMakeFiles/bigfile_test.dir/DependInfo.cmake"
-  "apps/CMakeFiles/las2las.dir/DependInfo.cmake"
-  "apps/CMakeFiles/las2las-old.dir/DependInfo.cmake"
-  "apps/CMakeFiles/las2txt.dir/DependInfo.cmake"
-  "apps/CMakeFiles/las2txt-old.dir/DependInfo.cmake"
-  "apps/CMakeFiles/lasblock.dir/DependInfo.cmake"
-  "apps/CMakeFiles/lasindex_test.dir/DependInfo.cmake"
-  "apps/CMakeFiles/lasinfo.dir/DependInfo.cmake"
-  "apps/CMakeFiles/lasinfo-old.dir/DependInfo.cmake"
-  "apps/CMakeFiles/lasmerge.dir/DependInfo.cmake"
-  "apps/CMakeFiles/ts2las.dir/DependInfo.cmake"
-  "apps/CMakeFiles/txt2las.dir/DependInfo.cmake"
-  "test/unit/CMakeFiles/liblas_test.dir/DependInfo.cmake"
-  )
diff --git a/CMakeFiles/Makefile2 b/CMakeFiles/Makefile2
deleted file mode 100644
index 174cb8a..0000000
--- a/CMakeFiles/Makefile2
+++ /dev/null
@@ -1,704 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# Default target executed when no arguments are given to make.
-default_target: all
-.PHONY : default_target
-
-# The main recursive all target
-all:
-.PHONY : all
-
-# The main recursive preinstall target
-preinstall:
-.PHONY : preinstall
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-#=============================================================================
-# Target rules for target CMakeFiles/dist.dir
-
-# All Build rule for target.
-CMakeFiles/dist.dir/all:
-	$(MAKE) -f CMakeFiles/dist.dir/build.make CMakeFiles/dist.dir/depend
-	$(MAKE) -f CMakeFiles/dist.dir/build.make CMakeFiles/dist.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles 
-	@echo "Built target dist"
-.PHONY : CMakeFiles/dist.dir/all
-
-# Build rule for subdir invocation for target.
-CMakeFiles/dist.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-	$(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/dist.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : CMakeFiles/dist.dir/rule
-
-# Convenience name for target.
-dist: CMakeFiles/dist.dir/rule
-.PHONY : dist
-
-# clean rule for target.
-CMakeFiles/dist.dir/clean:
-	$(MAKE) -f CMakeFiles/dist.dir/build.make CMakeFiles/dist.dir/clean
-.PHONY : CMakeFiles/dist.dir/clean
-
-# clean rule for target.
-clean: CMakeFiles/dist.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Directory level rules for directory src
-
-# Convenience name for "all" pass in the directory.
-src/all: src/CMakeFiles/las.dir/all
-src/all: src/CMakeFiles/las_c.dir/all
-.PHONY : src/all
-
-# Convenience name for "clean" pass in the directory.
-src/clean: src/CMakeFiles/las.dir/clean
-src/clean: src/CMakeFiles/las_c.dir/clean
-.PHONY : src/clean
-
-# Convenience name for "preinstall" pass in the directory.
-src/preinstall:
-.PHONY : src/preinstall
-
-#=============================================================================
-# Target rules for target src/CMakeFiles/las.dir
-
-# All Build rule for target.
-src/CMakeFiles/las.dir/all:
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/depend
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
-	@echo "Built target las"
-.PHONY : src/CMakeFiles/las.dir/all
-
-# Include target in all.
-all: src/CMakeFiles/las.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-src/CMakeFiles/las.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 30
-	$(MAKE) -f CMakeFiles/Makefile2 src/CMakeFiles/las.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : src/CMakeFiles/las.dir/rule
-
-# Convenience name for target.
-las: src/CMakeFiles/las.dir/rule
-.PHONY : las
-
-# clean rule for target.
-src/CMakeFiles/las.dir/clean:
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/clean
-.PHONY : src/CMakeFiles/las.dir/clean
-
-# clean rule for target.
-clean: src/CMakeFiles/las.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Target rules for target src/CMakeFiles/las_c.dir
-
-# All Build rule for target.
-src/CMakeFiles/las_c.dir/all: src/CMakeFiles/las.dir/all
-	$(MAKE) -f src/CMakeFiles/las_c.dir/build.make src/CMakeFiles/las_c.dir/depend
-	$(MAKE) -f src/CMakeFiles/las_c.dir/build.make src/CMakeFiles/las_c.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  40
-	@echo "Built target las_c"
-.PHONY : src/CMakeFiles/las_c.dir/all
-
-# Include target in all.
-all: src/CMakeFiles/las_c.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-src/CMakeFiles/las_c.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 31
-	$(MAKE) -f CMakeFiles/Makefile2 src/CMakeFiles/las_c.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : src/CMakeFiles/las_c.dir/rule
-
-# Convenience name for target.
-las_c: src/CMakeFiles/las_c.dir/rule
-.PHONY : las_c
-
-# clean rule for target.
-src/CMakeFiles/las_c.dir/clean:
-	$(MAKE) -f src/CMakeFiles/las_c.dir/build.make src/CMakeFiles/las_c.dir/clean
-.PHONY : src/CMakeFiles/las_c.dir/clean
-
-# clean rule for target.
-clean: src/CMakeFiles/las_c.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Directory level rules for directory apps
-
-# Convenience name for "all" pass in the directory.
-apps/all: apps/CMakeFiles/bigfile_test.dir/all
-apps/all: apps/CMakeFiles/las2las.dir/all
-apps/all: apps/CMakeFiles/las2las-old.dir/all
-apps/all: apps/CMakeFiles/las2txt.dir/all
-apps/all: apps/CMakeFiles/las2txt-old.dir/all
-apps/all: apps/CMakeFiles/lasblock.dir/all
-apps/all: apps/CMakeFiles/lasindex_test.dir/all
-apps/all: apps/CMakeFiles/lasinfo.dir/all
-apps/all: apps/CMakeFiles/lasinfo-old.dir/all
-apps/all: apps/CMakeFiles/lasmerge.dir/all
-apps/all: apps/CMakeFiles/ts2las.dir/all
-apps/all: apps/CMakeFiles/txt2las.dir/all
-.PHONY : apps/all
-
-# Convenience name for "clean" pass in the directory.
-apps/clean: apps/CMakeFiles/bigfile_test.dir/clean
-apps/clean: apps/CMakeFiles/las2las.dir/clean
-apps/clean: apps/CMakeFiles/las2las-old.dir/clean
-apps/clean: apps/CMakeFiles/las2txt.dir/clean
-apps/clean: apps/CMakeFiles/las2txt-old.dir/clean
-apps/clean: apps/CMakeFiles/lasblock.dir/clean
-apps/clean: apps/CMakeFiles/lasindex_test.dir/clean
-apps/clean: apps/CMakeFiles/lasinfo.dir/clean
-apps/clean: apps/CMakeFiles/lasinfo-old.dir/clean
-apps/clean: apps/CMakeFiles/lasmerge.dir/clean
-apps/clean: apps/CMakeFiles/ts2las.dir/clean
-apps/clean: apps/CMakeFiles/txt2las.dir/clean
-.PHONY : apps/clean
-
-# Convenience name for "preinstall" pass in the directory.
-apps/preinstall:
-.PHONY : apps/preinstall
-
-#=============================================================================
-# Target rules for target apps/CMakeFiles/bigfile_test.dir
-
-# All Build rule for target.
-apps/CMakeFiles/bigfile_test.dir/all: src/CMakeFiles/las_c.dir/all
-	$(MAKE) -f apps/CMakeFiles/bigfile_test.dir/build.make apps/CMakeFiles/bigfile_test.dir/depend
-	$(MAKE) -f apps/CMakeFiles/bigfile_test.dir/build.make apps/CMakeFiles/bigfile_test.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  1
-	@echo "Built target bigfile_test"
-.PHONY : apps/CMakeFiles/bigfile_test.dir/all
-
-# Include target in all.
-all: apps/CMakeFiles/bigfile_test.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-apps/CMakeFiles/bigfile_test.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 32
-	$(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/bigfile_test.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : apps/CMakeFiles/bigfile_test.dir/rule
-
-# Convenience name for target.
-bigfile_test: apps/CMakeFiles/bigfile_test.dir/rule
-.PHONY : bigfile_test
-
-# clean rule for target.
-apps/CMakeFiles/bigfile_test.dir/clean:
-	$(MAKE) -f apps/CMakeFiles/bigfile_test.dir/build.make apps/CMakeFiles/bigfile_test.dir/clean
-.PHONY : apps/CMakeFiles/bigfile_test.dir/clean
-
-# clean rule for target.
-clean: apps/CMakeFiles/bigfile_test.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Target rules for target apps/CMakeFiles/las2las.dir
-
-# All Build rule for target.
-apps/CMakeFiles/las2las.dir/all: src/CMakeFiles/las.dir/all
-	$(MAKE) -f apps/CMakeFiles/las2las.dir/build.make apps/CMakeFiles/las2las.dir/depend
-	$(MAKE) -f apps/CMakeFiles/las2las.dir/build.make apps/CMakeFiles/las2las.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  32 33
-	@echo "Built target las2las"
-.PHONY : apps/CMakeFiles/las2las.dir/all
-
-# Include target in all.
-all: apps/CMakeFiles/las2las.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-apps/CMakeFiles/las2las.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 32
-	$(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/las2las.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : apps/CMakeFiles/las2las.dir/rule
-
-# Convenience name for target.
-las2las: apps/CMakeFiles/las2las.dir/rule
-.PHONY : las2las
-
-# clean rule for target.
-apps/CMakeFiles/las2las.dir/clean:
-	$(MAKE) -f apps/CMakeFiles/las2las.dir/build.make apps/CMakeFiles/las2las.dir/clean
-.PHONY : apps/CMakeFiles/las2las.dir/clean
-
-# clean rule for target.
-clean: apps/CMakeFiles/las2las.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Target rules for target apps/CMakeFiles/las2las-old.dir
-
-# All Build rule for target.
-apps/CMakeFiles/las2las-old.dir/all: src/CMakeFiles/las_c.dir/all
-	$(MAKE) -f apps/CMakeFiles/las2las-old.dir/build.make apps/CMakeFiles/las2las-old.dir/depend
-	$(MAKE) -f apps/CMakeFiles/las2las-old.dir/build.make apps/CMakeFiles/las2las-old.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  34 35
-	@echo "Built target las2las-old"
-.PHONY : apps/CMakeFiles/las2las-old.dir/all
-
-# Include target in all.
-all: apps/CMakeFiles/las2las-old.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-apps/CMakeFiles/las2las-old.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 33
-	$(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/las2las-old.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : apps/CMakeFiles/las2las-old.dir/rule
-
-# Convenience name for target.
-las2las-old: apps/CMakeFiles/las2las-old.dir/rule
-.PHONY : las2las-old
-
-# clean rule for target.
-apps/CMakeFiles/las2las-old.dir/clean:
-	$(MAKE) -f apps/CMakeFiles/las2las-old.dir/build.make apps/CMakeFiles/las2las-old.dir/clean
-.PHONY : apps/CMakeFiles/las2las-old.dir/clean
-
-# clean rule for target.
-clean: apps/CMakeFiles/las2las-old.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Target rules for target apps/CMakeFiles/las2txt.dir
-
-# All Build rule for target.
-apps/CMakeFiles/las2txt.dir/all: src/CMakeFiles/las.dir/all
-	$(MAKE) -f apps/CMakeFiles/las2txt.dir/build.make apps/CMakeFiles/las2txt.dir/depend
-	$(MAKE) -f apps/CMakeFiles/las2txt.dir/build.make apps/CMakeFiles/las2txt.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  36 37
-	@echo "Built target las2txt"
-.PHONY : apps/CMakeFiles/las2txt.dir/all
-
-# Include target in all.
-all: apps/CMakeFiles/las2txt.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-apps/CMakeFiles/las2txt.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 32
-	$(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/las2txt.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : apps/CMakeFiles/las2txt.dir/rule
-
-# Convenience name for target.
-las2txt: apps/CMakeFiles/las2txt.dir/rule
-.PHONY : las2txt
-
-# clean rule for target.
-apps/CMakeFiles/las2txt.dir/clean:
-	$(MAKE) -f apps/CMakeFiles/las2txt.dir/build.make apps/CMakeFiles/las2txt.dir/clean
-.PHONY : apps/CMakeFiles/las2txt.dir/clean
-
-# clean rule for target.
-clean: apps/CMakeFiles/las2txt.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Target rules for target apps/CMakeFiles/las2txt-old.dir
-
-# All Build rule for target.
-apps/CMakeFiles/las2txt-old.dir/all: src/CMakeFiles/las_c.dir/all
-	$(MAKE) -f apps/CMakeFiles/las2txt-old.dir/build.make apps/CMakeFiles/las2txt-old.dir/depend
-	$(MAKE) -f apps/CMakeFiles/las2txt-old.dir/build.make apps/CMakeFiles/las2txt-old.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  38 39
-	@echo "Built target las2txt-old"
-.PHONY : apps/CMakeFiles/las2txt-old.dir/all
-
-# Include target in all.
-all: apps/CMakeFiles/las2txt-old.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-apps/CMakeFiles/las2txt-old.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 33
-	$(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/las2txt-old.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : apps/CMakeFiles/las2txt-old.dir/rule
-
-# Convenience name for target.
-las2txt-old: apps/CMakeFiles/las2txt-old.dir/rule
-.PHONY : las2txt-old
-
-# clean rule for target.
-apps/CMakeFiles/las2txt-old.dir/clean:
-	$(MAKE) -f apps/CMakeFiles/las2txt-old.dir/build.make apps/CMakeFiles/las2txt-old.dir/clean
-.PHONY : apps/CMakeFiles/las2txt-old.dir/clean
-
-# clean rule for target.
-clean: apps/CMakeFiles/las2txt-old.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Target rules for target apps/CMakeFiles/lasblock.dir
-
-# All Build rule for target.
-apps/CMakeFiles/lasblock.dir/all: src/CMakeFiles/las.dir/all
-	$(MAKE) -f apps/CMakeFiles/lasblock.dir/build.make apps/CMakeFiles/lasblock.dir/depend
-	$(MAKE) -f apps/CMakeFiles/lasblock.dir/build.make apps/CMakeFiles/lasblock.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  41 42
-	@echo "Built target lasblock"
-.PHONY : apps/CMakeFiles/lasblock.dir/all
-
-# Include target in all.
-all: apps/CMakeFiles/lasblock.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-apps/CMakeFiles/lasblock.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 32
-	$(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/lasblock.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : apps/CMakeFiles/lasblock.dir/rule
-
-# Convenience name for target.
-lasblock: apps/CMakeFiles/lasblock.dir/rule
-.PHONY : lasblock
-
-# clean rule for target.
-apps/CMakeFiles/lasblock.dir/clean:
-	$(MAKE) -f apps/CMakeFiles/lasblock.dir/build.make apps/CMakeFiles/lasblock.dir/clean
-.PHONY : apps/CMakeFiles/lasblock.dir/clean
-
-# clean rule for target.
-clean: apps/CMakeFiles/lasblock.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Target rules for target apps/CMakeFiles/lasindex_test.dir
-
-# All Build rule for target.
-apps/CMakeFiles/lasindex_test.dir/all: src/CMakeFiles/las.dir/all
-	$(MAKE) -f apps/CMakeFiles/lasindex_test.dir/build.make apps/CMakeFiles/lasindex_test.dir/depend
-	$(MAKE) -f apps/CMakeFiles/lasindex_test.dir/build.make apps/CMakeFiles/lasindex_test.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  43
-	@echo "Built target lasindex_test"
-.PHONY : apps/CMakeFiles/lasindex_test.dir/all
-
-# Include target in all.
-all: apps/CMakeFiles/lasindex_test.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-apps/CMakeFiles/lasindex_test.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 31
-	$(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/lasindex_test.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : apps/CMakeFiles/lasindex_test.dir/rule
-
-# Convenience name for target.
-lasindex_test: apps/CMakeFiles/lasindex_test.dir/rule
-.PHONY : lasindex_test
-
-# clean rule for target.
-apps/CMakeFiles/lasindex_test.dir/clean:
-	$(MAKE) -f apps/CMakeFiles/lasindex_test.dir/build.make apps/CMakeFiles/lasindex_test.dir/clean
-.PHONY : apps/CMakeFiles/lasindex_test.dir/clean
-
-# clean rule for target.
-clean: apps/CMakeFiles/lasindex_test.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Target rules for target apps/CMakeFiles/lasinfo.dir
-
-# All Build rule for target.
-apps/CMakeFiles/lasinfo.dir/all: src/CMakeFiles/las.dir/all
-	$(MAKE) -f apps/CMakeFiles/lasinfo.dir/build.make apps/CMakeFiles/lasinfo.dir/depend
-	$(MAKE) -f apps/CMakeFiles/lasinfo.dir/build.make apps/CMakeFiles/lasinfo.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  44 45
-	@echo "Built target lasinfo"
-.PHONY : apps/CMakeFiles/lasinfo.dir/all
-
-# Include target in all.
-all: apps/CMakeFiles/lasinfo.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-apps/CMakeFiles/lasinfo.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 32
-	$(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/lasinfo.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : apps/CMakeFiles/lasinfo.dir/rule
-
-# Convenience name for target.
-lasinfo: apps/CMakeFiles/lasinfo.dir/rule
-.PHONY : lasinfo
-
-# clean rule for target.
-apps/CMakeFiles/lasinfo.dir/clean:
-	$(MAKE) -f apps/CMakeFiles/lasinfo.dir/build.make apps/CMakeFiles/lasinfo.dir/clean
-.PHONY : apps/CMakeFiles/lasinfo.dir/clean
-
-# clean rule for target.
-clean: apps/CMakeFiles/lasinfo.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Target rules for target apps/CMakeFiles/lasinfo-old.dir
-
-# All Build rule for target.
-apps/CMakeFiles/lasinfo-old.dir/all: src/CMakeFiles/las_c.dir/all
-	$(MAKE) -f apps/CMakeFiles/lasinfo-old.dir/build.make apps/CMakeFiles/lasinfo-old.dir/depend
-	$(MAKE) -f apps/CMakeFiles/lasinfo-old.dir/build.make apps/CMakeFiles/lasinfo-old.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  46 47
-	@echo "Built target lasinfo-old"
-.PHONY : apps/CMakeFiles/lasinfo-old.dir/all
-
-# Include target in all.
-all: apps/CMakeFiles/lasinfo-old.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-apps/CMakeFiles/lasinfo-old.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 33
-	$(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/lasinfo-old.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : apps/CMakeFiles/lasinfo-old.dir/rule
-
-# Convenience name for target.
-lasinfo-old: apps/CMakeFiles/lasinfo-old.dir/rule
-.PHONY : lasinfo-old
-
-# clean rule for target.
-apps/CMakeFiles/lasinfo-old.dir/clean:
-	$(MAKE) -f apps/CMakeFiles/lasinfo-old.dir/build.make apps/CMakeFiles/lasinfo-old.dir/clean
-.PHONY : apps/CMakeFiles/lasinfo-old.dir/clean
-
-# clean rule for target.
-clean: apps/CMakeFiles/lasinfo-old.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Target rules for target apps/CMakeFiles/lasmerge.dir
-
-# All Build rule for target.
-apps/CMakeFiles/lasmerge.dir/all: src/CMakeFiles/las_c.dir/all
-	$(MAKE) -f apps/CMakeFiles/lasmerge.dir/build.make apps/CMakeFiles/lasmerge.dir/depend
-	$(MAKE) -f apps/CMakeFiles/lasmerge.dir/build.make apps/CMakeFiles/lasmerge.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  48 49
-	@echo "Built target lasmerge"
-.PHONY : apps/CMakeFiles/lasmerge.dir/all
-
-# Include target in all.
-all: apps/CMakeFiles/lasmerge.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-apps/CMakeFiles/lasmerge.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 33
-	$(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/lasmerge.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : apps/CMakeFiles/lasmerge.dir/rule
-
-# Convenience name for target.
-lasmerge: apps/CMakeFiles/lasmerge.dir/rule
-.PHONY : lasmerge
-
-# clean rule for target.
-apps/CMakeFiles/lasmerge.dir/clean:
-	$(MAKE) -f apps/CMakeFiles/lasmerge.dir/build.make apps/CMakeFiles/lasmerge.dir/clean
-.PHONY : apps/CMakeFiles/lasmerge.dir/clean
-
-# clean rule for target.
-clean: apps/CMakeFiles/lasmerge.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Target rules for target apps/CMakeFiles/ts2las.dir
-
-# All Build rule for target.
-apps/CMakeFiles/ts2las.dir/all: src/CMakeFiles/las.dir/all
-	$(MAKE) -f apps/CMakeFiles/ts2las.dir/build.make apps/CMakeFiles/ts2las.dir/depend
-	$(MAKE) -f apps/CMakeFiles/ts2las.dir/build.make apps/CMakeFiles/ts2las.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  65 66
-	@echo "Built target ts2las"
-.PHONY : apps/CMakeFiles/ts2las.dir/all
-
-# Include target in all.
-all: apps/CMakeFiles/ts2las.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-apps/CMakeFiles/ts2las.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 32
-	$(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/ts2las.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : apps/CMakeFiles/ts2las.dir/rule
-
-# Convenience name for target.
-ts2las: apps/CMakeFiles/ts2las.dir/rule
-.PHONY : ts2las
-
-# clean rule for target.
-apps/CMakeFiles/ts2las.dir/clean:
-	$(MAKE) -f apps/CMakeFiles/ts2las.dir/build.make apps/CMakeFiles/ts2las.dir/clean
-.PHONY : apps/CMakeFiles/ts2las.dir/clean
-
-# clean rule for target.
-clean: apps/CMakeFiles/ts2las.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Target rules for target apps/CMakeFiles/txt2las.dir
-
-# All Build rule for target.
-apps/CMakeFiles/txt2las.dir/all: src/CMakeFiles/las_c.dir/all
-	$(MAKE) -f apps/CMakeFiles/txt2las.dir/build.make apps/CMakeFiles/txt2las.dir/depend
-	$(MAKE) -f apps/CMakeFiles/txt2las.dir/build.make apps/CMakeFiles/txt2las.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  67 68
-	@echo "Built target txt2las"
-.PHONY : apps/CMakeFiles/txt2las.dir/all
-
-# Include target in all.
-all: apps/CMakeFiles/txt2las.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-apps/CMakeFiles/txt2las.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 33
-	$(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/txt2las.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : apps/CMakeFiles/txt2las.dir/rule
-
-# Convenience name for target.
-txt2las: apps/CMakeFiles/txt2las.dir/rule
-.PHONY : txt2las
-
-# clean rule for target.
-apps/CMakeFiles/txt2las.dir/clean:
-	$(MAKE) -f apps/CMakeFiles/txt2las.dir/build.make apps/CMakeFiles/txt2las.dir/clean
-.PHONY : apps/CMakeFiles/txt2las.dir/clean
-
-# clean rule for target.
-clean: apps/CMakeFiles/txt2las.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Directory level rules for directory test
-
-# Convenience name for "all" pass in the directory.
-test/all: test/unit/all
-.PHONY : test/all
-
-# Convenience name for "clean" pass in the directory.
-test/clean: test/unit/clean
-.PHONY : test/clean
-
-# Convenience name for "preinstall" pass in the directory.
-test/preinstall: test/unit/preinstall
-.PHONY : test/preinstall
-
-#=============================================================================
-# Directory level rules for directory test/unit
-
-# Convenience name for "all" pass in the directory.
-test/unit/all: test/unit/CMakeFiles/liblas_test.dir/all
-.PHONY : test/unit/all
-
-# Convenience name for "clean" pass in the directory.
-test/unit/clean: test/unit/CMakeFiles/liblas_test.dir/clean
-.PHONY : test/unit/clean
-
-# Convenience name for "preinstall" pass in the directory.
-test/unit/preinstall:
-.PHONY : test/unit/preinstall
-
-#=============================================================================
-# Target rules for target test/unit/CMakeFiles/liblas_test.dir
-
-# All Build rule for target.
-test/unit/CMakeFiles/liblas_test.dir/all: src/CMakeFiles/las.dir/all
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/depend
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/build
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles  50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
-	@echo "Built target liblas_test"
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/all
-
-# Include target in all.
-all: test/unit/CMakeFiles/liblas_test.dir/all
-.PHONY : all
-
-# Build rule for subdir invocation for target.
-test/unit/CMakeFiles/liblas_test.dir/rule: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 45
-	$(MAKE) -f CMakeFiles/Makefile2 test/unit/CMakeFiles/liblas_test.dir/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/rule
-
-# Convenience name for target.
-liblas_test: test/unit/CMakeFiles/liblas_test.dir/rule
-.PHONY : liblas_test
-
-# clean rule for target.
-test/unit/CMakeFiles/liblas_test.dir/clean:
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/clean
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/clean
-
-# clean rule for target.
-clean: test/unit/CMakeFiles/liblas_test.dir/clean
-.PHONY : clean
-
-#=============================================================================
-# Special targets to cleanup operation of make.
-
-# Special rule to run CMake to check the build system integrity.
-# No rule that depends on this can have commands that come from listfiles
-# because they might be regenerated.
-cmake_check_build_system:
-	$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
-.PHONY : cmake_check_build_system
-
diff --git a/CMakeFiles/TargetDirectories.txt b/CMakeFiles/TargetDirectories.txt
deleted file mode 100644
index ae33e98..0000000
--- a/CMakeFiles/TargetDirectories.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-/Users/hobu/foo/clean/apps/CMakeFiles/bigfile_test.dir
-/Users/hobu/foo/clean/CMakeFiles/dist.dir
-/Users/hobu/foo/clean/src/CMakeFiles/las.dir
-/Users/hobu/foo/clean/apps/CMakeFiles/las2las.dir
-/Users/hobu/foo/clean/apps/CMakeFiles/las2las-old.dir
-/Users/hobu/foo/clean/apps/CMakeFiles/las2txt.dir
-/Users/hobu/foo/clean/apps/CMakeFiles/las2txt-old.dir
-/Users/hobu/foo/clean/src/CMakeFiles/las_c.dir
-/Users/hobu/foo/clean/apps/CMakeFiles/lasblock.dir
-/Users/hobu/foo/clean/apps/CMakeFiles/lasindex_test.dir
-/Users/hobu/foo/clean/apps/CMakeFiles/lasinfo.dir
-/Users/hobu/foo/clean/apps/CMakeFiles/lasinfo-old.dir
-/Users/hobu/foo/clean/apps/CMakeFiles/lasmerge.dir
-/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir
-/Users/hobu/foo/clean/apps/CMakeFiles/ts2las.dir
-/Users/hobu/foo/clean/apps/CMakeFiles/txt2las.dir
diff --git a/CMakeFiles/cmake.check_cache b/CMakeFiles/cmake.check_cache
deleted file mode 100644
index 3dccd73..0000000
--- a/CMakeFiles/cmake.check_cache
+++ /dev/null
@@ -1 +0,0 @@
-# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/CMakeFiles/dist.dir/DependInfo.cmake b/CMakeFiles/dist.dir/DependInfo.cmake
deleted file mode 100644
index ac621c5..0000000
--- a/CMakeFiles/dist.dir/DependInfo.cmake
+++ /dev/null
@@ -1,8 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  )
-# The set of files for implicit dependencies of each language:
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  )
diff --git a/CMakeFiles/dist.dir/build.make b/CMakeFiles/dist.dir/build.make
deleted file mode 100644
index 034ea23..0000000
--- a/CMakeFiles/dist.dir/build.make
+++ /dev/null
@@ -1,63 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Utility rule file for dist.
-
-CMakeFiles/dist:
-	/usr/bin/make package_source
-
-dist: CMakeFiles/dist
-dist: CMakeFiles/dist.dir/build.make
-.PHONY : dist
-
-# Rule to build all files generated by this target.
-CMakeFiles/dist.dir/build: dist
-.PHONY : CMakeFiles/dist.dir/build
-
-CMakeFiles/dist.dir/clean:
-	$(CMAKE_COMMAND) -P CMakeFiles/dist.dir/cmake_clean.cmake
-.PHONY : CMakeFiles/dist.dir/clean
-
-CMakeFiles/dist.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean /Users/hobu/foo/clean /Users/hobu/foo/clean /Users/hobu/foo/clean/CMakeFiles/dist.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : CMakeFiles/dist.dir/depend
-
diff --git a/CMakeFiles/dist.dir/cmake_clean.cmake b/CMakeFiles/dist.dir/cmake_clean.cmake
deleted file mode 100644
index e899f3d..0000000
--- a/CMakeFiles/dist.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,8 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/dist"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang)
-  INCLUDE(CMakeFiles/dist.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/CMakeFiles/dist.dir/depend.internal b/CMakeFiles/dist.dir/depend.internal
deleted file mode 100644
index 38eae05..0000000
--- a/CMakeFiles/dist.dir/depend.internal
+++ /dev/null
@@ -1,3 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
diff --git a/CMakeFiles/dist.dir/depend.make b/CMakeFiles/dist.dir/depend.make
deleted file mode 100644
index 38eae05..0000000
--- a/CMakeFiles/dist.dir/depend.make
+++ /dev/null
@@ -1,3 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
diff --git a/CMakeFiles/dist.dir/progress.make b/CMakeFiles/dist.dir/progress.make
deleted file mode 100644
index 8b13789..0000000
--- a/CMakeFiles/dist.dir/progress.make
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/CMakeFiles/progress.marks b/CMakeFiles/progress.marks
deleted file mode 100644
index 38b10c1..0000000
--- a/CMakeFiles/progress.marks
+++ /dev/null
@@ -1 +0,0 @@
-68
diff --git a/CMakeLists.txt b/CMakeLists.txt
old mode 100644
new mode 100755
index 21461a5..855a9f6
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,397 +1,402 @@
-###############################################################################
-# Main CMake configuration file for libLAS
-#
-# Author: Mateusz Loskot <mateusz at loskot.net>
-#
-#
-###############################################################################
-# libLAS general settings
-project(libLAS)
-
-
-SET(LIBLAS_VERSION_MAJOR "1")
-SET(LIBLAS_VERSION_MINOR "7")
-SET(LIBLAS_VERSION_PATCH "0")
-set(VERSION "${LIBLAS_VERSION_MAJOR}.${LIBLAS_VERSION_MINOR}.${LIBLAS_VERSION_PATCH}")
-SET(LIBLAS_LIB_SOVERSION "2.2.0")
-SET(LIBLAS_C_LIB_SOVERSION "2.2.0")
-SET(OSGEO4W_UPSTREAM_RELEASE "1")
-
-if(WIN32)
-  # Name of C++ library
-  set(LIBLAS_LIB_NAME liblas)
-
-  # Name of C library
-  set(LIBLAS_C_LIB_NAME liblas_c)
-  
-  # Name of Chipper library
-  set(LASCHIP_LIB_NAME liblas_chipper )  
-  
-  # Name of Kernel libray
-  set(LASKERNEL_LIB_NAME liblas_kernel )
-  
-else()
-  # Name of C++ library
-  set(LIBLAS_LIB_NAME las)
-  
-  # Name of C library
-  set(LIBLAS_C_LIB_NAME las_c)
-
-  # Name of Chipper library
-  set(LASCHIP_LIB_NAME las_chipper )  
-
-  # Name of Kernel libray
-  set(LASKERNEL_LIB_NAME las_kernel )
-endif()
-
-# Name of test suite runner
-set(LIBLAS_UNIT_TEST liblas_test)
-
-set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON)
-
-# Choose package components
-set(WITH_UTILITIES TRUE CACHE BOOL "Choose if libLAS utilities should be built")
-set(WITH_TESTS TRUE CACHE BOOL "Choose if libLAS unit tests should be built")
-
-# Choose to use pkg-config or not
-set(WITH_PKGCONFIG FALSE CACHE BOOL
-  "Choose whether a pkgconfig file (libLAS.pc) should be installed")
-
-set(WITH_ENDIANAWARE FALSE CACHE BOOL "Choose whether or not libLAS should do runtime endianness switching.  Note that this can slow things down considerably if enabled by default")
-
-# Enable CTest and submissions to libLAS dashboard at CDash
-# http://my.cdash.org/index.php?project=libLAS
-set(ENABLE_CTEST FALSE CACHE BOOL
-  "Enable CTest to support submissions of results to CDash at http://cdash.org")
-
-###############################################################################
-# CMake settings
-cmake_minimum_required(VERSION 2.6.0)
-
-set(CMAKE_COLOR_MAKEFILE ON)
-
-# Allow advanced users to generate Makefiles printing detailed commands
-mark_as_advanced(CMAKE_VERBOSE_MAKEFILE)
-
-# Path to additional CMake modules
-set(CMAKE_MODULE_PATH ${libLAS_SOURCE_DIR}/cmake/modules ${CMAKE_MODULE_PATH})
-
-###############################################################################
-# General build settings
-
-# Default to debug mode until final 1.6.0 release 
-if(NOT MSVC_IDE)
-  if(NOT CMAKE_BUILD_TYPE)
-
-  set(CMAKE_BUILD_TYPE Release CACHE STRING 
-    "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel" FORCE)
-  endif()
-    message(STATUS "Setting libLAS build type - ${CMAKE_BUILD_TYPE}")
-endif()
-
-# TODO: Still testing the output paths --mloskot
-set(LIBLAS_BUILD_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin/${CMAKE_BUILD_TYPE})
-
-# Output directory in which to build RUNTIME target files.
-set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LIBLAS_BUILD_OUTPUT_DIRECTORY})
-
-# Output directory in which to build LIBRARY target files
-set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${LIBLAS_BUILD_OUTPUT_DIRECTORY})
-
-# Output directory in which to build ARCHIVE target files.
-set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBLAS_BUILD_OUTPUT_DIRECTORY}) 
-
-file(READ "doc/index.txt" README )
-file(WRITE "README.txt" "${README}")
-
-###############################################################################
-# Platform and compiler specific settings
-
-if(WIN32)
-  if (MSVC)
-    if (MSVC80 OR MSVC90 OR MSVC10)
-      add_definitions(-D_CRT_SECURE_NO_DEPRECATE)
-      add_definitions(-D_CRT_SECURE_NO_WARNINGS)
-      add_definitions(-D_CRT_NONSTDC_NO_WARNING)
-      add_definitions(-D_SCL_SECURE_NO_WARNINGS)
-    endif()
-    
-    if(CMAKE_CXX_FLAGS MATCHES "/W[0-4]")
-      string(REGEX REPLACE "/W[0-4]" "/W4"
-        CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
-    else()
-      set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4")
-    endif()
-
-    # Generate dot-user file with user-specific settings for
-    # Visual Studio project
-    set(MSVC_ENVIRONMENT_PATH "" CACHE STRING
-      "Custom PATH for Environment property in Visual Studio for project")
-    mark_as_advanced(MSVC_ENVIRONMENT_PATH)
-    set(VCPROJ_USER_ENVIRONMENT_PATH_DEBUG "${ENVIRONMENT_PATH}")
-    mark_as_advanced(VCPROJ_USER_ENVIRONMENT_PATH_DEBUG)
-
-  endif()
-  
-  set(CMAKE_INCLUDE_PATH c:/osgeo4w/include;$ENV{CMAKE_INCLUDE_PATH})
-  set(CMAKE_LIBRARY_PATH c:/osgeo4w/lib;$ENV{CMAKE_LIBRARY_PATH})
-else()
-
-  # Recommended C++ compilation flags
-  # -Weffc++
-  set(LIBLAS_COMMON_CXX_FLAGS
-	"-pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long")
-
-  if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
-
-    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${LIBLAS_COMMON_CXX_FLAGS}")
-    if (CMAKE_COMPILER_IS_GNUCXX)
-      set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++98")
-    endif()
-
-  elseif("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER}" MATCHES "clang")
-    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${LIBLAS_COMMON_CXX_FLAGS}")
-  endif()
-endif(WIN32)
-
-if (APPLE)
-  set(SO_EXT dylib)
-  set(CMAKE_FIND_FRAMEWORK "LAST")
-elseif(WIN32)
-  set(SO_EXT dll)
-else()
-  set(SO_EXT so)
-endif(APPLE)
-
-###############################################################################
-# Search for dependencies
-
-# Boost C++ Libraries support - required
-message(STATUS "Searching for Boost 1.38+ - done")
-
-# Default to using static, multithreaded libraries for 
-# linking under MSVC.  This is because we show users how to 
-# use boostpro.com installer and install those options when linking 
-# on windows in the compilation documentation.
-if(WIN32)
-  if (MSVC)
-    set(Boost_USE_STATIC_LIBS   ON)
-    set(Boost_USE_MULTITHREADED ON)
-  endif(MSVC)
-endif(WIN32)
-
-# NOTE: Add iostreams to COMPONENTS list to enable bigfile_boost_iostreams_test
-find_package(Boost 1.38 COMPONENTS program_options thread REQUIRED)
-
-if(Boost_FOUND AND Boost_PROGRAM_OPTIONS_FOUND)
-  include_directories(${Boost_INCLUDE_DIRS})
-endif()
-
-# make these available for the user to set.
-mark_as_advanced(CLEAR Boost_INCLUDE_DIR) 
-mark_as_advanced(CLEAR Boost_LIBRARY_DIRS) 
-link_directories(${Boost_LIBRARY_DIRS}) 
-
-# LASZIP support - optional, default=ON
-set(WITH_LASZIP FALSE CACHE BOOL "Choose if LASzip support should be built")
-set(WITH_STATIC_LASZIP FALSE CACHE BOOL "Choose of LASzip should be statically linked")
-mark_as_advanced(WITH_STATIC_LASZIP)
-
-if (WITH_LASZIP)
-    find_package(LASzip 2.0.1)
-
-    if(LASZIP_FOUND)    
-        set(CMAKE_REQUIRED_LIBRARIES ${LASZIP_LIBRARY})
-        include_directories(${LASZIP_INCLUDE_DIR})
-        add_definitions(-DHAVE_LASZIP=1)
-        mark_as_advanced(CLEAR LASZIP_INCLUDE_DIR) 
-        mark_as_advanced(CLEAR LASZIP_LIBRARY) 
-        mark_as_advanced(CLEAR LASZIP_VERSION) 
-    endif()
-endif()
-
-# GDAL/OGR support - optional, default=OFF
-set(WITH_GDAL FALSE CACHE BOOL "Choose if GDAL support should be built")
-
-if(WITH_GDAL)
-
-  find_package(GDAL 1.7.0)
-  include_directories(${GDAL_INCLUDE_DIR})
-  add_definitions(-DHAVE_GDAL=1)
-
-  mark_as_advanced(CLEAR GDAL_INCLUDE_DIR) 
-  mark_as_advanced(CLEAR GDAL_LIBRARY) 
-
-endif()
-
-# GeoTIFF support - optional, default=OFF
-set(WITH_GEOTIFF FALSE CACHE BOOL "Choose if GeoTIFF support should be built")
-
-if(WITH_GEOTIFF)
-  find_package(GeoTIFF 1.2.5)
-
-  if(GEOTIFF_FOUND)
-    
-    # Confirm required API is available
-    include(CheckFunctionExists) 
-    set(CMAKE_REQUIRED_LIBRARIES ${GEOTIFF_LIBRARY})
-    #       check_function_exists(ST_Create HAVE_ST_CREATE)
-    
-    #        if(NOT HAVE_ST_CREATE)
-    #            set(GEOTIFF_FOUND) # Reset to NOT found for GeoTIFF
-    #            message(FATAL_ERROR "GeoTIFF support requires libgeotiff 1.2.5 or newer.")
-    #        else()
-    include_directories(${GEOTIFF_INCLUDE_DIR})
-    add_definitions(-DHAVE_LIBGEOTIFF=1)
-    #        endif()
-  endif()
-
-  # Determine libTIFF availability, required
-  if (GEOTIFF_FOUND)
-
-    mark_as_advanced(CLEAR TIFF_INCLUDE_DIR) 
-    mark_as_advanced(CLEAR TIFF_LIBRARY) 
-    if (WIN32)
-        set(TIFF_NAMES libtiff_i)
-    endif(WIN32)
-    find_package(TIFF) 
-    if (TIFF_FOUND)
-      include_directories(${TIFF_INCLUDE_DIR})
-    endif()
-  endif()
-endif()
-
-if(WITH_GDAL)
-  if (NOT GEOTIFF_FOUND)
-    message(FATAL_ERROR
-      "GDAL support requires GeoTIFF library which was not selected")
-  endif()
-endif()
-
-
-if(WITH_ENDIANAWARE)
-    add_definitions(-DLIBLAS_ENDIAN_AWARE=1)
-endif()
-###############################################################################
-# Installation settings
-
-if(WIN32)
-  set(DEFAULT_LIB_SUBDIR lib)
-  set(DEFAULT_DATA_SUBDIR .)
-  set(DEFAULT_INCLUDE_SUBDIR include)
-
-  if (MSVC)
-    set(DEFAULT_BIN_SUBDIR bin)
-  else()
-    set(DEFAULT_BIN_SUBDIR .)
-  endif()
-else()
-  # Common locatoins for Unix and Mac OS X
-  set(DEFAULT_BIN_SUBDIR bin)
-  set(DEFAULT_LIB_SUBDIR lib)
-  set(DEFAULT_DATA_SUBDIR share/liblas)
-  set(DEFAULT_INCLUDE_SUBDIR include)
-endif()
-
-# Locations are changeable by user to customize layout of libLAS installation
-# (default values are platform-specific)
-set(LIBLAS_BIN_SUBDIR ${DEFAULT_BIN_SUBDIR} CACHE STRING
-  "Subdirectory where executables will be installed")
-set(LIBLAS_LIB_SUBDIR ${DEFAULT_LIB_SUBDIR} CACHE STRING
-  "Subdirectory where libraries will be installed")
-set(LIBLAS_INCLUDE_SUBDIR ${DEFAULT_INCLUDE_SUBDIR} CACHE STRING
-  "Subdirectory where header files will be installed")
-set(LIBLAS_DATA_SUBDIR ${DEFAULT_DATA_SUBDIR} CACHE STRING
-  "Subdirectory where data will be installed")
-
-# Mark *_SUBDIR variables as advanced and dedicated to use by power-users only.
-mark_as_advanced(LIBLAS_BIN_SUBDIR
-  LIBLAS_LIB_SUBDIR LIBLAS_INCLUDE_SUBDIR LIBLAS_DATA_SUBDIR)
-
-# Full paths for the installation
-set(LIBLAS_BIN_DIR ${LIBLAS_BIN_SUBDIR})
-set(LIBLAS_LIB_DIR ${LIBLAS_LIB_SUBDIR})
-set(LIBLAS_INCLUDE_DIR ${LIBLAS_INCLUDE_SUBDIR})
-set(LIBLAS_DATA_DIR ${LIBLAS_DATA_SUBDIR})
-
-###############################################################################
-# Installation commands
-
-install(FILES AUTHORS COPYING INSTALL LICENSE.txt README.txt
-  DESTINATION ${LIBLAS_DATA_DIR}/doc)
-
-###############################################################################
-# Processing of project directories
-
-add_subdirectory(src)
-
-if(WITH_UTILITIES)
-  message(STATUS "Enable libLAS utilities to build - done")
-  add_subdirectory(apps)
-endif()
-
-if(WITH_TESTS)
-  message(STATUS "Enable libLAS unit tests to build - done")
-  enable_testing()
-
-
-  if(ENABLE_CTEST)
-    message(STATUS
-      "Enable CTest to support submissions of results to CDash at http://cdash.org")
-    cmake_minimum_required(VERSION 2.8.0)
-    # Dashboard has been prepared for experiments
-    # http://my.cdash.org/index.php?project=libLAS
-    include(CTest)
-    message(STATUS
-      "Enable CTest to support submissions of results to CDash at http://cdash.org - done")
-  endif()
-
-  add_subdirectory(test)
-else()
-  if(ENABLE_CTEST)
-    message(WARNING
-      "CTest support requested but WITH_TESTS option not specified to build of libLAS unit tests")
-  endif()
-endif()
-
-
-
-# Version information
-SET(CPACK_PACKAGE_VERSION_MAJOR ${LIBLAS_VERSION_MAJOR})
-SET(CPACK_PACKAGE_VERSION_MINOR ${LIBLAS_VERSION_MINOR})
-SET(CPACK_PACKAGE_VERSION_PATCH ${LIBLAS_VERSION_MINOR})
-
-SET(CPACK_SOURCE_GENERATOR "TGZ;ZIP;TBZ2")
-SET(CPACK_CMAKE_GENERATOR "Unix Makefiles")
-
-
-
-set(CPACK_SOURCE_PACKAGE_FILE_NAME
-  "${CMAKE_PROJECT_NAME}-${VERSION}")
-  
-list(APPEND CPACK_SOURCE_IGNORE_FILES "/test/data/TO_core_last_zoom.las")
-list(APPEND CPACK_SOURCE_IGNORE_FILES "_CPack_Packages")
-list(APPEND CPACK_SOURCE_IGNORE_FILES ".gz")
-list(APPEND CPACK_SOURCE_IGNORE_FILES ".bz2")
-list(APPEND CPACK_SOURCE_IGNORE_FILES ".hg")
-list(APPEND CPACK_SOURCE_IGNORE_FILES "README")
-list(APPEND CPACK_SOURCE_IGNORE_FILES "HOWTORELEASE.txt")
-list(APPEND CPACK_SOURCE_IGNORE_FILES "/doc/_static/files")
-
-list(APPEND CPACK_SOURCE_IGNORE_FILES "CMakeCache.txt")
-
-list(APPEND CPACK_SOURCE_IGNORE_FILES "CPackConfig.cmake")
-list(APPEND CPACK_SOURCE_IGNORE_FILES "schemas")
-list(APPEND CPACK_SOURCE_IGNORE_FILES "hobu-config.bat")
-list(APPEND CPACK_SOURCE_IGNORE_FILES "mpg-config.bat")
-
-list(APPEND CPACK_SOURCE_IGNORE_FILES "liblas-osgeo4w-init.bat")
-list(APPEND CPACK_SOURCE_IGNORE_FILES "liblas-osgeo4w-start.bat.tmpl")
-list(APPEND CPACK_SOURCE_IGNORE_FILES "liblas-osgeo4w-postinstall.bat")
-include(CPack)
-
-add_custom_target(dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source)
-
-#if (WIN32)
-#    include(BuildOSGeo4W)
-#endif(WIN32)
+###############################################################################
+# Main CMake configuration file for libLAS
+#
+# Author: Mateusz Loskot <mateusz at loskot.net>
+#
+#
+###############################################################################
+# libLAS general settings
+project(libLAS)
+
+
+SET(LIBLAS_VERSION_MAJOR "1")
+SET(LIBLAS_VERSION_MINOR "8")
+SET(LIBLAS_VERSION_PATCH "0")
+set(VERSION "${LIBLAS_VERSION_MAJOR}.${LIBLAS_VERSION_MINOR}.${LIBLAS_VERSION_PATCH}")
+SET(LIBLAS_LIB_VERSION "2.3.0")
+SET(LIBLAS_LIB_SOVERSION "3")
+SET(LIBLAS_C_LIB_VERSION "2.3.0")
+SET(LIBLAS_C_LIB_SOVERSION "3")
+SET(OSGEO4W_UPSTREAM_RELEASE "1")
+
+if(WIN32)
+  # Name of C++ library
+  set(LIBLAS_LIB_NAME liblas)
+
+  # Name of C library
+  set(LIBLAS_C_LIB_NAME liblas_c)
+  
+  # Name of Chipper library
+  set(LASCHIP_LIB_NAME liblas_chipper )  
+  
+  # Name of Kernel libray
+  set(LASKERNEL_LIB_NAME liblas_kernel )
+  
+else()
+  # Name of C++ library
+  set(LIBLAS_LIB_NAME las)
+  
+  # Name of C library
+  set(LIBLAS_C_LIB_NAME las_c)
+
+  # Name of Chipper library
+  set(LASCHIP_LIB_NAME las_chipper )  
+
+  # Name of Kernel libray
+  set(LASKERNEL_LIB_NAME las_kernel )
+endif()
+
+# Name of test suite runner
+set(LIBLAS_UNIT_TEST liblas_test)
+
+set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON)
+
+# Choose package components
+set(WITH_UTILITIES TRUE CACHE BOOL "Choose if libLAS utilities should be built")
+set(WITH_TESTS TRUE CACHE BOOL "Choose if libLAS unit tests should be built")
+
+# Choose to use pkg-config or not
+set(WITH_PKGCONFIG FALSE CACHE BOOL
+  "Choose whether a pkgconfig file (libLAS.pc) should be installed")
+
+set(WITH_ENDIANAWARE FALSE CACHE BOOL "Choose whether or not libLAS should do runtime endianness switching.  Note that this can slow things down considerably if enabled by default")
+
+# Enable CTest and submissions to libLAS dashboard at CDash
+# http://my.cdash.org/index.php?project=libLAS
+set(ENABLE_CTEST FALSE CACHE BOOL
+  "Enable CTest to support submissions of results to CDash at http://cdash.org")
+
+###############################################################################
+# CMake settings
+cmake_minimum_required(VERSION 2.6.0)
+
+set(CMAKE_COLOR_MAKEFILE ON)
+
+# Allow advanced users to generate Makefiles printing detailed commands
+mark_as_advanced(CMAKE_VERBOSE_MAKEFILE)
+
+# Path to additional CMake modules
+set(CMAKE_MODULE_PATH "${libLAS_SOURCE_DIR}/cmake/modules" ${CMAKE_MODULE_PATH})
+if (CMAKE_MAJOR_VERSION GREATER 2)
+    cmake_policy(SET CMP0042 OLD)
+endif()
+
+###############################################################################
+# General build settings
+
+# Default to debug mode until final 1.6.0 release 
+if(NOT MSVC_IDE)
+  if(NOT CMAKE_BUILD_TYPE)
+
+  set(CMAKE_BUILD_TYPE Release CACHE STRING 
+    "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel" FORCE)
+  endif()
+    message(STATUS "Setting libLAS build type - ${CMAKE_BUILD_TYPE}")
+endif()
+
+# TODO: Still testing the output paths --mloskot
+set(LIBLAS_BUILD_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bin/${CMAKE_BUILD_TYPE}")
+
+# Output directory in which to build RUNTIME target files.
+set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LIBLAS_BUILD_OUTPUT_DIRECTORY})
+
+# Output directory in which to build LIBRARY target files
+set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${LIBLAS_BUILD_OUTPUT_DIRECTORY})
+
+# Output directory in which to build ARCHIVE target files.
+set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBLAS_BUILD_OUTPUT_DIRECTORY}) 
+
+file(READ "doc/index.txt" README )
+file(WRITE "README.txt" "${README}")
+
+###############################################################################
+# Platform and compiler specific settings
+
+if(WIN32)
+  if (MSVC)
+    if (MSVC80 OR MSVC90 OR MSVC10 OR MSVC11 OR MSVC12)
+      add_definitions(-D_CRT_SECURE_NO_DEPRECATE)
+      add_definitions(-D_CRT_SECURE_NO_WARNINGS)
+      add_definitions(-D_CRT_NONSTDC_NO_WARNING)
+      add_definitions(-D_SCL_SECURE_NO_WARNINGS)
+    endif()
+    
+    if(CMAKE_CXX_FLAGS MATCHES "/W[0-4]")
+      string(REGEX REPLACE "/W[0-4]" "/W4"
+        CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+    else()
+      set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4")
+    endif()
+
+    # Generate dot-user file with user-specific settings for
+    # Visual Studio project
+    set(MSVC_ENVIRONMENT_PATH "" CACHE STRING
+      "Custom PATH for Environment property in Visual Studio for project")
+    mark_as_advanced(MSVC_ENVIRONMENT_PATH)
+    set(VCPROJ_USER_ENVIRONMENT_PATH_DEBUG "${ENVIRONMENT_PATH}")
+    mark_as_advanced(VCPROJ_USER_ENVIRONMENT_PATH_DEBUG)
+
+  endif()
+  
+  set(CMAKE_INCLUDE_PATH c:/osgeo4w64/include;$ENV{CMAKE_INCLUDE_PATH})
+  set(CMAKE_LIBRARY_PATH c:/osgeo4w64/lib;$ENV{CMAKE_LIBRARY_PATH})
+else()
+
+  # Recommended C++ compilation flags
+  # -Weffc++
+  #
+  # Remove -pedandic which causes errors from boost (comma at end of
+  # enum) 2012-09-05.  Remove -Wcast-qual -Wfloat-equal
+  # -Wredundant-decls to suppress the multitude of warning messages.
+  set(LIBLAS_COMMON_CXX_FLAGS
+	" -Wextra -Wall -Wno-unused-parameter -Wno-unused-variable -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long")
+
+  if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
+
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${LIBLAS_COMMON_CXX_FLAGS}")
+    if (CMAKE_COMPILER_IS_GNUCXX)
+      set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++98 -ansi")
+    endif()
+
+  elseif("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER}" MATCHES "clang")
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${LIBLAS_COMMON_CXX_FLAGS}")
+  endif()
+endif(WIN32)
+
+if (APPLE)
+  set(SO_EXT dylib)
+  set(CMAKE_FIND_FRAMEWORK "LAST")
+elseif(WIN32)
+  set(SO_EXT dll)
+else()
+  set(SO_EXT so)
+endif(APPLE)
+
+###############################################################################
+# Search for dependencies
+
+# Boost C++ Libraries support - required
+message(STATUS "Searching for Boost 1.38+ - done")
+
+# Default to using static, multithreaded libraries for 
+# linking under MSVC.  This is because we show users how to 
+# use boostpro.com installer and install those options when linking 
+# on windows in the compilation documentation.
+if(WIN32)
+  if (MSVC)
+    set(Boost_USE_STATIC_LIBS   ON)
+    set(Boost_USE_MULTITHREADED ON)
+  endif(MSVC)
+endif(WIN32)
+
+find_package(Threads)
+find_package(Boost 1.38 COMPONENTS program_options thread system iostreams filesystem REQUIRED)
+
+if(Boost_FOUND AND Boost_PROGRAM_OPTIONS_FOUND)
+  include_directories(${Boost_INCLUDE_DIRS})
+endif()
+
+# make these available for the user to set.
+mark_as_advanced(CLEAR Boost_INCLUDE_DIR) 
+mark_as_advanced(CLEAR Boost_LIBRARY_DIRS) 
+link_directories(${Boost_LIBRARY_DIRS}) 
+
+# LASZIP support - optional, default=ON
+set(WITH_LASZIP FALSE CACHE BOOL "Choose if LASzip support should be built")
+set(WITH_STATIC_LASZIP FALSE CACHE BOOL "Choose of LASzip should be statically linked")
+mark_as_advanced(WITH_STATIC_LASZIP)
+
+find_package(LASzip 2.0.1)
+if(LASZIP_FOUND)    
+    include_directories(${LASZIP_INCLUDE_DIR})
+    add_definitions(-DHAVE_LASZIP=1)
+    mark_as_advanced(CLEAR LASZIP_INCLUDE_DIR) 
+    mark_as_advanced(CLEAR LASZIP_LIBRARY) 
+    mark_as_advanced(CLEAR LASZIP_VERSION) 
+    set(WITH_LASZIP TRUE)
+else()
+    set(LASZIP_LIBRARY "")
+    set(LASZIP_INCLUDE_DIR "")
+endif()
+
+# GDAL/OGR support - optional, default=OFF
+set(WITH_GDAL FALSE CACHE BOOL "Choose if GDAL support should be built")
+
+find_package(GDAL 1.7.0)
+if (GDAL_FOUND)
+  include_directories(${GDAL_INCLUDE_DIR})
+  add_definitions(-DHAVE_GDAL=1)
+  set(WITH_GDAL TRUE)
+  mark_as_advanced(CLEAR GDAL_INCLUDE_DIR) 
+  mark_as_advanced(CLEAR GDAL_LIBRARY) 
+endif()
+
+# GeoTIFF support - optional, default=OFF
+set(WITH_GEOTIFF FALSE CACHE BOOL "Choose if GeoTIFF support should be built")
+
+find_package(GeoTIFF 1.2.5)
+if(GEOTIFF_FOUND)
+    set(WITH_GEOTIFF TRUE)
+    # Confirm required API is available
+    include(CheckFunctionExists) 
+    include_directories(${GEOTIFF_INCLUDE_DIR})
+    add_definitions(-DHAVE_LIBGEOTIFF=1)
+
+    mark_as_advanced(CLEAR TIFF_INCLUDE_DIR) 
+    mark_as_advanced(CLEAR TIFF_LIBRARY) 
+    if (WIN32)
+        set(TIFF_NAMES libtiff_i)
+    endif(WIN32)
+    find_package(TIFF) 
+    if (TIFF_FOUND)
+      include_directories(${TIFF_INCLUDE_DIR})
+    endif()
+else()
+    set(GEOTIFF_LIBRARY "")
+    set(GEOTIFF_INCLUDE_DIR "")
+endif()
+
+
+if(WITH_GDAL)
+  if (NOT GEOTIFF_FOUND)
+    message(FATAL_ERROR
+      "GDAL support requires GeoTIFF library which was not found")
+  endif()
+endif()
+
+
+if(WITH_ENDIANAWARE)
+    add_definitions(-DLIBLAS_ENDIAN_AWARE=1)
+endif()
+###############################################################################
+# Installation settings
+
+if(WIN32)
+  set(DEFAULT_LIB_SUBDIR lib)
+  set(DEFAULT_DATA_SUBDIR .)
+  set(DEFAULT_INCLUDE_SUBDIR include)
+
+  if (MSVC)
+    set(DEFAULT_BIN_SUBDIR bin)
+  else()
+    set(DEFAULT_BIN_SUBDIR .)
+  endif()
+else()
+  # Common locatoins for Unix and Mac OS X
+  set(DEFAULT_BIN_SUBDIR bin)
+  set(DEFAULT_LIB_SUBDIR lib)
+  set(DEFAULT_DATA_SUBDIR share/liblas)
+  set(DEFAULT_INCLUDE_SUBDIR include)
+endif()
+
+# Locations are changeable by user to customize layout of libLAS installation
+# (default values are platform-specific)
+set(LIBLAS_BIN_SUBDIR ${DEFAULT_BIN_SUBDIR} CACHE STRING
+  "Subdirectory where executables will be installed")
+set(LIBLAS_LIB_SUBDIR ${DEFAULT_LIB_SUBDIR} CACHE STRING
+  "Subdirectory where libraries will be installed")
+set(LIBLAS_INCLUDE_SUBDIR ${DEFAULT_INCLUDE_SUBDIR} CACHE STRING
+  "Subdirectory where header files will be installed")
+set(LIBLAS_DATA_SUBDIR ${DEFAULT_DATA_SUBDIR} CACHE STRING
+  "Subdirectory where data will be installed")
+
+# Mark *_SUBDIR variables as advanced and dedicated to use by power-users only.
+mark_as_advanced(LIBLAS_BIN_SUBDIR
+  LIBLAS_LIB_SUBDIR LIBLAS_INCLUDE_SUBDIR LIBLAS_DATA_SUBDIR)
+
+# Full paths for the installation
+set(LIBLAS_BIN_DIR ${LIBLAS_BIN_SUBDIR})
+set(LIBLAS_LIB_DIR ${LIBLAS_LIB_SUBDIR})
+set(LIBLAS_INCLUDE_DIR ${LIBLAS_INCLUDE_SUBDIR})
+set(LIBLAS_DATA_DIR ${LIBLAS_DATA_SUBDIR})
+
+###############################################################################
+# Installation commands
+
+install(FILES AUTHORS COPYING INSTALL LICENSE.txt README.txt
+  DESTINATION ${LIBLAS_DATA_DIR}/doc)
+
+###############################################################################
+# Processing of project directories
+
+add_subdirectory(src)
+
+if(WITH_UTILITIES)
+  message(STATUS "Enable libLAS utilities to build - done")
+  add_subdirectory(apps)
+endif()
+
+if(WITH_TESTS)
+  message(STATUS "Enable libLAS unit tests to build - done")
+  enable_testing()
+
+
+  if(ENABLE_CTEST)
+    message(STATUS
+      "Enable CTest to support submissions of results to CDash at http://cdash.org")
+    cmake_minimum_required(VERSION 2.8.0)
+    # Dashboard has been prepared for experiments
+    # http://my.cdash.org/index.php?project=libLAS
+    include(CTest)
+    message(STATUS
+      "Enable CTest to support submissions of results to CDash at http://cdash.org - done")
+  endif()
+
+  add_subdirectory(test)
+else()
+  if(ENABLE_CTEST)
+    message(WARNING
+      "CTest support requested but WITH_TESTS option not specified to build of libLAS unit tests")
+  endif()
+endif()
+
+# Add find_package(libLAS) support
+add_subdirectory(cmake)
+
+# Version information
+SET(CPACK_PACKAGE_VERSION_MAJOR ${LIBLAS_VERSION_MAJOR})
+SET(CPACK_PACKAGE_VERSION_MINOR ${LIBLAS_VERSION_MINOR})
+SET(CPACK_PACKAGE_VERSION_PATCH ${LIBLAS_VERSION_MINOR})
+
+SET(CPACK_SOURCE_GENERATOR "TBZ2")
+SET(CPACK_CMAKE_GENERATOR "Unix Makefiles")
+
+
+
+set(CPACK_SOURCE_PACKAGE_FILE_NAME
+  "${CMAKE_PROJECT_NAME}-${VERSION}")
+  
+list(APPEND CPACK_SOURCE_IGNORE_FILES "/test/data/TO_core_last_zoom.las")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "_CPack_Packages")
+list(APPEND CPACK_SOURCE_IGNORE_FILES ".gz")
+list(APPEND CPACK_SOURCE_IGNORE_FILES ".bz2")
+list(APPEND CPACK_SOURCE_IGNORE_FILES ".git")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "README")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "HOWTORELEASE.txt")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "/doc/_static/files")
+
+list(APPEND CPACK_SOURCE_IGNORE_FILES "CMakeCache.txt")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "CMakeFiles")
+
+file(GLOB DISTS "libLAS*")
+list(APPEND CPACK_SOURCE_IGNORE_FILES ${DISTS})
+
+list(APPEND CPACK_SOURCE_IGNORE_FILES "Makefile")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "cmake_install.cmak")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "CPackConfig.cmake")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "CPackSourceConfig.cmake")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "CTestTestfile.cmake")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "schemas")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "hobu-config.bat")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "mpg-config.bat")
+
+list(APPEND CPACK_SOURCE_IGNORE_FILES "liblas-osgeo4w-init.bat")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "liblas-osgeo4w-start.bat.tmpl")
+list(APPEND CPACK_SOURCE_IGNORE_FILES "liblas-osgeo4w-postinstall.bat")
+include(CPack)
+
+add_custom_target(dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source)
+
+if (WIN32)
+    include(BuildOSGeo4W)
+endif(WIN32)
diff --git a/COPYING b/COPYING
old mode 100644
new mode 100755
diff --git a/CPackSourceConfig.cmake b/CPackSourceConfig.cmake
deleted file mode 100644
index 61d06f7..0000000
--- a/CPackSourceConfig.cmake
+++ /dev/null
@@ -1,88 +0,0 @@
-# This file will be configured to contain variables for CPack. These variables
-# should be set in the CMake list file of the project before CPack module is
-# included. Example variables are:
-#   CPACK_GENERATOR                     - Generator used to create package
-#   CPACK_INSTALL_CMAKE_PROJECTS        - For each project (path, name, component)
-#   CPACK_CMAKE_GENERATOR               - CMake Generator used for the projects
-#   CPACK_INSTALL_COMMANDS              - Extra commands to install components
-#   CPACK_INSTALLED_DIRECTORIES           - Extra directories to install
-#   CPACK_PACKAGE_DESCRIPTION_FILE      - Description file for the package
-#   CPACK_PACKAGE_DESCRIPTION_SUMMARY   - Summary of the package
-#   CPACK_PACKAGE_EXECUTABLES           - List of pairs of executables and labels
-#   CPACK_PACKAGE_FILE_NAME             - Name of the package generated
-#   CPACK_PACKAGE_ICON                  - Icon used for the package
-#   CPACK_PACKAGE_INSTALL_DIRECTORY     - Name of directory for the installer
-#   CPACK_PACKAGE_NAME                  - Package project name
-#   CPACK_PACKAGE_VENDOR                - Package project vendor
-#   CPACK_PACKAGE_VERSION               - Package project version
-#   CPACK_PACKAGE_VERSION_MAJOR         - Package project version (major)
-#   CPACK_PACKAGE_VERSION_MINOR         - Package project version (minor)
-#   CPACK_PACKAGE_VERSION_PATCH         - Package project version (patch)
-
-# There are certain generator specific ones
-
-# NSIS Generator:
-#   CPACK_PACKAGE_INSTALL_REGISTRY_KEY  - Name of the registry key for the installer
-#   CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS - Extra commands used during uninstall
-#   CPACK_NSIS_EXTRA_INSTALL_COMMANDS   - Extra commands used during install
-
-
-SET(CPACK_BINARY_BUNDLE "OFF")
-SET(CPACK_BINARY_CYGWIN "")
-SET(CPACK_BINARY_DEB "OFF")
-SET(CPACK_BINARY_DRAGNDROP "OFF")
-SET(CPACK_BINARY_NSIS "OFF")
-SET(CPACK_BINARY_OSXX11 "OFF")
-SET(CPACK_BINARY_PACKAGEMAKER "ON")
-SET(CPACK_BINARY_RPM "OFF")
-SET(CPACK_BINARY_STGZ "ON")
-SET(CPACK_BINARY_TBZ2 "OFF")
-SET(CPACK_BINARY_TGZ "ON")
-SET(CPACK_BINARY_TZ "")
-SET(CPACK_BINARY_ZIP "")
-SET(CPACK_CMAKE_GENERATOR "Unix Makefiles")
-SET(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE")
-SET(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE")
-SET(CPACK_GENERATOR "TGZ;ZIP;TBZ2")
-SET(CPACK_IGNORE_FILES "/test/data/TO_core_last_zoom.las;_CPack_Packages;.gz;.bz2;.hg;README;HOWTORELEASE.txt;/doc/_static/files;CMakeCache.txt;CPackConfig.cmake;schemas;hobu-config.bat;mpg-config.bat;liblas-osgeo4w-init.bat;liblas-osgeo4w-start.bat.tmpl;liblas-osgeo4w-postinstall.bat")
-SET(CPACK_INSTALLED_DIRECTORIES "/Users/hobu/foo/clean;/")
-SET(CPACK_INSTALL_CMAKE_PROJECTS "")
-SET(CPACK_INSTALL_PREFIX "/usr/local")
-SET(CPACK_MODULE_PATH "/Users/hobu/foo/clean/cmake/modules")
-SET(CPACK_NSIS_DISPLAY_NAME "libLAS 1.7.7")
-SET(CPACK_NSIS_INSTALLER_ICON_CODE "")
-SET(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "")
-SET(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES")
-SET(CPACK_NSIS_PACKAGE_NAME "libLAS 1.7.7")
-SET(CPACK_OUTPUT_CONFIG_FILE "/Users/hobu/foo/clean/CPackConfig.cmake")
-SET(CPACK_PACKAGE_DEFAULT_LOCATION "/")
-SET(CPACK_PACKAGE_DESCRIPTION_FILE "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Templates/CPack.GenericDescription.txt")
-SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "libLAS built using CMake")
-SET(CPACK_PACKAGE_FILE_NAME "libLAS-1.7.0")
-SET(CPACK_PACKAGE_INSTALL_DIRECTORY "libLAS 1.7.7")
-SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "libLAS 1.7.7")
-SET(CPACK_PACKAGE_NAME "libLAS")
-SET(CPACK_PACKAGE_RELOCATABLE "true")
-SET(CPACK_PACKAGE_VENDOR "Humanity")
-SET(CPACK_PACKAGE_VERSION "1.7.7")
-SET(CPACK_PACKAGE_VERSION_MAJOR "1")
-SET(CPACK_PACKAGE_VERSION_MINOR "7")
-SET(CPACK_PACKAGE_VERSION_PATCH "7")
-SET(CPACK_RESOURCE_FILE_LICENSE "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Templates/CPack.GenericLicense.txt")
-SET(CPACK_RESOURCE_FILE_README "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Templates/CPack.GenericDescription.txt")
-SET(CPACK_RESOURCE_FILE_WELCOME "/Applications/CMake 2.8-6.app/Contents/share/cmake-2.8/Templates/CPack.GenericWelcome.txt")
-SET(CPACK_SET_DESTDIR "OFF")
-SET(CPACK_SOURCE_CYGWIN "")
-SET(CPACK_SOURCE_GENERATOR "TGZ;ZIP;TBZ2")
-SET(CPACK_SOURCE_IGNORE_FILES "/test/data/TO_core_last_zoom.las;_CPack_Packages;.gz;.bz2;.hg;README;HOWTORELEASE.txt;/doc/_static/files;CMakeCache.txt;CPackConfig.cmake;schemas;hobu-config.bat;mpg-config.bat;liblas-osgeo4w-init.bat;liblas-osgeo4w-start.bat.tmpl;liblas-osgeo4w-postinstall.bat")
-SET(CPACK_SOURCE_INSTALLED_DIRECTORIES "/Users/hobu/foo/clean;/")
-SET(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/Users/hobu/foo/clean/CPackSourceConfig.cmake")
-SET(CPACK_SOURCE_PACKAGE_FILE_NAME "libLAS-1.7.0")
-SET(CPACK_SOURCE_TBZ2 "")
-SET(CPACK_SOURCE_TGZ "")
-SET(CPACK_SOURCE_TOPLEVEL_TAG "Darwin-Source")
-SET(CPACK_SOURCE_TZ "")
-SET(CPACK_SOURCE_ZIP "")
-SET(CPACK_STRIP_FILES "")
-SET(CPACK_SYSTEM_NAME "Darwin")
-SET(CPACK_TOPLEVEL_TAG "Darwin-Source")
diff --git a/CTestConfig.cmake b/CTestConfig.cmake
old mode 100644
new mode 100755
diff --git a/CTestTestfile.cmake b/CTestTestfile.cmake
deleted file mode 100644
index 6b25fd5..0000000
--- a/CTestTestfile.cmake
+++ /dev/null
@@ -1,9 +0,0 @@
-# CMake generated Testfile for 
-# Source directory: /Users/hobu/foo/clean
-# Build directory: /Users/hobu/foo/clean
-# 
-# This file includes the relevent testing commands required for 
-# testing this directory and lists subdirectories to be tested as well.
-SUBDIRS(src)
-SUBDIRS(apps)
-SUBDIRS(test)
diff --git a/INSTALL b/INSTALL
old mode 100644
new mode 100755
diff --git a/LICENSE.txt b/LICENSE.txt
old mode 100644
new mode 100755
index db3b4f9..0123861
--- a/LICENSE.txt
+++ b/LICENSE.txt
@@ -223,4 +223,26 @@ THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 DEALINGS IN THE SOFTWARE.
- 
\ No newline at end of file
+
+python/scripts/las2tindex.py
+==============================================================================
+
+copyright (c) 2012, Luca Delucchi, Fondazione Edmund Mach
+
+Permission is hereby granted, free of charge, to any person obtaining a
+copy of this software and associated documentation files (the "Software"),
+to deal in the Software without restriction, including without limitation
+the rights to use, copy, modify, merge, publish, distribute, sublicense,
+and/or sell copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/Makefile b/Makefile
deleted file mode 100644
index 8a65cb3..0000000
--- a/Makefile
+++ /dev/null
@@ -1,424 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# Default target executed when no arguments are given to make.
-default_target: all
-.PHONY : default_target
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-#=============================================================================
-# Targets provided globally by CMake.
-
-# Special rule for the target edit_cache
-edit_cache:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
-.PHONY : edit_cache
-
-# Special rule for the target edit_cache
-edit_cache/fast: edit_cache
-.PHONY : edit_cache/fast
-
-# Special rule for the target install
-install: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
-.PHONY : install
-
-# Special rule for the target install
-install/fast: preinstall/fast
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
-.PHONY : install/fast
-
-# Special rule for the target install/local
-install/local: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
-.PHONY : install/local
-
-# Special rule for the target install/local
-install/local/fast: install/local
-.PHONY : install/local/fast
-
-# Special rule for the target install/strip
-install/strip: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
-.PHONY : install/strip
-
-# Special rule for the target install/strip
-install/strip/fast: install/strip
-.PHONY : install/strip/fast
-
-# Special rule for the target list_install_components
-list_install_components:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
-.PHONY : list_install_components
-
-# Special rule for the target list_install_components
-list_install_components/fast: list_install_components
-.PHONY : list_install_components/fast
-
-# Special rule for the target package
-package: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cpack" --config ./CPackConfig.cmake
-.PHONY : package
-
-# Special rule for the target package
-package/fast: package
-.PHONY : package/fast
-
-# Special rule for the target package_source
-package_source:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cpack" --config ./CPackSourceConfig.cmake /Users/hobu/foo/clean/CPackSourceConfig.cmake
-.PHONY : package_source
-
-# Special rule for the target package_source
-package_source/fast: package_source
-.PHONY : package_source/fast
-
-# Special rule for the target rebuild_cache
-rebuild_cache:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
-.PHONY : rebuild_cache
-
-# Special rule for the target rebuild_cache
-rebuild_cache/fast: rebuild_cache
-.PHONY : rebuild_cache/fast
-
-# Special rule for the target test
-test:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running tests..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/ctest" --force-new-ctest-process $(ARGS)
-.PHONY : test
-
-# Special rule for the target test
-test/fast: test
-.PHONY : test/fast
-
-# The main all target
-all: cmake_check_build_system
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles /Users/hobu/foo/clean/CMakeFiles/progress.marks
-	$(MAKE) -f CMakeFiles/Makefile2 all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : all
-
-# The main clean target
-clean:
-	$(MAKE) -f CMakeFiles/Makefile2 clean
-.PHONY : clean
-
-# The main clean target
-clean/fast: clean
-.PHONY : clean/fast
-
-# Prepare targets for installation.
-preinstall: all
-	$(MAKE) -f CMakeFiles/Makefile2 preinstall
-.PHONY : preinstall
-
-# Prepare targets for installation.
-preinstall/fast:
-	$(MAKE) -f CMakeFiles/Makefile2 preinstall
-.PHONY : preinstall/fast
-
-# clear depends
-depend:
-	$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
-.PHONY : depend
-
-#=============================================================================
-# Target rules for targets named dist
-
-# Build rule for target.
-dist: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 dist
-.PHONY : dist
-
-# fast build rule for target.
-dist/fast:
-	$(MAKE) -f CMakeFiles/dist.dir/build.make CMakeFiles/dist.dir/build
-.PHONY : dist/fast
-
-#=============================================================================
-# Target rules for targets named las
-
-# Build rule for target.
-las: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 las
-.PHONY : las
-
-# fast build rule for target.
-las/fast:
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/build
-.PHONY : las/fast
-
-#=============================================================================
-# Target rules for targets named las_c
-
-# Build rule for target.
-las_c: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 las_c
-.PHONY : las_c
-
-# fast build rule for target.
-las_c/fast:
-	$(MAKE) -f src/CMakeFiles/las_c.dir/build.make src/CMakeFiles/las_c.dir/build
-.PHONY : las_c/fast
-
-#=============================================================================
-# Target rules for targets named bigfile_test
-
-# Build rule for target.
-bigfile_test: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 bigfile_test
-.PHONY : bigfile_test
-
-# fast build rule for target.
-bigfile_test/fast:
-	$(MAKE) -f apps/CMakeFiles/bigfile_test.dir/build.make apps/CMakeFiles/bigfile_test.dir/build
-.PHONY : bigfile_test/fast
-
-#=============================================================================
-# Target rules for targets named las2las
-
-# Build rule for target.
-las2las: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 las2las
-.PHONY : las2las
-
-# fast build rule for target.
-las2las/fast:
-	$(MAKE) -f apps/CMakeFiles/las2las.dir/build.make apps/CMakeFiles/las2las.dir/build
-.PHONY : las2las/fast
-
-#=============================================================================
-# Target rules for targets named las2las-old
-
-# Build rule for target.
-las2las-old: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 las2las-old
-.PHONY : las2las-old
-
-# fast build rule for target.
-las2las-old/fast:
-	$(MAKE) -f apps/CMakeFiles/las2las-old.dir/build.make apps/CMakeFiles/las2las-old.dir/build
-.PHONY : las2las-old/fast
-
-#=============================================================================
-# Target rules for targets named las2txt
-
-# Build rule for target.
-las2txt: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 las2txt
-.PHONY : las2txt
-
-# fast build rule for target.
-las2txt/fast:
-	$(MAKE) -f apps/CMakeFiles/las2txt.dir/build.make apps/CMakeFiles/las2txt.dir/build
-.PHONY : las2txt/fast
-
-#=============================================================================
-# Target rules for targets named las2txt-old
-
-# Build rule for target.
-las2txt-old: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 las2txt-old
-.PHONY : las2txt-old
-
-# fast build rule for target.
-las2txt-old/fast:
-	$(MAKE) -f apps/CMakeFiles/las2txt-old.dir/build.make apps/CMakeFiles/las2txt-old.dir/build
-.PHONY : las2txt-old/fast
-
-#=============================================================================
-# Target rules for targets named lasblock
-
-# Build rule for target.
-lasblock: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 lasblock
-.PHONY : lasblock
-
-# fast build rule for target.
-lasblock/fast:
-	$(MAKE) -f apps/CMakeFiles/lasblock.dir/build.make apps/CMakeFiles/lasblock.dir/build
-.PHONY : lasblock/fast
-
-#=============================================================================
-# Target rules for targets named lasindex_test
-
-# Build rule for target.
-lasindex_test: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 lasindex_test
-.PHONY : lasindex_test
-
-# fast build rule for target.
-lasindex_test/fast:
-	$(MAKE) -f apps/CMakeFiles/lasindex_test.dir/build.make apps/CMakeFiles/lasindex_test.dir/build
-.PHONY : lasindex_test/fast
-
-#=============================================================================
-# Target rules for targets named lasinfo
-
-# Build rule for target.
-lasinfo: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 lasinfo
-.PHONY : lasinfo
-
-# fast build rule for target.
-lasinfo/fast:
-	$(MAKE) -f apps/CMakeFiles/lasinfo.dir/build.make apps/CMakeFiles/lasinfo.dir/build
-.PHONY : lasinfo/fast
-
-#=============================================================================
-# Target rules for targets named lasinfo-old
-
-# Build rule for target.
-lasinfo-old: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 lasinfo-old
-.PHONY : lasinfo-old
-
-# fast build rule for target.
-lasinfo-old/fast:
-	$(MAKE) -f apps/CMakeFiles/lasinfo-old.dir/build.make apps/CMakeFiles/lasinfo-old.dir/build
-.PHONY : lasinfo-old/fast
-
-#=============================================================================
-# Target rules for targets named lasmerge
-
-# Build rule for target.
-lasmerge: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 lasmerge
-.PHONY : lasmerge
-
-# fast build rule for target.
-lasmerge/fast:
-	$(MAKE) -f apps/CMakeFiles/lasmerge.dir/build.make apps/CMakeFiles/lasmerge.dir/build
-.PHONY : lasmerge/fast
-
-#=============================================================================
-# Target rules for targets named ts2las
-
-# Build rule for target.
-ts2las: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 ts2las
-.PHONY : ts2las
-
-# fast build rule for target.
-ts2las/fast:
-	$(MAKE) -f apps/CMakeFiles/ts2las.dir/build.make apps/CMakeFiles/ts2las.dir/build
-.PHONY : ts2las/fast
-
-#=============================================================================
-# Target rules for targets named txt2las
-
-# Build rule for target.
-txt2las: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 txt2las
-.PHONY : txt2las
-
-# fast build rule for target.
-txt2las/fast:
-	$(MAKE) -f apps/CMakeFiles/txt2las.dir/build.make apps/CMakeFiles/txt2las.dir/build
-.PHONY : txt2las/fast
-
-#=============================================================================
-# Target rules for targets named liblas_test
-
-# Build rule for target.
-liblas_test: cmake_check_build_system
-	$(MAKE) -f CMakeFiles/Makefile2 liblas_test
-.PHONY : liblas_test
-
-# fast build rule for target.
-liblas_test/fast:
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/build
-.PHONY : liblas_test/fast
-
-# Help Target
-help:
-	@echo "The following are some of the valid targets for this Makefile:"
-	@echo "... all (the default if no target is provided)"
-	@echo "... clean"
-	@echo "... depend"
-	@echo "... dist"
-	@echo "... edit_cache"
-	@echo "... install"
-	@echo "... install/local"
-	@echo "... install/strip"
-	@echo "... list_install_components"
-	@echo "... package"
-	@echo "... package_source"
-	@echo "... rebuild_cache"
-	@echo "... test"
-	@echo "... las"
-	@echo "... las_c"
-	@echo "... bigfile_test"
-	@echo "... las2las"
-	@echo "... las2las-old"
-	@echo "... las2txt"
-	@echo "... las2txt-old"
-	@echo "... lasblock"
-	@echo "... lasindex_test"
-	@echo "... lasinfo"
-	@echo "... lasinfo-old"
-	@echo "... lasmerge"
-	@echo "... ts2las"
-	@echo "... txt2las"
-	@echo "... liblas_test"
-.PHONY : help
-
-
-
-#=============================================================================
-# Special targets to cleanup operation of make.
-
-# Special rule to run CMake to check the build system integrity.
-# No rule that depends on this can have commands that come from listfiles
-# because they might be regenerated.
-cmake_check_build_system:
-	$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
-.PHONY : cmake_check_build_system
-
diff --git a/NEWS b/NEWS
old mode 100644
new mode 100755
diff --git a/apps/CMakeFiles/CMakeDirectoryInformation.cmake b/apps/CMakeFiles/CMakeDirectoryInformation.cmake
deleted file mode 100644
index ab2f2c3..0000000
--- a/apps/CMakeFiles/CMakeDirectoryInformation.cmake
+++ /dev/null
@@ -1,25 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# Relative path conversion top directories.
-SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/hobu/foo/clean")
-SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/hobu/foo/clean")
-
-# Force unix paths in dependencies.
-SET(CMAKE_FORCE_UNIX_PATHS 1)
-
-# The C and CXX include file search paths:
-SET(CMAKE_C_INCLUDE_PATH
-  "apps/."
-  "apps/../include"
-  "apps/../include/liblas/capi"
-  "/usr/local/include"
-  )
-SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
-SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
-
-# The C and CXX include file regular expressions for this directory.
-SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
-SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
-SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
-SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/apps/CMakeFiles/bigfile_test.dir/DependInfo.cmake b/apps/CMakeFiles/bigfile_test.dir/DependInfo.cmake
deleted file mode 100644
index c49d715..0000000
--- a/apps/CMakeFiles/bigfile_test.dir/DependInfo.cmake
+++ /dev/null
@@ -1,15 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "C"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_C
-  "/Users/hobu/foo/clean/apps/bigtest.c" "/Users/hobu/foo/clean/apps/CMakeFiles/bigfile_test.dir/bigtest.c.o"
-  )
-SET(CMAKE_C_COMPILER_ID "GNU")
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las_c.dir/DependInfo.cmake"
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/apps/CMakeFiles/bigfile_test.dir/build.make b/apps/CMakeFiles/bigfile_test.dir/build.make
deleted file mode 100644
index 845b0bd..0000000
--- a/apps/CMakeFiles/bigfile_test.dir/build.make
+++ /dev/null
@@ -1,106 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include apps/CMakeFiles/bigfile_test.dir/depend.make
-
-# Include the progress variables for this target.
-include apps/CMakeFiles/bigfile_test.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include apps/CMakeFiles/bigfile_test.dir/flags.make
-
-apps/CMakeFiles/bigfile_test.dir/bigtest.c.o: apps/CMakeFiles/bigfile_test.dir/flags.make
-apps/CMakeFiles/bigfile_test.dir/bigtest.c.o: apps/bigtest.c
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object apps/CMakeFiles/bigfile_test.dir/bigtest.c.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/bigfile_test.dir/bigtest.c.o   -c /Users/hobu/foo/clean/apps/bigtest.c
-
-apps/CMakeFiles/bigfile_test.dir/bigtest.c.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/bigfile_test.dir/bigtest.c.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -E /Users/hobu/foo/clean/apps/bigtest.c > CMakeFiles/bigfile_test.dir/bigtest.c.i
-
-apps/CMakeFiles/bigfile_test.dir/bigtest.c.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/bigfile_test.dir/bigtest.c.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -S /Users/hobu/foo/clean/apps/bigtest.c -o CMakeFiles/bigfile_test.dir/bigtest.c.s
-
-apps/CMakeFiles/bigfile_test.dir/bigtest.c.o.requires:
-.PHONY : apps/CMakeFiles/bigfile_test.dir/bigtest.c.o.requires
-
-apps/CMakeFiles/bigfile_test.dir/bigtest.c.o.provides: apps/CMakeFiles/bigfile_test.dir/bigtest.c.o.requires
-	$(MAKE) -f apps/CMakeFiles/bigfile_test.dir/build.make apps/CMakeFiles/bigfile_test.dir/bigtest.c.o.provides.build
-.PHONY : apps/CMakeFiles/bigfile_test.dir/bigtest.c.o.provides
-
-apps/CMakeFiles/bigfile_test.dir/bigtest.c.o.provides.build: apps/CMakeFiles/bigfile_test.dir/bigtest.c.o
-
-# Object files for target bigfile_test
-bigfile_test_OBJECTS = \
-"CMakeFiles/bigfile_test.dir/bigtest.c.o"
-
-# External object files for target bigfile_test
-bigfile_test_EXTERNAL_OBJECTS =
-
-bin/Release/bigfile_test: apps/CMakeFiles/bigfile_test.dir/bigtest.c.o
-bin/Release/bigfile_test: bin/Release/liblas_c.2.2.0.dylib
-bin/Release/bigfile_test: bin/Release/liblas.2.2.0.dylib
-bin/Release/bigfile_test: /usr/local/lib/libboost_program_options.a
-bin/Release/bigfile_test: /usr/local/lib/libboost_thread.a
-bin/Release/bigfile_test: apps/CMakeFiles/bigfile_test.dir/build.make
-bin/Release/bigfile_test: apps/CMakeFiles/bigfile_test.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking C executable ../bin/Release/bigfile_test"
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/bigfile_test.dir/link.txt --verbose=$(VERBOSE)
-
-# Rule to build all files generated by this target.
-apps/CMakeFiles/bigfile_test.dir/build: bin/Release/bigfile_test
-.PHONY : apps/CMakeFiles/bigfile_test.dir/build
-
-apps/CMakeFiles/bigfile_test.dir/requires: apps/CMakeFiles/bigfile_test.dir/bigtest.c.o.requires
-.PHONY : apps/CMakeFiles/bigfile_test.dir/requires
-
-apps/CMakeFiles/bigfile_test.dir/clean:
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -P CMakeFiles/bigfile_test.dir/cmake_clean.cmake
-.PHONY : apps/CMakeFiles/bigfile_test.dir/clean
-
-apps/CMakeFiles/bigfile_test.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean/apps/CMakeFiles/bigfile_test.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : apps/CMakeFiles/bigfile_test.dir/depend
-
diff --git a/apps/CMakeFiles/bigfile_test.dir/cmake_clean.cmake b/apps/CMakeFiles/bigfile_test.dir/cmake_clean.cmake
deleted file mode 100644
index 206dfdf..0000000
--- a/apps/CMakeFiles/bigfile_test.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,10 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/bigfile_test.dir/bigtest.c.o"
-  "../bin/Release/bigfile_test.pdb"
-  "../bin/Release/bigfile_test"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang C)
-  INCLUDE(CMakeFiles/bigfile_test.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/apps/CMakeFiles/bigfile_test.dir/depend.make b/apps/CMakeFiles/bigfile_test.dir/depend.make
deleted file mode 100644
index 63e740a..0000000
--- a/apps/CMakeFiles/bigfile_test.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for bigfile_test.
-# This may be replaced when dependencies are built.
diff --git a/apps/CMakeFiles/bigfile_test.dir/flags.make b/apps/CMakeFiles/bigfile_test.dir/flags.make
deleted file mode 100644
index e0228eb..0000000
--- a/apps/CMakeFiles/bigfile_test.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile C with /usr/bin/gcc
-C_FLAGS = -O3 -DNDEBUG -I/Users/hobu/foo/clean/apps/. -I/Users/hobu/foo/clean/apps/../include -I/Users/hobu/foo/clean/apps/../include/liblas/capi -I/usr/local/include   
-
-C_DEFINES = 
-
diff --git a/apps/CMakeFiles/bigfile_test.dir/link.txt b/apps/CMakeFiles/bigfile_test.dir/link.txt
deleted file mode 100644
index 7f318eb..0000000
--- a/apps/CMakeFiles/bigfile_test.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/gcc  -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/bigfile_test.dir/bigtest.c.o  -o ../bin/Release/bigfile_test  -L/usr/local/lib ../bin/Release/liblas_c.2.2.0.dylib ../bin/Release/liblas.2.2.0.dylib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a 
diff --git a/apps/CMakeFiles/bigfile_test.dir/progress.make b/apps/CMakeFiles/bigfile_test.dir/progress.make
deleted file mode 100644
index 781c7de..0000000
--- a/apps/CMakeFiles/bigfile_test.dir/progress.make
+++ /dev/null
@@ -1,2 +0,0 @@
-CMAKE_PROGRESS_1 = 1
-
diff --git a/apps/CMakeFiles/las2las-old.dir/DependInfo.cmake b/apps/CMakeFiles/las2las-old.dir/DependInfo.cmake
deleted file mode 100644
index 01ab41f..0000000
--- a/apps/CMakeFiles/las2las-old.dir/DependInfo.cmake
+++ /dev/null
@@ -1,16 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "C"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_C
-  "/Users/hobu/foo/clean/apps/las2las-old.c" "/Users/hobu/foo/clean/apps/CMakeFiles/las2las-old.dir/las2las-old.c.o"
-  "/Users/hobu/foo/clean/apps/lascommon.c" "/Users/hobu/foo/clean/apps/CMakeFiles/las2las-old.dir/lascommon.c.o"
-  )
-SET(CMAKE_C_COMPILER_ID "GNU")
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las_c.dir/DependInfo.cmake"
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/apps/CMakeFiles/las2las-old.dir/build.make b/apps/CMakeFiles/las2las-old.dir/build.make
deleted file mode 100644
index 36ade0a..0000000
--- a/apps/CMakeFiles/las2las-old.dir/build.make
+++ /dev/null
@@ -1,132 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include apps/CMakeFiles/las2las-old.dir/depend.make
-
-# Include the progress variables for this target.
-include apps/CMakeFiles/las2las-old.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include apps/CMakeFiles/las2las-old.dir/flags.make
-
-apps/CMakeFiles/las2las-old.dir/lascommon.c.o: apps/CMakeFiles/las2las-old.dir/flags.make
-apps/CMakeFiles/las2las-old.dir/lascommon.c.o: apps/lascommon.c
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object apps/CMakeFiles/las2las-old.dir/lascommon.c.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/las2las-old.dir/lascommon.c.o   -c /Users/hobu/foo/clean/apps/lascommon.c
-
-apps/CMakeFiles/las2las-old.dir/lascommon.c.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/las2las-old.dir/lascommon.c.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -E /Users/hobu/foo/clean/apps/lascommon.c > CMakeFiles/las2las-old.dir/lascommon.c.i
-
-apps/CMakeFiles/las2las-old.dir/lascommon.c.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/las2las-old.dir/lascommon.c.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -S /Users/hobu/foo/clean/apps/lascommon.c -o CMakeFiles/las2las-old.dir/lascommon.c.s
-
-apps/CMakeFiles/las2las-old.dir/lascommon.c.o.requires:
-.PHONY : apps/CMakeFiles/las2las-old.dir/lascommon.c.o.requires
-
-apps/CMakeFiles/las2las-old.dir/lascommon.c.o.provides: apps/CMakeFiles/las2las-old.dir/lascommon.c.o.requires
-	$(MAKE) -f apps/CMakeFiles/las2las-old.dir/build.make apps/CMakeFiles/las2las-old.dir/lascommon.c.o.provides.build
-.PHONY : apps/CMakeFiles/las2las-old.dir/lascommon.c.o.provides
-
-apps/CMakeFiles/las2las-old.dir/lascommon.c.o.provides.build: apps/CMakeFiles/las2las-old.dir/lascommon.c.o
-
-apps/CMakeFiles/las2las-old.dir/las2las-old.c.o: apps/CMakeFiles/las2las-old.dir/flags.make
-apps/CMakeFiles/las2las-old.dir/las2las-old.c.o: apps/las2las-old.c
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_2)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object apps/CMakeFiles/las2las-old.dir/las2las-old.c.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/las2las-old.dir/las2las-old.c.o   -c /Users/hobu/foo/clean/apps/las2las-old.c
-
-apps/CMakeFiles/las2las-old.dir/las2las-old.c.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/las2las-old.dir/las2las-old.c.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -E /Users/hobu/foo/clean/apps/las2las-old.c > CMakeFiles/las2las-old.dir/las2las-old.c.i
-
-apps/CMakeFiles/las2las-old.dir/las2las-old.c.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/las2las-old.dir/las2las-old.c.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -S /Users/hobu/foo/clean/apps/las2las-old.c -o CMakeFiles/las2las-old.dir/las2las-old.c.s
-
-apps/CMakeFiles/las2las-old.dir/las2las-old.c.o.requires:
-.PHONY : apps/CMakeFiles/las2las-old.dir/las2las-old.c.o.requires
-
-apps/CMakeFiles/las2las-old.dir/las2las-old.c.o.provides: apps/CMakeFiles/las2las-old.dir/las2las-old.c.o.requires
-	$(MAKE) -f apps/CMakeFiles/las2las-old.dir/build.make apps/CMakeFiles/las2las-old.dir/las2las-old.c.o.provides.build
-.PHONY : apps/CMakeFiles/las2las-old.dir/las2las-old.c.o.provides
-
-apps/CMakeFiles/las2las-old.dir/las2las-old.c.o.provides.build: apps/CMakeFiles/las2las-old.dir/las2las-old.c.o
-
-# Object files for target las2las-old
-las2las__old_OBJECTS = \
-"CMakeFiles/las2las-old.dir/lascommon.c.o" \
-"CMakeFiles/las2las-old.dir/las2las-old.c.o"
-
-# External object files for target las2las-old
-las2las__old_EXTERNAL_OBJECTS =
-
-bin/Release/las2las-old: apps/CMakeFiles/las2las-old.dir/lascommon.c.o
-bin/Release/las2las-old: apps/CMakeFiles/las2las-old.dir/las2las-old.c.o
-bin/Release/las2las-old: bin/Release/liblas_c.2.2.0.dylib
-bin/Release/las2las-old: bin/Release/liblas.2.2.0.dylib
-bin/Release/las2las-old: /usr/local/lib/libboost_program_options.a
-bin/Release/las2las-old: /usr/local/lib/libboost_thread.a
-bin/Release/las2las-old: apps/CMakeFiles/las2las-old.dir/build.make
-bin/Release/las2las-old: apps/CMakeFiles/las2las-old.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking C executable ../bin/Release/las2las-old"
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/las2las-old.dir/link.txt --verbose=$(VERBOSE)
-
-# Rule to build all files generated by this target.
-apps/CMakeFiles/las2las-old.dir/build: bin/Release/las2las-old
-.PHONY : apps/CMakeFiles/las2las-old.dir/build
-
-apps/CMakeFiles/las2las-old.dir/requires: apps/CMakeFiles/las2las-old.dir/lascommon.c.o.requires
-apps/CMakeFiles/las2las-old.dir/requires: apps/CMakeFiles/las2las-old.dir/las2las-old.c.o.requires
-.PHONY : apps/CMakeFiles/las2las-old.dir/requires
-
-apps/CMakeFiles/las2las-old.dir/clean:
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -P CMakeFiles/las2las-old.dir/cmake_clean.cmake
-.PHONY : apps/CMakeFiles/las2las-old.dir/clean
-
-apps/CMakeFiles/las2las-old.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean/apps/CMakeFiles/las2las-old.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : apps/CMakeFiles/las2las-old.dir/depend
-
diff --git a/apps/CMakeFiles/las2las-old.dir/cmake_clean.cmake b/apps/CMakeFiles/las2las-old.dir/cmake_clean.cmake
deleted file mode 100644
index c51af72..0000000
--- a/apps/CMakeFiles/las2las-old.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/las2las-old.dir/lascommon.c.o"
-  "CMakeFiles/las2las-old.dir/las2las-old.c.o"
-  "../bin/Release/las2las-old.pdb"
-  "../bin/Release/las2las-old"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang C)
-  INCLUDE(CMakeFiles/las2las-old.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/apps/CMakeFiles/las2las-old.dir/depend.make b/apps/CMakeFiles/las2las-old.dir/depend.make
deleted file mode 100644
index 37a8f54..0000000
--- a/apps/CMakeFiles/las2las-old.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for las2las-old.
-# This may be replaced when dependencies are built.
diff --git a/apps/CMakeFiles/las2las-old.dir/flags.make b/apps/CMakeFiles/las2las-old.dir/flags.make
deleted file mode 100644
index e0228eb..0000000
--- a/apps/CMakeFiles/las2las-old.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile C with /usr/bin/gcc
-C_FLAGS = -O3 -DNDEBUG -I/Users/hobu/foo/clean/apps/. -I/Users/hobu/foo/clean/apps/../include -I/Users/hobu/foo/clean/apps/../include/liblas/capi -I/usr/local/include   
-
-C_DEFINES = 
-
diff --git a/apps/CMakeFiles/las2las-old.dir/link.txt b/apps/CMakeFiles/las2las-old.dir/link.txt
deleted file mode 100644
index 498415c..0000000
--- a/apps/CMakeFiles/las2las-old.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/gcc  -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/las2las-old.dir/lascommon.c.o CMakeFiles/las2las-old.dir/las2las-old.c.o  -o ../bin/Release/las2las-old  -L/usr/local/lib ../bin/Release/liblas_c.2.2.0.dylib ../bin/Release/liblas.2.2.0.dylib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a 
diff --git a/apps/CMakeFiles/las2las-old.dir/progress.make b/apps/CMakeFiles/las2las-old.dir/progress.make
deleted file mode 100644
index 30c3091..0000000
--- a/apps/CMakeFiles/las2las-old.dir/progress.make
+++ /dev/null
@@ -1,3 +0,0 @@
-CMAKE_PROGRESS_1 = 34
-CMAKE_PROGRESS_2 = 35
-
diff --git a/apps/CMakeFiles/las2las.dir/DependInfo.cmake b/apps/CMakeFiles/las2las.dir/DependInfo.cmake
deleted file mode 100644
index c019a70..0000000
--- a/apps/CMakeFiles/las2las.dir/DependInfo.cmake
+++ /dev/null
@@ -1,15 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "CXX"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_CXX
-  "/Users/hobu/foo/clean/apps/las2las.cpp" "/Users/hobu/foo/clean/apps/CMakeFiles/las2las.dir/las2las.cpp.o"
-  "/Users/hobu/foo/clean/apps/laskernel.cpp" "/Users/hobu/foo/clean/apps/CMakeFiles/las2las.dir/laskernel.cpp.o"
-  )
-SET(CMAKE_CXX_COMPILER_ID "GNU")
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/apps/CMakeFiles/las2las.dir/build.make b/apps/CMakeFiles/las2las.dir/build.make
deleted file mode 100644
index ab25692..0000000
--- a/apps/CMakeFiles/las2las.dir/build.make
+++ /dev/null
@@ -1,131 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include apps/CMakeFiles/las2las.dir/depend.make
-
-# Include the progress variables for this target.
-include apps/CMakeFiles/las2las.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include apps/CMakeFiles/las2las.dir/flags.make
-
-apps/CMakeFiles/las2las.dir/las2las.cpp.o: apps/CMakeFiles/las2las.dir/flags.make
-apps/CMakeFiles/las2las.dir/las2las.cpp.o: apps/las2las.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object apps/CMakeFiles/las2las.dir/las2las.cpp.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las2las.dir/las2las.cpp.o -c /Users/hobu/foo/clean/apps/las2las.cpp
-
-apps/CMakeFiles/las2las.dir/las2las.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las2las.dir/las2las.cpp.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/apps/las2las.cpp > CMakeFiles/las2las.dir/las2las.cpp.i
-
-apps/CMakeFiles/las2las.dir/las2las.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las2las.dir/las2las.cpp.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/apps/las2las.cpp -o CMakeFiles/las2las.dir/las2las.cpp.s
-
-apps/CMakeFiles/las2las.dir/las2las.cpp.o.requires:
-.PHONY : apps/CMakeFiles/las2las.dir/las2las.cpp.o.requires
-
-apps/CMakeFiles/las2las.dir/las2las.cpp.o.provides: apps/CMakeFiles/las2las.dir/las2las.cpp.o.requires
-	$(MAKE) -f apps/CMakeFiles/las2las.dir/build.make apps/CMakeFiles/las2las.dir/las2las.cpp.o.provides.build
-.PHONY : apps/CMakeFiles/las2las.dir/las2las.cpp.o.provides
-
-apps/CMakeFiles/las2las.dir/las2las.cpp.o.provides.build: apps/CMakeFiles/las2las.dir/las2las.cpp.o
-
-apps/CMakeFiles/las2las.dir/laskernel.cpp.o: apps/CMakeFiles/las2las.dir/flags.make
-apps/CMakeFiles/las2las.dir/laskernel.cpp.o: apps/laskernel.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_2)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object apps/CMakeFiles/las2las.dir/laskernel.cpp.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las2las.dir/laskernel.cpp.o -c /Users/hobu/foo/clean/apps/laskernel.cpp
-
-apps/CMakeFiles/las2las.dir/laskernel.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las2las.dir/laskernel.cpp.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/apps/laskernel.cpp > CMakeFiles/las2las.dir/laskernel.cpp.i
-
-apps/CMakeFiles/las2las.dir/laskernel.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las2las.dir/laskernel.cpp.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/apps/laskernel.cpp -o CMakeFiles/las2las.dir/laskernel.cpp.s
-
-apps/CMakeFiles/las2las.dir/laskernel.cpp.o.requires:
-.PHONY : apps/CMakeFiles/las2las.dir/laskernel.cpp.o.requires
-
-apps/CMakeFiles/las2las.dir/laskernel.cpp.o.provides: apps/CMakeFiles/las2las.dir/laskernel.cpp.o.requires
-	$(MAKE) -f apps/CMakeFiles/las2las.dir/build.make apps/CMakeFiles/las2las.dir/laskernel.cpp.o.provides.build
-.PHONY : apps/CMakeFiles/las2las.dir/laskernel.cpp.o.provides
-
-apps/CMakeFiles/las2las.dir/laskernel.cpp.o.provides.build: apps/CMakeFiles/las2las.dir/laskernel.cpp.o
-
-# Object files for target las2las
-las2las_OBJECTS = \
-"CMakeFiles/las2las.dir/las2las.cpp.o" \
-"CMakeFiles/las2las.dir/laskernel.cpp.o"
-
-# External object files for target las2las
-las2las_EXTERNAL_OBJECTS =
-
-bin/Release/las2las: apps/CMakeFiles/las2las.dir/las2las.cpp.o
-bin/Release/las2las: apps/CMakeFiles/las2las.dir/laskernel.cpp.o
-bin/Release/las2las: bin/Release/liblas.2.2.0.dylib
-bin/Release/las2las: /usr/local/lib/libboost_program_options.a
-bin/Release/las2las: /usr/local/lib/libboost_thread.a
-bin/Release/las2las: apps/CMakeFiles/las2las.dir/build.make
-bin/Release/las2las: apps/CMakeFiles/las2las.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX executable ../bin/Release/las2las"
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/las2las.dir/link.txt --verbose=$(VERBOSE)
-
-# Rule to build all files generated by this target.
-apps/CMakeFiles/las2las.dir/build: bin/Release/las2las
-.PHONY : apps/CMakeFiles/las2las.dir/build
-
-apps/CMakeFiles/las2las.dir/requires: apps/CMakeFiles/las2las.dir/las2las.cpp.o.requires
-apps/CMakeFiles/las2las.dir/requires: apps/CMakeFiles/las2las.dir/laskernel.cpp.o.requires
-.PHONY : apps/CMakeFiles/las2las.dir/requires
-
-apps/CMakeFiles/las2las.dir/clean:
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -P CMakeFiles/las2las.dir/cmake_clean.cmake
-.PHONY : apps/CMakeFiles/las2las.dir/clean
-
-apps/CMakeFiles/las2las.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean/apps/CMakeFiles/las2las.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : apps/CMakeFiles/las2las.dir/depend
-
diff --git a/apps/CMakeFiles/las2las.dir/cmake_clean.cmake b/apps/CMakeFiles/las2las.dir/cmake_clean.cmake
deleted file mode 100644
index 0296c1b..0000000
--- a/apps/CMakeFiles/las2las.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/las2las.dir/las2las.cpp.o"
-  "CMakeFiles/las2las.dir/laskernel.cpp.o"
-  "../bin/Release/las2las.pdb"
-  "../bin/Release/las2las"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang CXX)
-  INCLUDE(CMakeFiles/las2las.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/apps/CMakeFiles/las2las.dir/depend.make b/apps/CMakeFiles/las2las.dir/depend.make
deleted file mode 100644
index 17ded78..0000000
--- a/apps/CMakeFiles/las2las.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for las2las.
-# This may be replaced when dependencies are built.
diff --git a/apps/CMakeFiles/las2las.dir/flags.make b/apps/CMakeFiles/las2las.dir/flags.make
deleted file mode 100644
index b605d92..0000000
--- a/apps/CMakeFiles/las2las.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile CXX with /usr/bin/c++
-CXX_FLAGS =  -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -I/Users/hobu/foo/clean/apps/. -I/Users/hobu/foo/clean/apps/../include -I/Users/hobu/foo/clean/apps/../include/liblas/capi -I/usr/local/include   
-
-CXX_DEFINES = 
-
diff --git a/apps/CMakeFiles/las2las.dir/link.txt b/apps/CMakeFiles/las2las.dir/link.txt
deleted file mode 100644
index 5ec8818..0000000
--- a/apps/CMakeFiles/las2las.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/c++    -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/las2las.dir/las2las.cpp.o CMakeFiles/las2las.dir/laskernel.cpp.o  -o ../bin/Release/las2las  -L/usr/local/lib ../bin/Release/liblas.2.2.0.dylib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a 
diff --git a/apps/CMakeFiles/las2las.dir/progress.make b/apps/CMakeFiles/las2las.dir/progress.make
deleted file mode 100644
index e1615c1..0000000
--- a/apps/CMakeFiles/las2las.dir/progress.make
+++ /dev/null
@@ -1,3 +0,0 @@
-CMAKE_PROGRESS_1 = 32
-CMAKE_PROGRESS_2 = 33
-
diff --git a/apps/CMakeFiles/las2txt-old.dir/DependInfo.cmake b/apps/CMakeFiles/las2txt-old.dir/DependInfo.cmake
deleted file mode 100644
index 04dd100..0000000
--- a/apps/CMakeFiles/las2txt-old.dir/DependInfo.cmake
+++ /dev/null
@@ -1,16 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "C"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_C
-  "/Users/hobu/foo/clean/apps/las2txt.c" "/Users/hobu/foo/clean/apps/CMakeFiles/las2txt-old.dir/las2txt.c.o"
-  "/Users/hobu/foo/clean/apps/lascommon.c" "/Users/hobu/foo/clean/apps/CMakeFiles/las2txt-old.dir/lascommon.c.o"
-  )
-SET(CMAKE_C_COMPILER_ID "GNU")
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las_c.dir/DependInfo.cmake"
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/apps/CMakeFiles/las2txt-old.dir/build.make b/apps/CMakeFiles/las2txt-old.dir/build.make
deleted file mode 100644
index 2708481..0000000
--- a/apps/CMakeFiles/las2txt-old.dir/build.make
+++ /dev/null
@@ -1,132 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include apps/CMakeFiles/las2txt-old.dir/depend.make
-
-# Include the progress variables for this target.
-include apps/CMakeFiles/las2txt-old.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include apps/CMakeFiles/las2txt-old.dir/flags.make
-
-apps/CMakeFiles/las2txt-old.dir/lascommon.c.o: apps/CMakeFiles/las2txt-old.dir/flags.make
-apps/CMakeFiles/las2txt-old.dir/lascommon.c.o: apps/lascommon.c
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object apps/CMakeFiles/las2txt-old.dir/lascommon.c.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/las2txt-old.dir/lascommon.c.o   -c /Users/hobu/foo/clean/apps/lascommon.c
-
-apps/CMakeFiles/las2txt-old.dir/lascommon.c.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/las2txt-old.dir/lascommon.c.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -E /Users/hobu/foo/clean/apps/lascommon.c > CMakeFiles/las2txt-old.dir/lascommon.c.i
-
-apps/CMakeFiles/las2txt-old.dir/lascommon.c.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/las2txt-old.dir/lascommon.c.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -S /Users/hobu/foo/clean/apps/lascommon.c -o CMakeFiles/las2txt-old.dir/lascommon.c.s
-
-apps/CMakeFiles/las2txt-old.dir/lascommon.c.o.requires:
-.PHONY : apps/CMakeFiles/las2txt-old.dir/lascommon.c.o.requires
-
-apps/CMakeFiles/las2txt-old.dir/lascommon.c.o.provides: apps/CMakeFiles/las2txt-old.dir/lascommon.c.o.requires
-	$(MAKE) -f apps/CMakeFiles/las2txt-old.dir/build.make apps/CMakeFiles/las2txt-old.dir/lascommon.c.o.provides.build
-.PHONY : apps/CMakeFiles/las2txt-old.dir/lascommon.c.o.provides
-
-apps/CMakeFiles/las2txt-old.dir/lascommon.c.o.provides.build: apps/CMakeFiles/las2txt-old.dir/lascommon.c.o
-
-apps/CMakeFiles/las2txt-old.dir/las2txt.c.o: apps/CMakeFiles/las2txt-old.dir/flags.make
-apps/CMakeFiles/las2txt-old.dir/las2txt.c.o: apps/las2txt.c
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_2)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object apps/CMakeFiles/las2txt-old.dir/las2txt.c.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/las2txt-old.dir/las2txt.c.o   -c /Users/hobu/foo/clean/apps/las2txt.c
-
-apps/CMakeFiles/las2txt-old.dir/las2txt.c.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/las2txt-old.dir/las2txt.c.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -E /Users/hobu/foo/clean/apps/las2txt.c > CMakeFiles/las2txt-old.dir/las2txt.c.i
-
-apps/CMakeFiles/las2txt-old.dir/las2txt.c.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/las2txt-old.dir/las2txt.c.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -S /Users/hobu/foo/clean/apps/las2txt.c -o CMakeFiles/las2txt-old.dir/las2txt.c.s
-
-apps/CMakeFiles/las2txt-old.dir/las2txt.c.o.requires:
-.PHONY : apps/CMakeFiles/las2txt-old.dir/las2txt.c.o.requires
-
-apps/CMakeFiles/las2txt-old.dir/las2txt.c.o.provides: apps/CMakeFiles/las2txt-old.dir/las2txt.c.o.requires
-	$(MAKE) -f apps/CMakeFiles/las2txt-old.dir/build.make apps/CMakeFiles/las2txt-old.dir/las2txt.c.o.provides.build
-.PHONY : apps/CMakeFiles/las2txt-old.dir/las2txt.c.o.provides
-
-apps/CMakeFiles/las2txt-old.dir/las2txt.c.o.provides.build: apps/CMakeFiles/las2txt-old.dir/las2txt.c.o
-
-# Object files for target las2txt-old
-las2txt__old_OBJECTS = \
-"CMakeFiles/las2txt-old.dir/lascommon.c.o" \
-"CMakeFiles/las2txt-old.dir/las2txt.c.o"
-
-# External object files for target las2txt-old
-las2txt__old_EXTERNAL_OBJECTS =
-
-bin/Release/las2txt-old: apps/CMakeFiles/las2txt-old.dir/lascommon.c.o
-bin/Release/las2txt-old: apps/CMakeFiles/las2txt-old.dir/las2txt.c.o
-bin/Release/las2txt-old: bin/Release/liblas_c.2.2.0.dylib
-bin/Release/las2txt-old: bin/Release/liblas.2.2.0.dylib
-bin/Release/las2txt-old: /usr/local/lib/libboost_program_options.a
-bin/Release/las2txt-old: /usr/local/lib/libboost_thread.a
-bin/Release/las2txt-old: apps/CMakeFiles/las2txt-old.dir/build.make
-bin/Release/las2txt-old: apps/CMakeFiles/las2txt-old.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking C executable ../bin/Release/las2txt-old"
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/las2txt-old.dir/link.txt --verbose=$(VERBOSE)
-
-# Rule to build all files generated by this target.
-apps/CMakeFiles/las2txt-old.dir/build: bin/Release/las2txt-old
-.PHONY : apps/CMakeFiles/las2txt-old.dir/build
-
-apps/CMakeFiles/las2txt-old.dir/requires: apps/CMakeFiles/las2txt-old.dir/lascommon.c.o.requires
-apps/CMakeFiles/las2txt-old.dir/requires: apps/CMakeFiles/las2txt-old.dir/las2txt.c.o.requires
-.PHONY : apps/CMakeFiles/las2txt-old.dir/requires
-
-apps/CMakeFiles/las2txt-old.dir/clean:
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -P CMakeFiles/las2txt-old.dir/cmake_clean.cmake
-.PHONY : apps/CMakeFiles/las2txt-old.dir/clean
-
-apps/CMakeFiles/las2txt-old.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean/apps/CMakeFiles/las2txt-old.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : apps/CMakeFiles/las2txt-old.dir/depend
-
diff --git a/apps/CMakeFiles/las2txt-old.dir/cmake_clean.cmake b/apps/CMakeFiles/las2txt-old.dir/cmake_clean.cmake
deleted file mode 100644
index 91e75ad..0000000
--- a/apps/CMakeFiles/las2txt-old.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/las2txt-old.dir/lascommon.c.o"
-  "CMakeFiles/las2txt-old.dir/las2txt.c.o"
-  "../bin/Release/las2txt-old.pdb"
-  "../bin/Release/las2txt-old"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang C)
-  INCLUDE(CMakeFiles/las2txt-old.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/apps/CMakeFiles/las2txt-old.dir/depend.make b/apps/CMakeFiles/las2txt-old.dir/depend.make
deleted file mode 100644
index a2a355f..0000000
--- a/apps/CMakeFiles/las2txt-old.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for las2txt-old.
-# This may be replaced when dependencies are built.
diff --git a/apps/CMakeFiles/las2txt-old.dir/flags.make b/apps/CMakeFiles/las2txt-old.dir/flags.make
deleted file mode 100644
index e0228eb..0000000
--- a/apps/CMakeFiles/las2txt-old.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile C with /usr/bin/gcc
-C_FLAGS = -O3 -DNDEBUG -I/Users/hobu/foo/clean/apps/. -I/Users/hobu/foo/clean/apps/../include -I/Users/hobu/foo/clean/apps/../include/liblas/capi -I/usr/local/include   
-
-C_DEFINES = 
-
diff --git a/apps/CMakeFiles/las2txt-old.dir/link.txt b/apps/CMakeFiles/las2txt-old.dir/link.txt
deleted file mode 100644
index e345df3..0000000
--- a/apps/CMakeFiles/las2txt-old.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/gcc  -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/las2txt-old.dir/lascommon.c.o CMakeFiles/las2txt-old.dir/las2txt.c.o  -o ../bin/Release/las2txt-old  -L/usr/local/lib ../bin/Release/liblas_c.2.2.0.dylib ../bin/Release/liblas.2.2.0.dylib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a 
diff --git a/apps/CMakeFiles/las2txt-old.dir/progress.make b/apps/CMakeFiles/las2txt-old.dir/progress.make
deleted file mode 100644
index ad2d357..0000000
--- a/apps/CMakeFiles/las2txt-old.dir/progress.make
+++ /dev/null
@@ -1,3 +0,0 @@
-CMAKE_PROGRESS_1 = 38
-CMAKE_PROGRESS_2 = 39
-
diff --git a/apps/CMakeFiles/las2txt.dir/DependInfo.cmake b/apps/CMakeFiles/las2txt.dir/DependInfo.cmake
deleted file mode 100644
index 6b9bc32..0000000
--- a/apps/CMakeFiles/las2txt.dir/DependInfo.cmake
+++ /dev/null
@@ -1,15 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "CXX"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_CXX
-  "/Users/hobu/foo/clean/apps/las2txt.cpp" "/Users/hobu/foo/clean/apps/CMakeFiles/las2txt.dir/las2txt.cpp.o"
-  "/Users/hobu/foo/clean/apps/laskernel.cpp" "/Users/hobu/foo/clean/apps/CMakeFiles/las2txt.dir/laskernel.cpp.o"
-  )
-SET(CMAKE_CXX_COMPILER_ID "GNU")
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/apps/CMakeFiles/las2txt.dir/build.make b/apps/CMakeFiles/las2txt.dir/build.make
deleted file mode 100644
index c671a4d..0000000
--- a/apps/CMakeFiles/las2txt.dir/build.make
+++ /dev/null
@@ -1,131 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include apps/CMakeFiles/las2txt.dir/depend.make
-
-# Include the progress variables for this target.
-include apps/CMakeFiles/las2txt.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include apps/CMakeFiles/las2txt.dir/flags.make
-
-apps/CMakeFiles/las2txt.dir/las2txt.cpp.o: apps/CMakeFiles/las2txt.dir/flags.make
-apps/CMakeFiles/las2txt.dir/las2txt.cpp.o: apps/las2txt.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object apps/CMakeFiles/las2txt.dir/las2txt.cpp.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las2txt.dir/las2txt.cpp.o -c /Users/hobu/foo/clean/apps/las2txt.cpp
-
-apps/CMakeFiles/las2txt.dir/las2txt.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las2txt.dir/las2txt.cpp.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/apps/las2txt.cpp > CMakeFiles/las2txt.dir/las2txt.cpp.i
-
-apps/CMakeFiles/las2txt.dir/las2txt.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las2txt.dir/las2txt.cpp.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/apps/las2txt.cpp -o CMakeFiles/las2txt.dir/las2txt.cpp.s
-
-apps/CMakeFiles/las2txt.dir/las2txt.cpp.o.requires:
-.PHONY : apps/CMakeFiles/las2txt.dir/las2txt.cpp.o.requires
-
-apps/CMakeFiles/las2txt.dir/las2txt.cpp.o.provides: apps/CMakeFiles/las2txt.dir/las2txt.cpp.o.requires
-	$(MAKE) -f apps/CMakeFiles/las2txt.dir/build.make apps/CMakeFiles/las2txt.dir/las2txt.cpp.o.provides.build
-.PHONY : apps/CMakeFiles/las2txt.dir/las2txt.cpp.o.provides
-
-apps/CMakeFiles/las2txt.dir/las2txt.cpp.o.provides.build: apps/CMakeFiles/las2txt.dir/las2txt.cpp.o
-
-apps/CMakeFiles/las2txt.dir/laskernel.cpp.o: apps/CMakeFiles/las2txt.dir/flags.make
-apps/CMakeFiles/las2txt.dir/laskernel.cpp.o: apps/laskernel.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_2)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object apps/CMakeFiles/las2txt.dir/laskernel.cpp.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las2txt.dir/laskernel.cpp.o -c /Users/hobu/foo/clean/apps/laskernel.cpp
-
-apps/CMakeFiles/las2txt.dir/laskernel.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las2txt.dir/laskernel.cpp.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/apps/laskernel.cpp > CMakeFiles/las2txt.dir/laskernel.cpp.i
-
-apps/CMakeFiles/las2txt.dir/laskernel.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las2txt.dir/laskernel.cpp.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/apps/laskernel.cpp -o CMakeFiles/las2txt.dir/laskernel.cpp.s
-
-apps/CMakeFiles/las2txt.dir/laskernel.cpp.o.requires:
-.PHONY : apps/CMakeFiles/las2txt.dir/laskernel.cpp.o.requires
-
-apps/CMakeFiles/las2txt.dir/laskernel.cpp.o.provides: apps/CMakeFiles/las2txt.dir/laskernel.cpp.o.requires
-	$(MAKE) -f apps/CMakeFiles/las2txt.dir/build.make apps/CMakeFiles/las2txt.dir/laskernel.cpp.o.provides.build
-.PHONY : apps/CMakeFiles/las2txt.dir/laskernel.cpp.o.provides
-
-apps/CMakeFiles/las2txt.dir/laskernel.cpp.o.provides.build: apps/CMakeFiles/las2txt.dir/laskernel.cpp.o
-
-# Object files for target las2txt
-las2txt_OBJECTS = \
-"CMakeFiles/las2txt.dir/las2txt.cpp.o" \
-"CMakeFiles/las2txt.dir/laskernel.cpp.o"
-
-# External object files for target las2txt
-las2txt_EXTERNAL_OBJECTS =
-
-bin/Release/las2txt: apps/CMakeFiles/las2txt.dir/las2txt.cpp.o
-bin/Release/las2txt: apps/CMakeFiles/las2txt.dir/laskernel.cpp.o
-bin/Release/las2txt: bin/Release/liblas.2.2.0.dylib
-bin/Release/las2txt: /usr/local/lib/libboost_program_options.a
-bin/Release/las2txt: /usr/local/lib/libboost_thread.a
-bin/Release/las2txt: apps/CMakeFiles/las2txt.dir/build.make
-bin/Release/las2txt: apps/CMakeFiles/las2txt.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX executable ../bin/Release/las2txt"
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/las2txt.dir/link.txt --verbose=$(VERBOSE)
-
-# Rule to build all files generated by this target.
-apps/CMakeFiles/las2txt.dir/build: bin/Release/las2txt
-.PHONY : apps/CMakeFiles/las2txt.dir/build
-
-apps/CMakeFiles/las2txt.dir/requires: apps/CMakeFiles/las2txt.dir/las2txt.cpp.o.requires
-apps/CMakeFiles/las2txt.dir/requires: apps/CMakeFiles/las2txt.dir/laskernel.cpp.o.requires
-.PHONY : apps/CMakeFiles/las2txt.dir/requires
-
-apps/CMakeFiles/las2txt.dir/clean:
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -P CMakeFiles/las2txt.dir/cmake_clean.cmake
-.PHONY : apps/CMakeFiles/las2txt.dir/clean
-
-apps/CMakeFiles/las2txt.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean/apps/CMakeFiles/las2txt.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : apps/CMakeFiles/las2txt.dir/depend
-
diff --git a/apps/CMakeFiles/las2txt.dir/cmake_clean.cmake b/apps/CMakeFiles/las2txt.dir/cmake_clean.cmake
deleted file mode 100644
index fd504eb..0000000
--- a/apps/CMakeFiles/las2txt.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/las2txt.dir/las2txt.cpp.o"
-  "CMakeFiles/las2txt.dir/laskernel.cpp.o"
-  "../bin/Release/las2txt.pdb"
-  "../bin/Release/las2txt"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang CXX)
-  INCLUDE(CMakeFiles/las2txt.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/apps/CMakeFiles/las2txt.dir/depend.make b/apps/CMakeFiles/las2txt.dir/depend.make
deleted file mode 100644
index c8b6e9d..0000000
--- a/apps/CMakeFiles/las2txt.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for las2txt.
-# This may be replaced when dependencies are built.
diff --git a/apps/CMakeFiles/las2txt.dir/flags.make b/apps/CMakeFiles/las2txt.dir/flags.make
deleted file mode 100644
index b605d92..0000000
--- a/apps/CMakeFiles/las2txt.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile CXX with /usr/bin/c++
-CXX_FLAGS =  -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -I/Users/hobu/foo/clean/apps/. -I/Users/hobu/foo/clean/apps/../include -I/Users/hobu/foo/clean/apps/../include/liblas/capi -I/usr/local/include   
-
-CXX_DEFINES = 
-
diff --git a/apps/CMakeFiles/las2txt.dir/link.txt b/apps/CMakeFiles/las2txt.dir/link.txt
deleted file mode 100644
index 6e5988d..0000000
--- a/apps/CMakeFiles/las2txt.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/c++    -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/las2txt.dir/las2txt.cpp.o CMakeFiles/las2txt.dir/laskernel.cpp.o  -o ../bin/Release/las2txt  -L/usr/local/lib ../bin/Release/liblas.2.2.0.dylib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a 
diff --git a/apps/CMakeFiles/las2txt.dir/progress.make b/apps/CMakeFiles/las2txt.dir/progress.make
deleted file mode 100644
index 2178e35..0000000
--- a/apps/CMakeFiles/las2txt.dir/progress.make
+++ /dev/null
@@ -1,3 +0,0 @@
-CMAKE_PROGRESS_1 = 36
-CMAKE_PROGRESS_2 = 37
-
diff --git a/apps/CMakeFiles/lasblock.dir/DependInfo.cmake b/apps/CMakeFiles/lasblock.dir/DependInfo.cmake
deleted file mode 100644
index af22359..0000000
--- a/apps/CMakeFiles/lasblock.dir/DependInfo.cmake
+++ /dev/null
@@ -1,15 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "CXX"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_CXX
-  "/Users/hobu/foo/clean/apps/lasblock.cpp" "/Users/hobu/foo/clean/apps/CMakeFiles/lasblock.dir/lasblock.cpp.o"
-  "/Users/hobu/foo/clean/apps/laskernel.cpp" "/Users/hobu/foo/clean/apps/CMakeFiles/lasblock.dir/laskernel.cpp.o"
-  )
-SET(CMAKE_CXX_COMPILER_ID "GNU")
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/apps/CMakeFiles/lasblock.dir/build.make b/apps/CMakeFiles/lasblock.dir/build.make
deleted file mode 100644
index b201305..0000000
--- a/apps/CMakeFiles/lasblock.dir/build.make
+++ /dev/null
@@ -1,131 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include apps/CMakeFiles/lasblock.dir/depend.make
-
-# Include the progress variables for this target.
-include apps/CMakeFiles/lasblock.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include apps/CMakeFiles/lasblock.dir/flags.make
-
-apps/CMakeFiles/lasblock.dir/lasblock.cpp.o: apps/CMakeFiles/lasblock.dir/flags.make
-apps/CMakeFiles/lasblock.dir/lasblock.cpp.o: apps/lasblock.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object apps/CMakeFiles/lasblock.dir/lasblock.cpp.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/lasblock.dir/lasblock.cpp.o -c /Users/hobu/foo/clean/apps/lasblock.cpp
-
-apps/CMakeFiles/lasblock.dir/lasblock.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/lasblock.dir/lasblock.cpp.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/apps/lasblock.cpp > CMakeFiles/lasblock.dir/lasblock.cpp.i
-
-apps/CMakeFiles/lasblock.dir/lasblock.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/lasblock.dir/lasblock.cpp.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/apps/lasblock.cpp -o CMakeFiles/lasblock.dir/lasblock.cpp.s
-
-apps/CMakeFiles/lasblock.dir/lasblock.cpp.o.requires:
-.PHONY : apps/CMakeFiles/lasblock.dir/lasblock.cpp.o.requires
-
-apps/CMakeFiles/lasblock.dir/lasblock.cpp.o.provides: apps/CMakeFiles/lasblock.dir/lasblock.cpp.o.requires
-	$(MAKE) -f apps/CMakeFiles/lasblock.dir/build.make apps/CMakeFiles/lasblock.dir/lasblock.cpp.o.provides.build
-.PHONY : apps/CMakeFiles/lasblock.dir/lasblock.cpp.o.provides
-
-apps/CMakeFiles/lasblock.dir/lasblock.cpp.o.provides.build: apps/CMakeFiles/lasblock.dir/lasblock.cpp.o
-
-apps/CMakeFiles/lasblock.dir/laskernel.cpp.o: apps/CMakeFiles/lasblock.dir/flags.make
-apps/CMakeFiles/lasblock.dir/laskernel.cpp.o: apps/laskernel.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_2)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object apps/CMakeFiles/lasblock.dir/laskernel.cpp.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/lasblock.dir/laskernel.cpp.o -c /Users/hobu/foo/clean/apps/laskernel.cpp
-
-apps/CMakeFiles/lasblock.dir/laskernel.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/lasblock.dir/laskernel.cpp.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/apps/laskernel.cpp > CMakeFiles/lasblock.dir/laskernel.cpp.i
-
-apps/CMakeFiles/lasblock.dir/laskernel.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/lasblock.dir/laskernel.cpp.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/apps/laskernel.cpp -o CMakeFiles/lasblock.dir/laskernel.cpp.s
-
-apps/CMakeFiles/lasblock.dir/laskernel.cpp.o.requires:
-.PHONY : apps/CMakeFiles/lasblock.dir/laskernel.cpp.o.requires
-
-apps/CMakeFiles/lasblock.dir/laskernel.cpp.o.provides: apps/CMakeFiles/lasblock.dir/laskernel.cpp.o.requires
-	$(MAKE) -f apps/CMakeFiles/lasblock.dir/build.make apps/CMakeFiles/lasblock.dir/laskernel.cpp.o.provides.build
-.PHONY : apps/CMakeFiles/lasblock.dir/laskernel.cpp.o.provides
-
-apps/CMakeFiles/lasblock.dir/laskernel.cpp.o.provides.build: apps/CMakeFiles/lasblock.dir/laskernel.cpp.o
-
-# Object files for target lasblock
-lasblock_OBJECTS = \
-"CMakeFiles/lasblock.dir/lasblock.cpp.o" \
-"CMakeFiles/lasblock.dir/laskernel.cpp.o"
-
-# External object files for target lasblock
-lasblock_EXTERNAL_OBJECTS =
-
-bin/Release/lasblock: apps/CMakeFiles/lasblock.dir/lasblock.cpp.o
-bin/Release/lasblock: apps/CMakeFiles/lasblock.dir/laskernel.cpp.o
-bin/Release/lasblock: bin/Release/liblas.2.2.0.dylib
-bin/Release/lasblock: /usr/local/lib/libboost_program_options.a
-bin/Release/lasblock: /usr/local/lib/libboost_thread.a
-bin/Release/lasblock: apps/CMakeFiles/lasblock.dir/build.make
-bin/Release/lasblock: apps/CMakeFiles/lasblock.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX executable ../bin/Release/lasblock"
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/lasblock.dir/link.txt --verbose=$(VERBOSE)
-
-# Rule to build all files generated by this target.
-apps/CMakeFiles/lasblock.dir/build: bin/Release/lasblock
-.PHONY : apps/CMakeFiles/lasblock.dir/build
-
-apps/CMakeFiles/lasblock.dir/requires: apps/CMakeFiles/lasblock.dir/lasblock.cpp.o.requires
-apps/CMakeFiles/lasblock.dir/requires: apps/CMakeFiles/lasblock.dir/laskernel.cpp.o.requires
-.PHONY : apps/CMakeFiles/lasblock.dir/requires
-
-apps/CMakeFiles/lasblock.dir/clean:
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -P CMakeFiles/lasblock.dir/cmake_clean.cmake
-.PHONY : apps/CMakeFiles/lasblock.dir/clean
-
-apps/CMakeFiles/lasblock.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean/apps/CMakeFiles/lasblock.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : apps/CMakeFiles/lasblock.dir/depend
-
diff --git a/apps/CMakeFiles/lasblock.dir/cmake_clean.cmake b/apps/CMakeFiles/lasblock.dir/cmake_clean.cmake
deleted file mode 100644
index 07bad7a..0000000
--- a/apps/CMakeFiles/lasblock.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/lasblock.dir/lasblock.cpp.o"
-  "CMakeFiles/lasblock.dir/laskernel.cpp.o"
-  "../bin/Release/lasblock.pdb"
-  "../bin/Release/lasblock"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang CXX)
-  INCLUDE(CMakeFiles/lasblock.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/apps/CMakeFiles/lasblock.dir/depend.make b/apps/CMakeFiles/lasblock.dir/depend.make
deleted file mode 100644
index 8736995..0000000
--- a/apps/CMakeFiles/lasblock.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for lasblock.
-# This may be replaced when dependencies are built.
diff --git a/apps/CMakeFiles/lasblock.dir/flags.make b/apps/CMakeFiles/lasblock.dir/flags.make
deleted file mode 100644
index b605d92..0000000
--- a/apps/CMakeFiles/lasblock.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile CXX with /usr/bin/c++
-CXX_FLAGS =  -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -I/Users/hobu/foo/clean/apps/. -I/Users/hobu/foo/clean/apps/../include -I/Users/hobu/foo/clean/apps/../include/liblas/capi -I/usr/local/include   
-
-CXX_DEFINES = 
-
diff --git a/apps/CMakeFiles/lasblock.dir/link.txt b/apps/CMakeFiles/lasblock.dir/link.txt
deleted file mode 100644
index 0cdcbb6..0000000
--- a/apps/CMakeFiles/lasblock.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/c++    -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/lasblock.dir/lasblock.cpp.o CMakeFiles/lasblock.dir/laskernel.cpp.o  -o ../bin/Release/lasblock  -L/usr/local/lib ../bin/Release/liblas.2.2.0.dylib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a 
diff --git a/apps/CMakeFiles/lasblock.dir/progress.make b/apps/CMakeFiles/lasblock.dir/progress.make
deleted file mode 100644
index 1f42eb5..0000000
--- a/apps/CMakeFiles/lasblock.dir/progress.make
+++ /dev/null
@@ -1,3 +0,0 @@
-CMAKE_PROGRESS_1 = 41
-CMAKE_PROGRESS_2 = 42
-
diff --git a/apps/CMakeFiles/lasindex_test.dir/DependInfo.cmake b/apps/CMakeFiles/lasindex_test.dir/DependInfo.cmake
deleted file mode 100644
index 725414a..0000000
--- a/apps/CMakeFiles/lasindex_test.dir/DependInfo.cmake
+++ /dev/null
@@ -1,14 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "CXX"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_CXX
-  "/Users/hobu/foo/clean/apps/lasindex_test.cpp" "/Users/hobu/foo/clean/apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o"
-  )
-SET(CMAKE_CXX_COMPILER_ID "GNU")
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/apps/CMakeFiles/lasindex_test.dir/build.make b/apps/CMakeFiles/lasindex_test.dir/build.make
deleted file mode 100644
index c9e76e0..0000000
--- a/apps/CMakeFiles/lasindex_test.dir/build.make
+++ /dev/null
@@ -1,105 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include apps/CMakeFiles/lasindex_test.dir/depend.make
-
-# Include the progress variables for this target.
-include apps/CMakeFiles/lasindex_test.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include apps/CMakeFiles/lasindex_test.dir/flags.make
-
-apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o: apps/CMakeFiles/lasindex_test.dir/flags.make
-apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o: apps/lasindex_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o -c /Users/hobu/foo/clean/apps/lasindex_test.cpp
-
-apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/lasindex_test.dir/lasindex_test.cpp.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/apps/lasindex_test.cpp > CMakeFiles/lasindex_test.dir/lasindex_test.cpp.i
-
-apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/lasindex_test.dir/lasindex_test.cpp.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/apps/lasindex_test.cpp -o CMakeFiles/lasindex_test.dir/lasindex_test.cpp.s
-
-apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o.requires:
-.PHONY : apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o.requires
-
-apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o.provides: apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o.requires
-	$(MAKE) -f apps/CMakeFiles/lasindex_test.dir/build.make apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o.provides.build
-.PHONY : apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o.provides
-
-apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o.provides.build: apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o
-
-# Object files for target lasindex_test
-lasindex_test_OBJECTS = \
-"CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o"
-
-# External object files for target lasindex_test
-lasindex_test_EXTERNAL_OBJECTS =
-
-bin/Release/lasindex_test: apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o
-bin/Release/lasindex_test: bin/Release/liblas.2.2.0.dylib
-bin/Release/lasindex_test: /usr/local/lib/libboost_program_options.a
-bin/Release/lasindex_test: /usr/local/lib/libboost_thread.a
-bin/Release/lasindex_test: apps/CMakeFiles/lasindex_test.dir/build.make
-bin/Release/lasindex_test: apps/CMakeFiles/lasindex_test.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX executable ../bin/Release/lasindex_test"
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/lasindex_test.dir/link.txt --verbose=$(VERBOSE)
-
-# Rule to build all files generated by this target.
-apps/CMakeFiles/lasindex_test.dir/build: bin/Release/lasindex_test
-.PHONY : apps/CMakeFiles/lasindex_test.dir/build
-
-apps/CMakeFiles/lasindex_test.dir/requires: apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o.requires
-.PHONY : apps/CMakeFiles/lasindex_test.dir/requires
-
-apps/CMakeFiles/lasindex_test.dir/clean:
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -P CMakeFiles/lasindex_test.dir/cmake_clean.cmake
-.PHONY : apps/CMakeFiles/lasindex_test.dir/clean
-
-apps/CMakeFiles/lasindex_test.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean/apps/CMakeFiles/lasindex_test.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : apps/CMakeFiles/lasindex_test.dir/depend
-
diff --git a/apps/CMakeFiles/lasindex_test.dir/cmake_clean.cmake b/apps/CMakeFiles/lasindex_test.dir/cmake_clean.cmake
deleted file mode 100644
index 4aff155..0000000
--- a/apps/CMakeFiles/lasindex_test.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,10 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o"
-  "../bin/Release/lasindex_test.pdb"
-  "../bin/Release/lasindex_test"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang CXX)
-  INCLUDE(CMakeFiles/lasindex_test.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/apps/CMakeFiles/lasindex_test.dir/depend.make b/apps/CMakeFiles/lasindex_test.dir/depend.make
deleted file mode 100644
index f1b5952..0000000
--- a/apps/CMakeFiles/lasindex_test.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for lasindex_test.
-# This may be replaced when dependencies are built.
diff --git a/apps/CMakeFiles/lasindex_test.dir/flags.make b/apps/CMakeFiles/lasindex_test.dir/flags.make
deleted file mode 100644
index b605d92..0000000
--- a/apps/CMakeFiles/lasindex_test.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile CXX with /usr/bin/c++
-CXX_FLAGS =  -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -I/Users/hobu/foo/clean/apps/. -I/Users/hobu/foo/clean/apps/../include -I/Users/hobu/foo/clean/apps/../include/liblas/capi -I/usr/local/include   
-
-CXX_DEFINES = 
-
diff --git a/apps/CMakeFiles/lasindex_test.dir/link.txt b/apps/CMakeFiles/lasindex_test.dir/link.txt
deleted file mode 100644
index bc40e8c..0000000
--- a/apps/CMakeFiles/lasindex_test.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/c++    -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o  -o ../bin/Release/lasindex_test  -L/usr/local/lib ../bin/Release/liblas.2.2.0.dylib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a 
diff --git a/apps/CMakeFiles/lasindex_test.dir/progress.make b/apps/CMakeFiles/lasindex_test.dir/progress.make
deleted file mode 100644
index 109d64a..0000000
--- a/apps/CMakeFiles/lasindex_test.dir/progress.make
+++ /dev/null
@@ -1,2 +0,0 @@
-CMAKE_PROGRESS_1 = 43
-
diff --git a/apps/CMakeFiles/lasinfo-old.dir/DependInfo.cmake b/apps/CMakeFiles/lasinfo-old.dir/DependInfo.cmake
deleted file mode 100644
index 7a1c90e..0000000
--- a/apps/CMakeFiles/lasinfo-old.dir/DependInfo.cmake
+++ /dev/null
@@ -1,16 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "C"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_C
-  "/Users/hobu/foo/clean/apps/lascommon.c" "/Users/hobu/foo/clean/apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o"
-  "/Users/hobu/foo/clean/apps/lasinfo-old.c" "/Users/hobu/foo/clean/apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o"
-  )
-SET(CMAKE_C_COMPILER_ID "GNU")
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las_c.dir/DependInfo.cmake"
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/apps/CMakeFiles/lasinfo-old.dir/build.make b/apps/CMakeFiles/lasinfo-old.dir/build.make
deleted file mode 100644
index f14b5b4..0000000
--- a/apps/CMakeFiles/lasinfo-old.dir/build.make
+++ /dev/null
@@ -1,132 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include apps/CMakeFiles/lasinfo-old.dir/depend.make
-
-# Include the progress variables for this target.
-include apps/CMakeFiles/lasinfo-old.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include apps/CMakeFiles/lasinfo-old.dir/flags.make
-
-apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o: apps/CMakeFiles/lasinfo-old.dir/flags.make
-apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o: apps/lascommon.c
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/lasinfo-old.dir/lascommon.c.o   -c /Users/hobu/foo/clean/apps/lascommon.c
-
-apps/CMakeFiles/lasinfo-old.dir/lascommon.c.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/lasinfo-old.dir/lascommon.c.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -E /Users/hobu/foo/clean/apps/lascommon.c > CMakeFiles/lasinfo-old.dir/lascommon.c.i
-
-apps/CMakeFiles/lasinfo-old.dir/lascommon.c.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/lasinfo-old.dir/lascommon.c.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -S /Users/hobu/foo/clean/apps/lascommon.c -o CMakeFiles/lasinfo-old.dir/lascommon.c.s
-
-apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o.requires:
-.PHONY : apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o.requires
-
-apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o.provides: apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o.requires
-	$(MAKE) -f apps/CMakeFiles/lasinfo-old.dir/build.make apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o.provides.build
-.PHONY : apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o.provides
-
-apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o.provides.build: apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o
-
-apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o: apps/CMakeFiles/lasinfo-old.dir/flags.make
-apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o: apps/lasinfo-old.c
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_2)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o   -c /Users/hobu/foo/clean/apps/lasinfo-old.c
-
-apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/lasinfo-old.dir/lasinfo-old.c.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -E /Users/hobu/foo/clean/apps/lasinfo-old.c > CMakeFiles/lasinfo-old.dir/lasinfo-old.c.i
-
-apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/lasinfo-old.dir/lasinfo-old.c.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -S /Users/hobu/foo/clean/apps/lasinfo-old.c -o CMakeFiles/lasinfo-old.dir/lasinfo-old.c.s
-
-apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o.requires:
-.PHONY : apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o.requires
-
-apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o.provides: apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o.requires
-	$(MAKE) -f apps/CMakeFiles/lasinfo-old.dir/build.make apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o.provides.build
-.PHONY : apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o.provides
-
-apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o.provides.build: apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o
-
-# Object files for target lasinfo-old
-lasinfo__old_OBJECTS = \
-"CMakeFiles/lasinfo-old.dir/lascommon.c.o" \
-"CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o"
-
-# External object files for target lasinfo-old
-lasinfo__old_EXTERNAL_OBJECTS =
-
-bin/Release/lasinfo-old: apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o
-bin/Release/lasinfo-old: apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o
-bin/Release/lasinfo-old: bin/Release/liblas_c.2.2.0.dylib
-bin/Release/lasinfo-old: bin/Release/liblas.2.2.0.dylib
-bin/Release/lasinfo-old: /usr/local/lib/libboost_program_options.a
-bin/Release/lasinfo-old: /usr/local/lib/libboost_thread.a
-bin/Release/lasinfo-old: apps/CMakeFiles/lasinfo-old.dir/build.make
-bin/Release/lasinfo-old: apps/CMakeFiles/lasinfo-old.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking C executable ../bin/Release/lasinfo-old"
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/lasinfo-old.dir/link.txt --verbose=$(VERBOSE)
-
-# Rule to build all files generated by this target.
-apps/CMakeFiles/lasinfo-old.dir/build: bin/Release/lasinfo-old
-.PHONY : apps/CMakeFiles/lasinfo-old.dir/build
-
-apps/CMakeFiles/lasinfo-old.dir/requires: apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o.requires
-apps/CMakeFiles/lasinfo-old.dir/requires: apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o.requires
-.PHONY : apps/CMakeFiles/lasinfo-old.dir/requires
-
-apps/CMakeFiles/lasinfo-old.dir/clean:
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -P CMakeFiles/lasinfo-old.dir/cmake_clean.cmake
-.PHONY : apps/CMakeFiles/lasinfo-old.dir/clean
-
-apps/CMakeFiles/lasinfo-old.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean/apps/CMakeFiles/lasinfo-old.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : apps/CMakeFiles/lasinfo-old.dir/depend
-
diff --git a/apps/CMakeFiles/lasinfo-old.dir/cmake_clean.cmake b/apps/CMakeFiles/lasinfo-old.dir/cmake_clean.cmake
deleted file mode 100644
index 385ef72..0000000
--- a/apps/CMakeFiles/lasinfo-old.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/lasinfo-old.dir/lascommon.c.o"
-  "CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o"
-  "../bin/Release/lasinfo-old.pdb"
-  "../bin/Release/lasinfo-old"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang C)
-  INCLUDE(CMakeFiles/lasinfo-old.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/apps/CMakeFiles/lasinfo-old.dir/depend.make b/apps/CMakeFiles/lasinfo-old.dir/depend.make
deleted file mode 100644
index 3f79469..0000000
--- a/apps/CMakeFiles/lasinfo-old.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for lasinfo-old.
-# This may be replaced when dependencies are built.
diff --git a/apps/CMakeFiles/lasinfo-old.dir/flags.make b/apps/CMakeFiles/lasinfo-old.dir/flags.make
deleted file mode 100644
index e0228eb..0000000
--- a/apps/CMakeFiles/lasinfo-old.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile C with /usr/bin/gcc
-C_FLAGS = -O3 -DNDEBUG -I/Users/hobu/foo/clean/apps/. -I/Users/hobu/foo/clean/apps/../include -I/Users/hobu/foo/clean/apps/../include/liblas/capi -I/usr/local/include   
-
-C_DEFINES = 
-
diff --git a/apps/CMakeFiles/lasinfo-old.dir/link.txt b/apps/CMakeFiles/lasinfo-old.dir/link.txt
deleted file mode 100644
index 065c42a..0000000
--- a/apps/CMakeFiles/lasinfo-old.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/gcc  -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/lasinfo-old.dir/lascommon.c.o CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o  -o ../bin/Release/lasinfo-old  -L/usr/local/lib ../bin/Release/liblas_c.2.2.0.dylib ../bin/Release/liblas.2.2.0.dylib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a 
diff --git a/apps/CMakeFiles/lasinfo-old.dir/progress.make b/apps/CMakeFiles/lasinfo-old.dir/progress.make
deleted file mode 100644
index 80ac6c1..0000000
--- a/apps/CMakeFiles/lasinfo-old.dir/progress.make
+++ /dev/null
@@ -1,3 +0,0 @@
-CMAKE_PROGRESS_1 = 46
-CMAKE_PROGRESS_2 = 47
-
diff --git a/apps/CMakeFiles/lasinfo.dir/DependInfo.cmake b/apps/CMakeFiles/lasinfo.dir/DependInfo.cmake
deleted file mode 100644
index 085f468..0000000
--- a/apps/CMakeFiles/lasinfo.dir/DependInfo.cmake
+++ /dev/null
@@ -1,15 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "CXX"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_CXX
-  "/Users/hobu/foo/clean/apps/lasinfo.cpp" "/Users/hobu/foo/clean/apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o"
-  "/Users/hobu/foo/clean/apps/laskernel.cpp" "/Users/hobu/foo/clean/apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o"
-  )
-SET(CMAKE_CXX_COMPILER_ID "GNU")
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/apps/CMakeFiles/lasinfo.dir/build.make b/apps/CMakeFiles/lasinfo.dir/build.make
deleted file mode 100644
index a4d094a..0000000
--- a/apps/CMakeFiles/lasinfo.dir/build.make
+++ /dev/null
@@ -1,131 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include apps/CMakeFiles/lasinfo.dir/depend.make
-
-# Include the progress variables for this target.
-include apps/CMakeFiles/lasinfo.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include apps/CMakeFiles/lasinfo.dir/flags.make
-
-apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o: apps/CMakeFiles/lasinfo.dir/flags.make
-apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o: apps/lasinfo.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/lasinfo.dir/lasinfo.cpp.o -c /Users/hobu/foo/clean/apps/lasinfo.cpp
-
-apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/lasinfo.dir/lasinfo.cpp.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/apps/lasinfo.cpp > CMakeFiles/lasinfo.dir/lasinfo.cpp.i
-
-apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/lasinfo.dir/lasinfo.cpp.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/apps/lasinfo.cpp -o CMakeFiles/lasinfo.dir/lasinfo.cpp.s
-
-apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o.requires:
-.PHONY : apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o.requires
-
-apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o.provides: apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o.requires
-	$(MAKE) -f apps/CMakeFiles/lasinfo.dir/build.make apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o.provides.build
-.PHONY : apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o.provides
-
-apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o.provides.build: apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o
-
-apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o: apps/CMakeFiles/lasinfo.dir/flags.make
-apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o: apps/laskernel.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_2)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/lasinfo.dir/laskernel.cpp.o -c /Users/hobu/foo/clean/apps/laskernel.cpp
-
-apps/CMakeFiles/lasinfo.dir/laskernel.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/lasinfo.dir/laskernel.cpp.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/apps/laskernel.cpp > CMakeFiles/lasinfo.dir/laskernel.cpp.i
-
-apps/CMakeFiles/lasinfo.dir/laskernel.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/lasinfo.dir/laskernel.cpp.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/apps/laskernel.cpp -o CMakeFiles/lasinfo.dir/laskernel.cpp.s
-
-apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o.requires:
-.PHONY : apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o.requires
-
-apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o.provides: apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o.requires
-	$(MAKE) -f apps/CMakeFiles/lasinfo.dir/build.make apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o.provides.build
-.PHONY : apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o.provides
-
-apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o.provides.build: apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o
-
-# Object files for target lasinfo
-lasinfo_OBJECTS = \
-"CMakeFiles/lasinfo.dir/lasinfo.cpp.o" \
-"CMakeFiles/lasinfo.dir/laskernel.cpp.o"
-
-# External object files for target lasinfo
-lasinfo_EXTERNAL_OBJECTS =
-
-bin/Release/lasinfo: apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o
-bin/Release/lasinfo: apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o
-bin/Release/lasinfo: bin/Release/liblas.2.2.0.dylib
-bin/Release/lasinfo: /usr/local/lib/libboost_program_options.a
-bin/Release/lasinfo: /usr/local/lib/libboost_thread.a
-bin/Release/lasinfo: apps/CMakeFiles/lasinfo.dir/build.make
-bin/Release/lasinfo: apps/CMakeFiles/lasinfo.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX executable ../bin/Release/lasinfo"
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/lasinfo.dir/link.txt --verbose=$(VERBOSE)
-
-# Rule to build all files generated by this target.
-apps/CMakeFiles/lasinfo.dir/build: bin/Release/lasinfo
-.PHONY : apps/CMakeFiles/lasinfo.dir/build
-
-apps/CMakeFiles/lasinfo.dir/requires: apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o.requires
-apps/CMakeFiles/lasinfo.dir/requires: apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o.requires
-.PHONY : apps/CMakeFiles/lasinfo.dir/requires
-
-apps/CMakeFiles/lasinfo.dir/clean:
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -P CMakeFiles/lasinfo.dir/cmake_clean.cmake
-.PHONY : apps/CMakeFiles/lasinfo.dir/clean
-
-apps/CMakeFiles/lasinfo.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean/apps/CMakeFiles/lasinfo.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : apps/CMakeFiles/lasinfo.dir/depend
-
diff --git a/apps/CMakeFiles/lasinfo.dir/cmake_clean.cmake b/apps/CMakeFiles/lasinfo.dir/cmake_clean.cmake
deleted file mode 100644
index e362780..0000000
--- a/apps/CMakeFiles/lasinfo.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/lasinfo.dir/lasinfo.cpp.o"
-  "CMakeFiles/lasinfo.dir/laskernel.cpp.o"
-  "../bin/Release/lasinfo.pdb"
-  "../bin/Release/lasinfo"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang CXX)
-  INCLUDE(CMakeFiles/lasinfo.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/apps/CMakeFiles/lasinfo.dir/depend.make b/apps/CMakeFiles/lasinfo.dir/depend.make
deleted file mode 100644
index 9c94f31..0000000
--- a/apps/CMakeFiles/lasinfo.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for lasinfo.
-# This may be replaced when dependencies are built.
diff --git a/apps/CMakeFiles/lasinfo.dir/flags.make b/apps/CMakeFiles/lasinfo.dir/flags.make
deleted file mode 100644
index b605d92..0000000
--- a/apps/CMakeFiles/lasinfo.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile CXX with /usr/bin/c++
-CXX_FLAGS =  -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -I/Users/hobu/foo/clean/apps/. -I/Users/hobu/foo/clean/apps/../include -I/Users/hobu/foo/clean/apps/../include/liblas/capi -I/usr/local/include   
-
-CXX_DEFINES = 
-
diff --git a/apps/CMakeFiles/lasinfo.dir/link.txt b/apps/CMakeFiles/lasinfo.dir/link.txt
deleted file mode 100644
index 359d8b2..0000000
--- a/apps/CMakeFiles/lasinfo.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/c++    -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/lasinfo.dir/lasinfo.cpp.o CMakeFiles/lasinfo.dir/laskernel.cpp.o  -o ../bin/Release/lasinfo  -L/usr/local/lib ../bin/Release/liblas.2.2.0.dylib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a 
diff --git a/apps/CMakeFiles/lasinfo.dir/progress.make b/apps/CMakeFiles/lasinfo.dir/progress.make
deleted file mode 100644
index c51eef3..0000000
--- a/apps/CMakeFiles/lasinfo.dir/progress.make
+++ /dev/null
@@ -1,3 +0,0 @@
-CMAKE_PROGRESS_1 = 44
-CMAKE_PROGRESS_2 = 45
-
diff --git a/apps/CMakeFiles/lasmerge.dir/DependInfo.cmake b/apps/CMakeFiles/lasmerge.dir/DependInfo.cmake
deleted file mode 100644
index 9e16a5b..0000000
--- a/apps/CMakeFiles/lasmerge.dir/DependInfo.cmake
+++ /dev/null
@@ -1,16 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "C"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_C
-  "/Users/hobu/foo/clean/apps/lascommon.c" "/Users/hobu/foo/clean/apps/CMakeFiles/lasmerge.dir/lascommon.c.o"
-  "/Users/hobu/foo/clean/apps/lasmerge.c" "/Users/hobu/foo/clean/apps/CMakeFiles/lasmerge.dir/lasmerge.c.o"
-  )
-SET(CMAKE_C_COMPILER_ID "GNU")
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las_c.dir/DependInfo.cmake"
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/apps/CMakeFiles/lasmerge.dir/build.make b/apps/CMakeFiles/lasmerge.dir/build.make
deleted file mode 100644
index e56ece5..0000000
--- a/apps/CMakeFiles/lasmerge.dir/build.make
+++ /dev/null
@@ -1,132 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include apps/CMakeFiles/lasmerge.dir/depend.make
-
-# Include the progress variables for this target.
-include apps/CMakeFiles/lasmerge.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include apps/CMakeFiles/lasmerge.dir/flags.make
-
-apps/CMakeFiles/lasmerge.dir/lascommon.c.o: apps/CMakeFiles/lasmerge.dir/flags.make
-apps/CMakeFiles/lasmerge.dir/lascommon.c.o: apps/lascommon.c
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object apps/CMakeFiles/lasmerge.dir/lascommon.c.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/lasmerge.dir/lascommon.c.o   -c /Users/hobu/foo/clean/apps/lascommon.c
-
-apps/CMakeFiles/lasmerge.dir/lascommon.c.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/lasmerge.dir/lascommon.c.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -E /Users/hobu/foo/clean/apps/lascommon.c > CMakeFiles/lasmerge.dir/lascommon.c.i
-
-apps/CMakeFiles/lasmerge.dir/lascommon.c.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/lasmerge.dir/lascommon.c.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -S /Users/hobu/foo/clean/apps/lascommon.c -o CMakeFiles/lasmerge.dir/lascommon.c.s
-
-apps/CMakeFiles/lasmerge.dir/lascommon.c.o.requires:
-.PHONY : apps/CMakeFiles/lasmerge.dir/lascommon.c.o.requires
-
-apps/CMakeFiles/lasmerge.dir/lascommon.c.o.provides: apps/CMakeFiles/lasmerge.dir/lascommon.c.o.requires
-	$(MAKE) -f apps/CMakeFiles/lasmerge.dir/build.make apps/CMakeFiles/lasmerge.dir/lascommon.c.o.provides.build
-.PHONY : apps/CMakeFiles/lasmerge.dir/lascommon.c.o.provides
-
-apps/CMakeFiles/lasmerge.dir/lascommon.c.o.provides.build: apps/CMakeFiles/lasmerge.dir/lascommon.c.o
-
-apps/CMakeFiles/lasmerge.dir/lasmerge.c.o: apps/CMakeFiles/lasmerge.dir/flags.make
-apps/CMakeFiles/lasmerge.dir/lasmerge.c.o: apps/lasmerge.c
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_2)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object apps/CMakeFiles/lasmerge.dir/lasmerge.c.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/lasmerge.dir/lasmerge.c.o   -c /Users/hobu/foo/clean/apps/lasmerge.c
-
-apps/CMakeFiles/lasmerge.dir/lasmerge.c.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/lasmerge.dir/lasmerge.c.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -E /Users/hobu/foo/clean/apps/lasmerge.c > CMakeFiles/lasmerge.dir/lasmerge.c.i
-
-apps/CMakeFiles/lasmerge.dir/lasmerge.c.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/lasmerge.dir/lasmerge.c.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -S /Users/hobu/foo/clean/apps/lasmerge.c -o CMakeFiles/lasmerge.dir/lasmerge.c.s
-
-apps/CMakeFiles/lasmerge.dir/lasmerge.c.o.requires:
-.PHONY : apps/CMakeFiles/lasmerge.dir/lasmerge.c.o.requires
-
-apps/CMakeFiles/lasmerge.dir/lasmerge.c.o.provides: apps/CMakeFiles/lasmerge.dir/lasmerge.c.o.requires
-	$(MAKE) -f apps/CMakeFiles/lasmerge.dir/build.make apps/CMakeFiles/lasmerge.dir/lasmerge.c.o.provides.build
-.PHONY : apps/CMakeFiles/lasmerge.dir/lasmerge.c.o.provides
-
-apps/CMakeFiles/lasmerge.dir/lasmerge.c.o.provides.build: apps/CMakeFiles/lasmerge.dir/lasmerge.c.o
-
-# Object files for target lasmerge
-lasmerge_OBJECTS = \
-"CMakeFiles/lasmerge.dir/lascommon.c.o" \
-"CMakeFiles/lasmerge.dir/lasmerge.c.o"
-
-# External object files for target lasmerge
-lasmerge_EXTERNAL_OBJECTS =
-
-bin/Release/lasmerge: apps/CMakeFiles/lasmerge.dir/lascommon.c.o
-bin/Release/lasmerge: apps/CMakeFiles/lasmerge.dir/lasmerge.c.o
-bin/Release/lasmerge: bin/Release/liblas_c.2.2.0.dylib
-bin/Release/lasmerge: bin/Release/liblas.2.2.0.dylib
-bin/Release/lasmerge: /usr/local/lib/libboost_program_options.a
-bin/Release/lasmerge: /usr/local/lib/libboost_thread.a
-bin/Release/lasmerge: apps/CMakeFiles/lasmerge.dir/build.make
-bin/Release/lasmerge: apps/CMakeFiles/lasmerge.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking C executable ../bin/Release/lasmerge"
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/lasmerge.dir/link.txt --verbose=$(VERBOSE)
-
-# Rule to build all files generated by this target.
-apps/CMakeFiles/lasmerge.dir/build: bin/Release/lasmerge
-.PHONY : apps/CMakeFiles/lasmerge.dir/build
-
-apps/CMakeFiles/lasmerge.dir/requires: apps/CMakeFiles/lasmerge.dir/lascommon.c.o.requires
-apps/CMakeFiles/lasmerge.dir/requires: apps/CMakeFiles/lasmerge.dir/lasmerge.c.o.requires
-.PHONY : apps/CMakeFiles/lasmerge.dir/requires
-
-apps/CMakeFiles/lasmerge.dir/clean:
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -P CMakeFiles/lasmerge.dir/cmake_clean.cmake
-.PHONY : apps/CMakeFiles/lasmerge.dir/clean
-
-apps/CMakeFiles/lasmerge.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean/apps/CMakeFiles/lasmerge.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : apps/CMakeFiles/lasmerge.dir/depend
-
diff --git a/apps/CMakeFiles/lasmerge.dir/cmake_clean.cmake b/apps/CMakeFiles/lasmerge.dir/cmake_clean.cmake
deleted file mode 100644
index 1ec6086..0000000
--- a/apps/CMakeFiles/lasmerge.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/lasmerge.dir/lascommon.c.o"
-  "CMakeFiles/lasmerge.dir/lasmerge.c.o"
-  "../bin/Release/lasmerge.pdb"
-  "../bin/Release/lasmerge"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang C)
-  INCLUDE(CMakeFiles/lasmerge.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/apps/CMakeFiles/lasmerge.dir/depend.make b/apps/CMakeFiles/lasmerge.dir/depend.make
deleted file mode 100644
index 8306cfe..0000000
--- a/apps/CMakeFiles/lasmerge.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for lasmerge.
-# This may be replaced when dependencies are built.
diff --git a/apps/CMakeFiles/lasmerge.dir/flags.make b/apps/CMakeFiles/lasmerge.dir/flags.make
deleted file mode 100644
index e0228eb..0000000
--- a/apps/CMakeFiles/lasmerge.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile C with /usr/bin/gcc
-C_FLAGS = -O3 -DNDEBUG -I/Users/hobu/foo/clean/apps/. -I/Users/hobu/foo/clean/apps/../include -I/Users/hobu/foo/clean/apps/../include/liblas/capi -I/usr/local/include   
-
-C_DEFINES = 
-
diff --git a/apps/CMakeFiles/lasmerge.dir/link.txt b/apps/CMakeFiles/lasmerge.dir/link.txt
deleted file mode 100644
index 4e75671..0000000
--- a/apps/CMakeFiles/lasmerge.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/gcc  -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/lasmerge.dir/lascommon.c.o CMakeFiles/lasmerge.dir/lasmerge.c.o  -o ../bin/Release/lasmerge  -L/usr/local/lib ../bin/Release/liblas_c.2.2.0.dylib ../bin/Release/liblas.2.2.0.dylib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a 
diff --git a/apps/CMakeFiles/lasmerge.dir/progress.make b/apps/CMakeFiles/lasmerge.dir/progress.make
deleted file mode 100644
index 961e1ca..0000000
--- a/apps/CMakeFiles/lasmerge.dir/progress.make
+++ /dev/null
@@ -1,3 +0,0 @@
-CMAKE_PROGRESS_1 = 48
-CMAKE_PROGRESS_2 = 49
-
diff --git a/apps/CMakeFiles/progress.marks b/apps/CMakeFiles/progress.marks
deleted file mode 100644
index 59343b0..0000000
--- a/apps/CMakeFiles/progress.marks
+++ /dev/null
@@ -1 +0,0 @@
-53
diff --git a/apps/CMakeFiles/ts2las.dir/DependInfo.cmake b/apps/CMakeFiles/ts2las.dir/DependInfo.cmake
deleted file mode 100644
index f9dc8ab..0000000
--- a/apps/CMakeFiles/ts2las.dir/DependInfo.cmake
+++ /dev/null
@@ -1,15 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "CXX"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_CXX
-  "/Users/hobu/foo/clean/apps/laskernel.cpp" "/Users/hobu/foo/clean/apps/CMakeFiles/ts2las.dir/laskernel.cpp.o"
-  "/Users/hobu/foo/clean/apps/ts2las.cpp" "/Users/hobu/foo/clean/apps/CMakeFiles/ts2las.dir/ts2las.cpp.o"
-  )
-SET(CMAKE_CXX_COMPILER_ID "GNU")
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/apps/CMakeFiles/ts2las.dir/build.make b/apps/CMakeFiles/ts2las.dir/build.make
deleted file mode 100644
index 0874ba5..0000000
--- a/apps/CMakeFiles/ts2las.dir/build.make
+++ /dev/null
@@ -1,131 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include apps/CMakeFiles/ts2las.dir/depend.make
-
-# Include the progress variables for this target.
-include apps/CMakeFiles/ts2las.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include apps/CMakeFiles/ts2las.dir/flags.make
-
-apps/CMakeFiles/ts2las.dir/ts2las.cpp.o: apps/CMakeFiles/ts2las.dir/flags.make
-apps/CMakeFiles/ts2las.dir/ts2las.cpp.o: apps/ts2las.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object apps/CMakeFiles/ts2las.dir/ts2las.cpp.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/ts2las.dir/ts2las.cpp.o -c /Users/hobu/foo/clean/apps/ts2las.cpp
-
-apps/CMakeFiles/ts2las.dir/ts2las.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/ts2las.dir/ts2las.cpp.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/apps/ts2las.cpp > CMakeFiles/ts2las.dir/ts2las.cpp.i
-
-apps/CMakeFiles/ts2las.dir/ts2las.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/ts2las.dir/ts2las.cpp.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/apps/ts2las.cpp -o CMakeFiles/ts2las.dir/ts2las.cpp.s
-
-apps/CMakeFiles/ts2las.dir/ts2las.cpp.o.requires:
-.PHONY : apps/CMakeFiles/ts2las.dir/ts2las.cpp.o.requires
-
-apps/CMakeFiles/ts2las.dir/ts2las.cpp.o.provides: apps/CMakeFiles/ts2las.dir/ts2las.cpp.o.requires
-	$(MAKE) -f apps/CMakeFiles/ts2las.dir/build.make apps/CMakeFiles/ts2las.dir/ts2las.cpp.o.provides.build
-.PHONY : apps/CMakeFiles/ts2las.dir/ts2las.cpp.o.provides
-
-apps/CMakeFiles/ts2las.dir/ts2las.cpp.o.provides.build: apps/CMakeFiles/ts2las.dir/ts2las.cpp.o
-
-apps/CMakeFiles/ts2las.dir/laskernel.cpp.o: apps/CMakeFiles/ts2las.dir/flags.make
-apps/CMakeFiles/ts2las.dir/laskernel.cpp.o: apps/laskernel.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_2)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object apps/CMakeFiles/ts2las.dir/laskernel.cpp.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/ts2las.dir/laskernel.cpp.o -c /Users/hobu/foo/clean/apps/laskernel.cpp
-
-apps/CMakeFiles/ts2las.dir/laskernel.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/ts2las.dir/laskernel.cpp.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/apps/laskernel.cpp > CMakeFiles/ts2las.dir/laskernel.cpp.i
-
-apps/CMakeFiles/ts2las.dir/laskernel.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/ts2las.dir/laskernel.cpp.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/apps/laskernel.cpp -o CMakeFiles/ts2las.dir/laskernel.cpp.s
-
-apps/CMakeFiles/ts2las.dir/laskernel.cpp.o.requires:
-.PHONY : apps/CMakeFiles/ts2las.dir/laskernel.cpp.o.requires
-
-apps/CMakeFiles/ts2las.dir/laskernel.cpp.o.provides: apps/CMakeFiles/ts2las.dir/laskernel.cpp.o.requires
-	$(MAKE) -f apps/CMakeFiles/ts2las.dir/build.make apps/CMakeFiles/ts2las.dir/laskernel.cpp.o.provides.build
-.PHONY : apps/CMakeFiles/ts2las.dir/laskernel.cpp.o.provides
-
-apps/CMakeFiles/ts2las.dir/laskernel.cpp.o.provides.build: apps/CMakeFiles/ts2las.dir/laskernel.cpp.o
-
-# Object files for target ts2las
-ts2las_OBJECTS = \
-"CMakeFiles/ts2las.dir/ts2las.cpp.o" \
-"CMakeFiles/ts2las.dir/laskernel.cpp.o"
-
-# External object files for target ts2las
-ts2las_EXTERNAL_OBJECTS =
-
-bin/Release/ts2las: apps/CMakeFiles/ts2las.dir/ts2las.cpp.o
-bin/Release/ts2las: apps/CMakeFiles/ts2las.dir/laskernel.cpp.o
-bin/Release/ts2las: bin/Release/liblas.2.2.0.dylib
-bin/Release/ts2las: /usr/local/lib/libboost_program_options.a
-bin/Release/ts2las: /usr/local/lib/libboost_thread.a
-bin/Release/ts2las: apps/CMakeFiles/ts2las.dir/build.make
-bin/Release/ts2las: apps/CMakeFiles/ts2las.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX executable ../bin/Release/ts2las"
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/ts2las.dir/link.txt --verbose=$(VERBOSE)
-
-# Rule to build all files generated by this target.
-apps/CMakeFiles/ts2las.dir/build: bin/Release/ts2las
-.PHONY : apps/CMakeFiles/ts2las.dir/build
-
-apps/CMakeFiles/ts2las.dir/requires: apps/CMakeFiles/ts2las.dir/ts2las.cpp.o.requires
-apps/CMakeFiles/ts2las.dir/requires: apps/CMakeFiles/ts2las.dir/laskernel.cpp.o.requires
-.PHONY : apps/CMakeFiles/ts2las.dir/requires
-
-apps/CMakeFiles/ts2las.dir/clean:
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -P CMakeFiles/ts2las.dir/cmake_clean.cmake
-.PHONY : apps/CMakeFiles/ts2las.dir/clean
-
-apps/CMakeFiles/ts2las.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean/apps/CMakeFiles/ts2las.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : apps/CMakeFiles/ts2las.dir/depend
-
diff --git a/apps/CMakeFiles/ts2las.dir/cmake_clean.cmake b/apps/CMakeFiles/ts2las.dir/cmake_clean.cmake
deleted file mode 100644
index 786b603..0000000
--- a/apps/CMakeFiles/ts2las.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/ts2las.dir/ts2las.cpp.o"
-  "CMakeFiles/ts2las.dir/laskernel.cpp.o"
-  "../bin/Release/ts2las.pdb"
-  "../bin/Release/ts2las"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang CXX)
-  INCLUDE(CMakeFiles/ts2las.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/apps/CMakeFiles/ts2las.dir/depend.make b/apps/CMakeFiles/ts2las.dir/depend.make
deleted file mode 100644
index 921ff97..0000000
--- a/apps/CMakeFiles/ts2las.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for ts2las.
-# This may be replaced when dependencies are built.
diff --git a/apps/CMakeFiles/ts2las.dir/flags.make b/apps/CMakeFiles/ts2las.dir/flags.make
deleted file mode 100644
index b605d92..0000000
--- a/apps/CMakeFiles/ts2las.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile CXX with /usr/bin/c++
-CXX_FLAGS =  -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -I/Users/hobu/foo/clean/apps/. -I/Users/hobu/foo/clean/apps/../include -I/Users/hobu/foo/clean/apps/../include/liblas/capi -I/usr/local/include   
-
-CXX_DEFINES = 
-
diff --git a/apps/CMakeFiles/ts2las.dir/link.txt b/apps/CMakeFiles/ts2las.dir/link.txt
deleted file mode 100644
index f685e10..0000000
--- a/apps/CMakeFiles/ts2las.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/c++    -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/ts2las.dir/ts2las.cpp.o CMakeFiles/ts2las.dir/laskernel.cpp.o  -o ../bin/Release/ts2las  -L/usr/local/lib ../bin/Release/liblas.2.2.0.dylib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a 
diff --git a/apps/CMakeFiles/ts2las.dir/progress.make b/apps/CMakeFiles/ts2las.dir/progress.make
deleted file mode 100644
index a5416a7..0000000
--- a/apps/CMakeFiles/ts2las.dir/progress.make
+++ /dev/null
@@ -1,3 +0,0 @@
-CMAKE_PROGRESS_1 = 65
-CMAKE_PROGRESS_2 = 66
-
diff --git a/apps/CMakeFiles/txt2las.dir/DependInfo.cmake b/apps/CMakeFiles/txt2las.dir/DependInfo.cmake
deleted file mode 100644
index 5644af6..0000000
--- a/apps/CMakeFiles/txt2las.dir/DependInfo.cmake
+++ /dev/null
@@ -1,16 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "C"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_C
-  "/Users/hobu/foo/clean/apps/lascommon.c" "/Users/hobu/foo/clean/apps/CMakeFiles/txt2las.dir/lascommon.c.o"
-  "/Users/hobu/foo/clean/apps/txt2las.c" "/Users/hobu/foo/clean/apps/CMakeFiles/txt2las.dir/txt2las.c.o"
-  )
-SET(CMAKE_C_COMPILER_ID "GNU")
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las_c.dir/DependInfo.cmake"
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/apps/CMakeFiles/txt2las.dir/build.make b/apps/CMakeFiles/txt2las.dir/build.make
deleted file mode 100644
index 2c1a196..0000000
--- a/apps/CMakeFiles/txt2las.dir/build.make
+++ /dev/null
@@ -1,132 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include apps/CMakeFiles/txt2las.dir/depend.make
-
-# Include the progress variables for this target.
-include apps/CMakeFiles/txt2las.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include apps/CMakeFiles/txt2las.dir/flags.make
-
-apps/CMakeFiles/txt2las.dir/lascommon.c.o: apps/CMakeFiles/txt2las.dir/flags.make
-apps/CMakeFiles/txt2las.dir/lascommon.c.o: apps/lascommon.c
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object apps/CMakeFiles/txt2las.dir/lascommon.c.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/txt2las.dir/lascommon.c.o   -c /Users/hobu/foo/clean/apps/lascommon.c
-
-apps/CMakeFiles/txt2las.dir/lascommon.c.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/txt2las.dir/lascommon.c.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -E /Users/hobu/foo/clean/apps/lascommon.c > CMakeFiles/txt2las.dir/lascommon.c.i
-
-apps/CMakeFiles/txt2las.dir/lascommon.c.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/txt2las.dir/lascommon.c.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -S /Users/hobu/foo/clean/apps/lascommon.c -o CMakeFiles/txt2las.dir/lascommon.c.s
-
-apps/CMakeFiles/txt2las.dir/lascommon.c.o.requires:
-.PHONY : apps/CMakeFiles/txt2las.dir/lascommon.c.o.requires
-
-apps/CMakeFiles/txt2las.dir/lascommon.c.o.provides: apps/CMakeFiles/txt2las.dir/lascommon.c.o.requires
-	$(MAKE) -f apps/CMakeFiles/txt2las.dir/build.make apps/CMakeFiles/txt2las.dir/lascommon.c.o.provides.build
-.PHONY : apps/CMakeFiles/txt2las.dir/lascommon.c.o.provides
-
-apps/CMakeFiles/txt2las.dir/lascommon.c.o.provides.build: apps/CMakeFiles/txt2las.dir/lascommon.c.o
-
-apps/CMakeFiles/txt2las.dir/txt2las.c.o: apps/CMakeFiles/txt2las.dir/flags.make
-apps/CMakeFiles/txt2las.dir/txt2las.c.o: apps/txt2las.c
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_2)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object apps/CMakeFiles/txt2las.dir/txt2las.c.o"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/txt2las.dir/txt2las.c.o   -c /Users/hobu/foo/clean/apps/txt2las.c
-
-apps/CMakeFiles/txt2las.dir/txt2las.c.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/txt2las.dir/txt2las.c.i"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -E /Users/hobu/foo/clean/apps/txt2las.c > CMakeFiles/txt2las.dir/txt2las.c.i
-
-apps/CMakeFiles/txt2las.dir/txt2las.c.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/txt2las.dir/txt2las.c.s"
-	cd /Users/hobu/foo/clean/apps && /usr/bin/gcc  $(C_DEFINES) $(C_FLAGS) -S /Users/hobu/foo/clean/apps/txt2las.c -o CMakeFiles/txt2las.dir/txt2las.c.s
-
-apps/CMakeFiles/txt2las.dir/txt2las.c.o.requires:
-.PHONY : apps/CMakeFiles/txt2las.dir/txt2las.c.o.requires
-
-apps/CMakeFiles/txt2las.dir/txt2las.c.o.provides: apps/CMakeFiles/txt2las.dir/txt2las.c.o.requires
-	$(MAKE) -f apps/CMakeFiles/txt2las.dir/build.make apps/CMakeFiles/txt2las.dir/txt2las.c.o.provides.build
-.PHONY : apps/CMakeFiles/txt2las.dir/txt2las.c.o.provides
-
-apps/CMakeFiles/txt2las.dir/txt2las.c.o.provides.build: apps/CMakeFiles/txt2las.dir/txt2las.c.o
-
-# Object files for target txt2las
-txt2las_OBJECTS = \
-"CMakeFiles/txt2las.dir/lascommon.c.o" \
-"CMakeFiles/txt2las.dir/txt2las.c.o"
-
-# External object files for target txt2las
-txt2las_EXTERNAL_OBJECTS =
-
-bin/Release/txt2las: apps/CMakeFiles/txt2las.dir/lascommon.c.o
-bin/Release/txt2las: apps/CMakeFiles/txt2las.dir/txt2las.c.o
-bin/Release/txt2las: bin/Release/liblas_c.2.2.0.dylib
-bin/Release/txt2las: bin/Release/liblas.2.2.0.dylib
-bin/Release/txt2las: /usr/local/lib/libboost_program_options.a
-bin/Release/txt2las: /usr/local/lib/libboost_thread.a
-bin/Release/txt2las: apps/CMakeFiles/txt2las.dir/build.make
-bin/Release/txt2las: apps/CMakeFiles/txt2las.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking C executable ../bin/Release/txt2las"
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/txt2las.dir/link.txt --verbose=$(VERBOSE)
-
-# Rule to build all files generated by this target.
-apps/CMakeFiles/txt2las.dir/build: bin/Release/txt2las
-.PHONY : apps/CMakeFiles/txt2las.dir/build
-
-apps/CMakeFiles/txt2las.dir/requires: apps/CMakeFiles/txt2las.dir/lascommon.c.o.requires
-apps/CMakeFiles/txt2las.dir/requires: apps/CMakeFiles/txt2las.dir/txt2las.c.o.requires
-.PHONY : apps/CMakeFiles/txt2las.dir/requires
-
-apps/CMakeFiles/txt2las.dir/clean:
-	cd /Users/hobu/foo/clean/apps && $(CMAKE_COMMAND) -P CMakeFiles/txt2las.dir/cmake_clean.cmake
-.PHONY : apps/CMakeFiles/txt2las.dir/clean
-
-apps/CMakeFiles/txt2las.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean /Users/hobu/foo/clean/apps /Users/hobu/foo/clean/apps/CMakeFiles/txt2las.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : apps/CMakeFiles/txt2las.dir/depend
-
diff --git a/apps/CMakeFiles/txt2las.dir/cmake_clean.cmake b/apps/CMakeFiles/txt2las.dir/cmake_clean.cmake
deleted file mode 100644
index efd10ad..0000000
--- a/apps/CMakeFiles/txt2las.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/txt2las.dir/lascommon.c.o"
-  "CMakeFiles/txt2las.dir/txt2las.c.o"
-  "../bin/Release/txt2las.pdb"
-  "../bin/Release/txt2las"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang C)
-  INCLUDE(CMakeFiles/txt2las.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/apps/CMakeFiles/txt2las.dir/depend.make b/apps/CMakeFiles/txt2las.dir/depend.make
deleted file mode 100644
index b8f9398..0000000
--- a/apps/CMakeFiles/txt2las.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for txt2las.
-# This may be replaced when dependencies are built.
diff --git a/apps/CMakeFiles/txt2las.dir/flags.make b/apps/CMakeFiles/txt2las.dir/flags.make
deleted file mode 100644
index e0228eb..0000000
--- a/apps/CMakeFiles/txt2las.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile C with /usr/bin/gcc
-C_FLAGS = -O3 -DNDEBUG -I/Users/hobu/foo/clean/apps/. -I/Users/hobu/foo/clean/apps/../include -I/Users/hobu/foo/clean/apps/../include/liblas/capi -I/usr/local/include   
-
-C_DEFINES = 
-
diff --git a/apps/CMakeFiles/txt2las.dir/link.txt b/apps/CMakeFiles/txt2las.dir/link.txt
deleted file mode 100644
index 33cf218..0000000
--- a/apps/CMakeFiles/txt2las.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/gcc  -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/txt2las.dir/lascommon.c.o CMakeFiles/txt2las.dir/txt2las.c.o  -o ../bin/Release/txt2las  -L/usr/local/lib ../bin/Release/liblas_c.2.2.0.dylib ../bin/Release/liblas.2.2.0.dylib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a 
diff --git a/apps/CMakeFiles/txt2las.dir/progress.make b/apps/CMakeFiles/txt2las.dir/progress.make
deleted file mode 100644
index 92cb53a..0000000
--- a/apps/CMakeFiles/txt2las.dir/progress.make
+++ /dev/null
@@ -1,3 +0,0 @@
-CMAKE_PROGRESS_1 = 67
-CMAKE_PROGRESS_2 = 68
-
diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt
old mode 100644
new mode 100755
index 7dc71c3..2013c07
--- a/apps/CMakeLists.txt
+++ b/apps/CMakeLists.txt
@@ -14,12 +14,8 @@ include_directories(
 ###############################################################################
 # Collect programs to build
 
-set(LASINFO_OLD lasinfo-old)
 set(LASINFO lasinfo)
-set(LASMERGE lasmerge)
 set(LAS2LAS las2las)
-set(LAS2LAS_OLD las2las-old)
-set(LAS2TXT_OLD las2txt-old)
 set(LAS2TXT las2txt)
 set(TXT2LAS txt2las)
 set(TS2LAS ts2las)
@@ -45,8 +41,8 @@ endif()
 
 
 set(LIBLAS_UTILITIES
-    ${LASINFO_OLD} ${LASINFO} ${LASMERGE} ${LAS2LAS} ${LAS2TXT_OLD} ${TXT2LAS} 
-    ${LAS2OGR} ${LAS2LAS} ${LAS2LAS_OLD} ${LASBLOCK} ${TS2LAS}  ${LAS2TXT} )
+    ${LASINFO} ${LAS2LAS} ${TXT2LAS} 
+    ${LAS2OGR} ${LAS2LAS} ${LASBLOCK} ${TS2LAS}  ${LAS2TXT} )
 
 # TODO: Experimental and requires testing --mloskot
 # Generate user-specific settings for Visual Studio project
@@ -72,32 +68,13 @@ endif()
 
 set(APPS_CPP_DEPENDENCIES
     ${LIBLAS_LIB_NAME}
-    ${TIFF_LIBRARY}
-    ${GEOTIFF_LIBRARY}
-    ${GDAL_LIBRARY}
-    ${SPATIALINDEX_LIBRARY}
-	${LASZIP_LIBRARY}
-    ${Boost_LIBRARIES})
+)
 
-link_directories(${Boost_LIBRARY_DIRS})
+# link_directories(${Boost_LIBRARY_DIRS})
 
 #    add_executable(lasschematest lasschematest.cpp laskernel.cpp)
 #    target_link_libraries(lasschematest ${APPS_CPP_DEPENDENCIES} ${LIBXML2_LIBRARIES})
 
-# Build lasinfo
-if(LASINFO_OLD)
-    set(LASINFO_OLD_SRC lascommon.c ${LASINFO_OLD}.c)
-    add_executable(${LASINFO_OLD} ${LASINFO_OLD_SRC})
-    target_link_libraries(${LASINFO_OLD} ${LIBLAS_C_LIB_NAME})
-endif()
-
-# Build las2las
-if(LAS2LAS_OLD)
-    set(LAS2LAS_OLD_SRC lascommon.c ${LAS2LAS_OLD}.c)
-    add_executable(${LAS2LAS_OLD} ${LAS2LAS_OLD_SRC})
-    target_link_libraries(${LAS2LAS_OLD} ${LIBLAS_C_LIB_NAME})
-endif()
-
 
 if(LAS2LAS)
     add_executable(${LAS2LAS} las2las.cpp laskernel.cpp)
@@ -109,13 +86,6 @@ if(LASINFO)
     target_link_libraries(${LASINFO} ${APPS_CPP_DEPENDENCIES}  )
 endif()
 
-# Build las2txt
-if(LAS2TXT_OLD)
-    set(LAS2TXT_OLD_SRC lascommon.c ${LAS2TXT}.c)
-    add_executable(${LAS2TXT_OLD} ${LAS2TXT_OLD_SRC})
-    target_link_libraries(${LAS2TXT_OLD} ${LIBLAS_C_LIB_NAME})
-endif()
-
 if(LAS2TXT)
     add_executable( ${LAS2TXT}  las2txt.cpp laskernel.cpp )
     target_link_libraries(${LAS2TXT} ${APPS_CPP_DEPENDENCIES}  )
@@ -133,13 +103,6 @@ if(TS2LAS)
     target_link_libraries(${TS2LAS} ${APPS_CPP_DEPENDENCIES} )
 endif()
 
-# Build lasmerge
-if(LASMERGE)
-    set(LASMERGE_SRC lascommon.c ${LASMERGE}.c)
-    add_executable(${LASMERGE} ${LASMERGE_SRC})
-    target_link_libraries(${LASMERGE} ${LIBLAS_C_LIB_NAME})
-endif()
-
 # Build lasblock
 if(LASBLOCK)
     set(LASBLOCK_SRC lasblock.cpp laskernel.cpp)
@@ -180,6 +143,22 @@ install(TARGETS ${LIBLAS_UTILITIES}
 
 if(UNIX)
 
+  set(LIBLAS_UTILS_RPATH ${CMAKE_INSTALL_PREFIX}/lib ${Boost_LIBRARY_DIRS})
+  if(LASZIP_FOUND)
+    get_filename_component(LASZIP_LIBRARY_DIRS ${LASZIP_LIBRARY} PATH)
+    set (LIBLAS_UTILS_RPATH ${LIBLAS_UTILS_RPATH} ${LASZIP_LIBRARY_DIRS})
+  endif()
+  if(GEOTIFF_FOUND)
+    get_filename_component(GEOTIFF_LIBRARY_DIRS ${GEOTIFF_LIBRARY} PATH)
+    set (LIBLAS_UTILS_RPATH ${LIBLAS_UTILS_RPATH} ${GEOTIFF_LIBRARY_DIRS})
+  endif()
+  if(GDAL_FOUND)
+    get_filename_component(GDAL_LIBRARY_DIRS ${GDAL_LIBRARY} PATH)
+    set (LIBLAS_UTILS_RPATH ${LIBLAS_UTILS_RPATH} ${GDAL_LIBRARY_DIRS})
+  endif()
+  set_target_properties(${LIBLAS_UTILITIES} PROPERTIES
+    INSTALL_RPATH "${LIBLAS_UTILS_RPATH}")
+
   if(WITH_PKGCONFIG)
     
     set(PKGCFG_PREFIX "${CMAKE_INSTALL_PREFIX}")
diff --git a/apps/Makefile b/apps/Makefile
deleted file mode 100644
index 3c8e8eb..0000000
--- a/apps/Makefile
+++ /dev/null
@@ -1,782 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# Default target executed when no arguments are given to make.
-default_target: all
-.PHONY : default_target
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-#=============================================================================
-# Targets provided globally by CMake.
-
-# Special rule for the target edit_cache
-edit_cache:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
-.PHONY : edit_cache
-
-# Special rule for the target edit_cache
-edit_cache/fast: edit_cache
-.PHONY : edit_cache/fast
-
-# Special rule for the target install
-install: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
-.PHONY : install
-
-# Special rule for the target install
-install/fast: preinstall/fast
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
-.PHONY : install/fast
-
-# Special rule for the target install/local
-install/local: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
-.PHONY : install/local
-
-# Special rule for the target install/local
-install/local/fast: install/local
-.PHONY : install/local/fast
-
-# Special rule for the target install/strip
-install/strip: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
-.PHONY : install/strip
-
-# Special rule for the target install/strip
-install/strip/fast: install/strip
-.PHONY : install/strip/fast
-
-# Special rule for the target list_install_components
-list_install_components:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
-.PHONY : list_install_components
-
-# Special rule for the target list_install_components
-list_install_components/fast: list_install_components
-.PHONY : list_install_components/fast
-
-# Special rule for the target package
-package: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..."
-	cd /Users/hobu/foo/clean && "/Applications/CMake 2.8-6.app/Contents/bin/cpack" --config ./CPackConfig.cmake
-.PHONY : package
-
-# Special rule for the target package
-package/fast: package
-.PHONY : package/fast
-
-# Special rule for the target package_source
-package_source:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..."
-	cd /Users/hobu/foo/clean && "/Applications/CMake 2.8-6.app/Contents/bin/cpack" --config ./CPackSourceConfig.cmake /Users/hobu/foo/clean/CPackSourceConfig.cmake
-.PHONY : package_source
-
-# Special rule for the target package_source
-package_source/fast: package_source
-.PHONY : package_source/fast
-
-# Special rule for the target rebuild_cache
-rebuild_cache:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
-.PHONY : rebuild_cache
-
-# Special rule for the target rebuild_cache
-rebuild_cache/fast: rebuild_cache
-.PHONY : rebuild_cache/fast
-
-# Special rule for the target test
-test:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running tests..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/ctest" --force-new-ctest-process $(ARGS)
-.PHONY : test
-
-# Special rule for the target test
-test/fast: test
-.PHONY : test/fast
-
-# The main all target
-all: cmake_check_build_system
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles /Users/hobu/foo/clean/apps/CMakeFiles/progress.marks
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : all
-
-# The main clean target
-clean:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/clean
-.PHONY : clean
-
-# The main clean target
-clean/fast: clean
-.PHONY : clean/fast
-
-# Prepare targets for installation.
-preinstall: all
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/preinstall
-.PHONY : preinstall
-
-# Prepare targets for installation.
-preinstall/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/preinstall
-.PHONY : preinstall/fast
-
-# clear depends
-depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
-.PHONY : depend
-
-# Convenience name for target.
-apps/CMakeFiles/bigfile_test.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/bigfile_test.dir/rule
-.PHONY : apps/CMakeFiles/bigfile_test.dir/rule
-
-# Convenience name for target.
-bigfile_test: apps/CMakeFiles/bigfile_test.dir/rule
-.PHONY : bigfile_test
-
-# fast build rule for target.
-bigfile_test/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/bigfile_test.dir/build.make apps/CMakeFiles/bigfile_test.dir/build
-.PHONY : bigfile_test/fast
-
-# Convenience name for target.
-apps/CMakeFiles/las2las.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/las2las.dir/rule
-.PHONY : apps/CMakeFiles/las2las.dir/rule
-
-# Convenience name for target.
-las2las: apps/CMakeFiles/las2las.dir/rule
-.PHONY : las2las
-
-# fast build rule for target.
-las2las/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las.dir/build.make apps/CMakeFiles/las2las.dir/build
-.PHONY : las2las/fast
-
-# Convenience name for target.
-apps/CMakeFiles/las2las-old.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/las2las-old.dir/rule
-.PHONY : apps/CMakeFiles/las2las-old.dir/rule
-
-# Convenience name for target.
-las2las-old: apps/CMakeFiles/las2las-old.dir/rule
-.PHONY : las2las-old
-
-# fast build rule for target.
-las2las-old/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las-old.dir/build.make apps/CMakeFiles/las2las-old.dir/build
-.PHONY : las2las-old/fast
-
-# Convenience name for target.
-apps/CMakeFiles/las2txt.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/las2txt.dir/rule
-.PHONY : apps/CMakeFiles/las2txt.dir/rule
-
-# Convenience name for target.
-las2txt: apps/CMakeFiles/las2txt.dir/rule
-.PHONY : las2txt
-
-# fast build rule for target.
-las2txt/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt.dir/build.make apps/CMakeFiles/las2txt.dir/build
-.PHONY : las2txt/fast
-
-# Convenience name for target.
-apps/CMakeFiles/las2txt-old.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/las2txt-old.dir/rule
-.PHONY : apps/CMakeFiles/las2txt-old.dir/rule
-
-# Convenience name for target.
-las2txt-old: apps/CMakeFiles/las2txt-old.dir/rule
-.PHONY : las2txt-old
-
-# fast build rule for target.
-las2txt-old/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt-old.dir/build.make apps/CMakeFiles/las2txt-old.dir/build
-.PHONY : las2txt-old/fast
-
-# Convenience name for target.
-apps/CMakeFiles/lasblock.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/lasblock.dir/rule
-.PHONY : apps/CMakeFiles/lasblock.dir/rule
-
-# Convenience name for target.
-lasblock: apps/CMakeFiles/lasblock.dir/rule
-.PHONY : lasblock
-
-# fast build rule for target.
-lasblock/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasblock.dir/build.make apps/CMakeFiles/lasblock.dir/build
-.PHONY : lasblock/fast
-
-# Convenience name for target.
-apps/CMakeFiles/lasindex_test.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/lasindex_test.dir/rule
-.PHONY : apps/CMakeFiles/lasindex_test.dir/rule
-
-# Convenience name for target.
-lasindex_test: apps/CMakeFiles/lasindex_test.dir/rule
-.PHONY : lasindex_test
-
-# fast build rule for target.
-lasindex_test/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasindex_test.dir/build.make apps/CMakeFiles/lasindex_test.dir/build
-.PHONY : lasindex_test/fast
-
-# Convenience name for target.
-apps/CMakeFiles/lasinfo.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/lasinfo.dir/rule
-.PHONY : apps/CMakeFiles/lasinfo.dir/rule
-
-# Convenience name for target.
-lasinfo: apps/CMakeFiles/lasinfo.dir/rule
-.PHONY : lasinfo
-
-# fast build rule for target.
-lasinfo/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo.dir/build.make apps/CMakeFiles/lasinfo.dir/build
-.PHONY : lasinfo/fast
-
-# Convenience name for target.
-apps/CMakeFiles/lasinfo-old.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/lasinfo-old.dir/rule
-.PHONY : apps/CMakeFiles/lasinfo-old.dir/rule
-
-# Convenience name for target.
-lasinfo-old: apps/CMakeFiles/lasinfo-old.dir/rule
-.PHONY : lasinfo-old
-
-# fast build rule for target.
-lasinfo-old/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo-old.dir/build.make apps/CMakeFiles/lasinfo-old.dir/build
-.PHONY : lasinfo-old/fast
-
-# Convenience name for target.
-apps/CMakeFiles/lasmerge.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/lasmerge.dir/rule
-.PHONY : apps/CMakeFiles/lasmerge.dir/rule
-
-# Convenience name for target.
-lasmerge: apps/CMakeFiles/lasmerge.dir/rule
-.PHONY : lasmerge
-
-# fast build rule for target.
-lasmerge/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasmerge.dir/build.make apps/CMakeFiles/lasmerge.dir/build
-.PHONY : lasmerge/fast
-
-# Convenience name for target.
-apps/CMakeFiles/ts2las.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/ts2las.dir/rule
-.PHONY : apps/CMakeFiles/ts2las.dir/rule
-
-# Convenience name for target.
-ts2las: apps/CMakeFiles/ts2las.dir/rule
-.PHONY : ts2las
-
-# fast build rule for target.
-ts2las/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/ts2las.dir/build.make apps/CMakeFiles/ts2las.dir/build
-.PHONY : ts2las/fast
-
-# Convenience name for target.
-apps/CMakeFiles/txt2las.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 apps/CMakeFiles/txt2las.dir/rule
-.PHONY : apps/CMakeFiles/txt2las.dir/rule
-
-# Convenience name for target.
-txt2las: apps/CMakeFiles/txt2las.dir/rule
-.PHONY : txt2las
-
-# fast build rule for target.
-txt2las/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/txt2las.dir/build.make apps/CMakeFiles/txt2las.dir/build
-.PHONY : txt2las/fast
-
-bigtest.o: bigtest.c.o
-.PHONY : bigtest.o
-
-# target to build an object file
-bigtest.c.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/bigfile_test.dir/build.make apps/CMakeFiles/bigfile_test.dir/bigtest.c.o
-.PHONY : bigtest.c.o
-
-bigtest.i: bigtest.c.i
-.PHONY : bigtest.i
-
-# target to preprocess a source file
-bigtest.c.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/bigfile_test.dir/build.make apps/CMakeFiles/bigfile_test.dir/bigtest.c.i
-.PHONY : bigtest.c.i
-
-bigtest.s: bigtest.c.s
-.PHONY : bigtest.s
-
-# target to generate assembly for a file
-bigtest.c.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/bigfile_test.dir/build.make apps/CMakeFiles/bigfile_test.dir/bigtest.c.s
-.PHONY : bigtest.c.s
-
-las2las-old.o: las2las-old.c.o
-.PHONY : las2las-old.o
-
-# target to build an object file
-las2las-old.c.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las-old.dir/build.make apps/CMakeFiles/las2las-old.dir/las2las-old.c.o
-.PHONY : las2las-old.c.o
-
-las2las-old.i: las2las-old.c.i
-.PHONY : las2las-old.i
-
-# target to preprocess a source file
-las2las-old.c.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las-old.dir/build.make apps/CMakeFiles/las2las-old.dir/las2las-old.c.i
-.PHONY : las2las-old.c.i
-
-las2las-old.s: las2las-old.c.s
-.PHONY : las2las-old.s
-
-# target to generate assembly for a file
-las2las-old.c.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las-old.dir/build.make apps/CMakeFiles/las2las-old.dir/las2las-old.c.s
-.PHONY : las2las-old.c.s
-
-las2las.o: las2las.cpp.o
-.PHONY : las2las.o
-
-# target to build an object file
-las2las.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las.dir/build.make apps/CMakeFiles/las2las.dir/las2las.cpp.o
-.PHONY : las2las.cpp.o
-
-las2las.i: las2las.cpp.i
-.PHONY : las2las.i
-
-# target to preprocess a source file
-las2las.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las.dir/build.make apps/CMakeFiles/las2las.dir/las2las.cpp.i
-.PHONY : las2las.cpp.i
-
-las2las.s: las2las.cpp.s
-.PHONY : las2las.s
-
-# target to generate assembly for a file
-las2las.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las.dir/build.make apps/CMakeFiles/las2las.dir/las2las.cpp.s
-.PHONY : las2las.cpp.s
-
-las2txt.o: las2txt.c.o
-.PHONY : las2txt.o
-
-# target to build an object file
-las2txt.c.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt-old.dir/build.make apps/CMakeFiles/las2txt-old.dir/las2txt.c.o
-.PHONY : las2txt.c.o
-
-las2txt.i: las2txt.c.i
-.PHONY : las2txt.i
-
-# target to preprocess a source file
-las2txt.c.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt-old.dir/build.make apps/CMakeFiles/las2txt-old.dir/las2txt.c.i
-.PHONY : las2txt.c.i
-
-las2txt.s: las2txt.c.s
-.PHONY : las2txt.s
-
-# target to generate assembly for a file
-las2txt.c.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt-old.dir/build.make apps/CMakeFiles/las2txt-old.dir/las2txt.c.s
-.PHONY : las2txt.c.s
-
-las2txt.o: las2txt.cpp.o
-.PHONY : las2txt.o
-
-# target to build an object file
-las2txt.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt.dir/build.make apps/CMakeFiles/las2txt.dir/las2txt.cpp.o
-.PHONY : las2txt.cpp.o
-
-las2txt.i: las2txt.cpp.i
-.PHONY : las2txt.i
-
-# target to preprocess a source file
-las2txt.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt.dir/build.make apps/CMakeFiles/las2txt.dir/las2txt.cpp.i
-.PHONY : las2txt.cpp.i
-
-las2txt.s: las2txt.cpp.s
-.PHONY : las2txt.s
-
-# target to generate assembly for a file
-las2txt.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt.dir/build.make apps/CMakeFiles/las2txt.dir/las2txt.cpp.s
-.PHONY : las2txt.cpp.s
-
-lasblock.o: lasblock.cpp.o
-.PHONY : lasblock.o
-
-# target to build an object file
-lasblock.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasblock.dir/build.make apps/CMakeFiles/lasblock.dir/lasblock.cpp.o
-.PHONY : lasblock.cpp.o
-
-lasblock.i: lasblock.cpp.i
-.PHONY : lasblock.i
-
-# target to preprocess a source file
-lasblock.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasblock.dir/build.make apps/CMakeFiles/lasblock.dir/lasblock.cpp.i
-.PHONY : lasblock.cpp.i
-
-lasblock.s: lasblock.cpp.s
-.PHONY : lasblock.s
-
-# target to generate assembly for a file
-lasblock.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasblock.dir/build.make apps/CMakeFiles/lasblock.dir/lasblock.cpp.s
-.PHONY : lasblock.cpp.s
-
-lascommon.o: lascommon.c.o
-.PHONY : lascommon.o
-
-# target to build an object file
-lascommon.c.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las-old.dir/build.make apps/CMakeFiles/las2las-old.dir/lascommon.c.o
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt-old.dir/build.make apps/CMakeFiles/las2txt-old.dir/lascommon.c.o
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo-old.dir/build.make apps/CMakeFiles/lasinfo-old.dir/lascommon.c.o
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasmerge.dir/build.make apps/CMakeFiles/lasmerge.dir/lascommon.c.o
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/txt2las.dir/build.make apps/CMakeFiles/txt2las.dir/lascommon.c.o
-.PHONY : lascommon.c.o
-
-lascommon.i: lascommon.c.i
-.PHONY : lascommon.i
-
-# target to preprocess a source file
-lascommon.c.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las-old.dir/build.make apps/CMakeFiles/las2las-old.dir/lascommon.c.i
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt-old.dir/build.make apps/CMakeFiles/las2txt-old.dir/lascommon.c.i
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo-old.dir/build.make apps/CMakeFiles/lasinfo-old.dir/lascommon.c.i
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasmerge.dir/build.make apps/CMakeFiles/lasmerge.dir/lascommon.c.i
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/txt2las.dir/build.make apps/CMakeFiles/txt2las.dir/lascommon.c.i
-.PHONY : lascommon.c.i
-
-lascommon.s: lascommon.c.s
-.PHONY : lascommon.s
-
-# target to generate assembly for a file
-lascommon.c.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las-old.dir/build.make apps/CMakeFiles/las2las-old.dir/lascommon.c.s
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt-old.dir/build.make apps/CMakeFiles/las2txt-old.dir/lascommon.c.s
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo-old.dir/build.make apps/CMakeFiles/lasinfo-old.dir/lascommon.c.s
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasmerge.dir/build.make apps/CMakeFiles/lasmerge.dir/lascommon.c.s
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/txt2las.dir/build.make apps/CMakeFiles/txt2las.dir/lascommon.c.s
-.PHONY : lascommon.c.s
-
-lasindex_test.o: lasindex_test.cpp.o
-.PHONY : lasindex_test.o
-
-# target to build an object file
-lasindex_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasindex_test.dir/build.make apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.o
-.PHONY : lasindex_test.cpp.o
-
-lasindex_test.i: lasindex_test.cpp.i
-.PHONY : lasindex_test.i
-
-# target to preprocess a source file
-lasindex_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasindex_test.dir/build.make apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.i
-.PHONY : lasindex_test.cpp.i
-
-lasindex_test.s: lasindex_test.cpp.s
-.PHONY : lasindex_test.s
-
-# target to generate assembly for a file
-lasindex_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasindex_test.dir/build.make apps/CMakeFiles/lasindex_test.dir/lasindex_test.cpp.s
-.PHONY : lasindex_test.cpp.s
-
-lasinfo-old.o: lasinfo-old.c.o
-.PHONY : lasinfo-old.o
-
-# target to build an object file
-lasinfo-old.c.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo-old.dir/build.make apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.o
-.PHONY : lasinfo-old.c.o
-
-lasinfo-old.i: lasinfo-old.c.i
-.PHONY : lasinfo-old.i
-
-# target to preprocess a source file
-lasinfo-old.c.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo-old.dir/build.make apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.i
-.PHONY : lasinfo-old.c.i
-
-lasinfo-old.s: lasinfo-old.c.s
-.PHONY : lasinfo-old.s
-
-# target to generate assembly for a file
-lasinfo-old.c.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo-old.dir/build.make apps/CMakeFiles/lasinfo-old.dir/lasinfo-old.c.s
-.PHONY : lasinfo-old.c.s
-
-lasinfo.o: lasinfo.cpp.o
-.PHONY : lasinfo.o
-
-# target to build an object file
-lasinfo.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo.dir/build.make apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.o
-.PHONY : lasinfo.cpp.o
-
-lasinfo.i: lasinfo.cpp.i
-.PHONY : lasinfo.i
-
-# target to preprocess a source file
-lasinfo.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo.dir/build.make apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.i
-.PHONY : lasinfo.cpp.i
-
-lasinfo.s: lasinfo.cpp.s
-.PHONY : lasinfo.s
-
-# target to generate assembly for a file
-lasinfo.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo.dir/build.make apps/CMakeFiles/lasinfo.dir/lasinfo.cpp.s
-.PHONY : lasinfo.cpp.s
-
-laskernel.o: laskernel.cpp.o
-.PHONY : laskernel.o
-
-# target to build an object file
-laskernel.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las.dir/build.make apps/CMakeFiles/las2las.dir/laskernel.cpp.o
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt.dir/build.make apps/CMakeFiles/las2txt.dir/laskernel.cpp.o
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasblock.dir/build.make apps/CMakeFiles/lasblock.dir/laskernel.cpp.o
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo.dir/build.make apps/CMakeFiles/lasinfo.dir/laskernel.cpp.o
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/ts2las.dir/build.make apps/CMakeFiles/ts2las.dir/laskernel.cpp.o
-.PHONY : laskernel.cpp.o
-
-laskernel.i: laskernel.cpp.i
-.PHONY : laskernel.i
-
-# target to preprocess a source file
-laskernel.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las.dir/build.make apps/CMakeFiles/las2las.dir/laskernel.cpp.i
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt.dir/build.make apps/CMakeFiles/las2txt.dir/laskernel.cpp.i
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasblock.dir/build.make apps/CMakeFiles/lasblock.dir/laskernel.cpp.i
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo.dir/build.make apps/CMakeFiles/lasinfo.dir/laskernel.cpp.i
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/ts2las.dir/build.make apps/CMakeFiles/ts2las.dir/laskernel.cpp.i
-.PHONY : laskernel.cpp.i
-
-laskernel.s: laskernel.cpp.s
-.PHONY : laskernel.s
-
-# target to generate assembly for a file
-laskernel.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2las.dir/build.make apps/CMakeFiles/las2las.dir/laskernel.cpp.s
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/las2txt.dir/build.make apps/CMakeFiles/las2txt.dir/laskernel.cpp.s
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasblock.dir/build.make apps/CMakeFiles/lasblock.dir/laskernel.cpp.s
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasinfo.dir/build.make apps/CMakeFiles/lasinfo.dir/laskernel.cpp.s
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/ts2las.dir/build.make apps/CMakeFiles/ts2las.dir/laskernel.cpp.s
-.PHONY : laskernel.cpp.s
-
-lasmerge.o: lasmerge.c.o
-.PHONY : lasmerge.o
-
-# target to build an object file
-lasmerge.c.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasmerge.dir/build.make apps/CMakeFiles/lasmerge.dir/lasmerge.c.o
-.PHONY : lasmerge.c.o
-
-lasmerge.i: lasmerge.c.i
-.PHONY : lasmerge.i
-
-# target to preprocess a source file
-lasmerge.c.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasmerge.dir/build.make apps/CMakeFiles/lasmerge.dir/lasmerge.c.i
-.PHONY : lasmerge.c.i
-
-lasmerge.s: lasmerge.c.s
-.PHONY : lasmerge.s
-
-# target to generate assembly for a file
-lasmerge.c.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/lasmerge.dir/build.make apps/CMakeFiles/lasmerge.dir/lasmerge.c.s
-.PHONY : lasmerge.c.s
-
-ts2las.o: ts2las.cpp.o
-.PHONY : ts2las.o
-
-# target to build an object file
-ts2las.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/ts2las.dir/build.make apps/CMakeFiles/ts2las.dir/ts2las.cpp.o
-.PHONY : ts2las.cpp.o
-
-ts2las.i: ts2las.cpp.i
-.PHONY : ts2las.i
-
-# target to preprocess a source file
-ts2las.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/ts2las.dir/build.make apps/CMakeFiles/ts2las.dir/ts2las.cpp.i
-.PHONY : ts2las.cpp.i
-
-ts2las.s: ts2las.cpp.s
-.PHONY : ts2las.s
-
-# target to generate assembly for a file
-ts2las.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/ts2las.dir/build.make apps/CMakeFiles/ts2las.dir/ts2las.cpp.s
-.PHONY : ts2las.cpp.s
-
-txt2las.o: txt2las.c.o
-.PHONY : txt2las.o
-
-# target to build an object file
-txt2las.c.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/txt2las.dir/build.make apps/CMakeFiles/txt2las.dir/txt2las.c.o
-.PHONY : txt2las.c.o
-
-txt2las.i: txt2las.c.i
-.PHONY : txt2las.i
-
-# target to preprocess a source file
-txt2las.c.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/txt2las.dir/build.make apps/CMakeFiles/txt2las.dir/txt2las.c.i
-.PHONY : txt2las.c.i
-
-txt2las.s: txt2las.c.s
-.PHONY : txt2las.s
-
-# target to generate assembly for a file
-txt2las.c.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f apps/CMakeFiles/txt2las.dir/build.make apps/CMakeFiles/txt2las.dir/txt2las.c.s
-.PHONY : txt2las.c.s
-
-# Help Target
-help:
-	@echo "The following are some of the valid targets for this Makefile:"
-	@echo "... all (the default if no target is provided)"
-	@echo "... clean"
-	@echo "... depend"
-	@echo "... bigfile_test"
-	@echo "... edit_cache"
-	@echo "... install"
-	@echo "... install/local"
-	@echo "... install/strip"
-	@echo "... las2las"
-	@echo "... las2las-old"
-	@echo "... las2txt"
-	@echo "... las2txt-old"
-	@echo "... lasblock"
-	@echo "... lasindex_test"
-	@echo "... lasinfo"
-	@echo "... lasinfo-old"
-	@echo "... lasmerge"
-	@echo "... list_install_components"
-	@echo "... package"
-	@echo "... package_source"
-	@echo "... rebuild_cache"
-	@echo "... test"
-	@echo "... ts2las"
-	@echo "... txt2las"
-	@echo "... bigtest.o"
-	@echo "... bigtest.i"
-	@echo "... bigtest.s"
-	@echo "... las2las-old.o"
-	@echo "... las2las-old.i"
-	@echo "... las2las-old.s"
-	@echo "... las2las.o"
-	@echo "... las2las.i"
-	@echo "... las2las.s"
-	@echo "... las2txt.o"
-	@echo "... las2txt.i"
-	@echo "... las2txt.s"
-	@echo "... las2txt.o"
-	@echo "... las2txt.i"
-	@echo "... las2txt.s"
-	@echo "... lasblock.o"
-	@echo "... lasblock.i"
-	@echo "... lasblock.s"
-	@echo "... lascommon.o"
-	@echo "... lascommon.i"
-	@echo "... lascommon.s"
-	@echo "... lasindex_test.o"
-	@echo "... lasindex_test.i"
-	@echo "... lasindex_test.s"
-	@echo "... lasinfo-old.o"
-	@echo "... lasinfo-old.i"
-	@echo "... lasinfo-old.s"
-	@echo "... lasinfo.o"
-	@echo "... lasinfo.i"
-	@echo "... lasinfo.s"
-	@echo "... laskernel.o"
-	@echo "... laskernel.i"
-	@echo "... laskernel.s"
-	@echo "... lasmerge.o"
-	@echo "... lasmerge.i"
-	@echo "... lasmerge.s"
-	@echo "... ts2las.o"
-	@echo "... ts2las.i"
-	@echo "... ts2las.s"
-	@echo "... txt2las.o"
-	@echo "... txt2las.i"
-	@echo "... txt2las.s"
-.PHONY : help
-
-
-
-#=============================================================================
-# Special targets to cleanup operation of make.
-
-# Special rule to run CMake to check the build system integrity.
-# No rule that depends on this can have commands that come from listfiles
-# because they might be regenerated.
-cmake_check_build_system:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
-.PHONY : cmake_check_build_system
-
diff --git a/apps/bigfile_boost_iostreams_test.cpp b/apps/bigfile_boost_iostreams_test.cpp
old mode 100644
new mode 100755
index e17b6e1..9c6a4de
--- a/apps/bigfile_boost_iostreams_test.cpp
+++ b/apps/bigfile_boost_iostreams_test.cpp
@@ -38,9 +38,9 @@
  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY 
  * OF SUCH DAMAGE.
  ****************************************************************************/
-#include <liblas/laspoint.hpp>
-#include <liblas/lasreader.hpp>
-#include <liblas/laswriter.hpp>
+#include <liblas/point.hpp>
+#include <liblas/reader.hpp>
+#include <liblas/writer.hpp>
 #ifdef _MSC_VER
 #  pragma warning(push)
 #  pragma warning(disable: 4702)
@@ -50,7 +50,7 @@
 #include <boost/iostreams/stream.hpp>
 #ifdef _MSC_VER
 #  pragma warning(pop)
-#endif()
+#endif
 #include <cassert>
 #include <exception>
 #include <iostream>
@@ -82,7 +82,7 @@ int main()
             las::Header header;
             las::Writer writer(bigofs, header);
 
-            las::Point empty_point;
+            las::Point empty_point(&las::DefaultHeader::get());
             bio::stream_offset i = 0;
             for (i = 0; i < point_count; ++i)
             {
diff --git a/apps/bigtest.c b/apps/bigtest.c
old mode 100644
new mode 100755
diff --git a/apps/cmake_install.cmake b/apps/cmake_install.cmake
deleted file mode 100644
index 8f769a7..0000000
--- a/apps/cmake_install.cmake
+++ /dev/null
@@ -1,181 +0,0 @@
-# Install script for directory: /Users/hobu/foo/clean/apps
-
-# Set the install prefix
-IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
-  SET(CMAKE_INSTALL_PREFIX "/usr/local")
-ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
-STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
-
-# Set the install configuration name.
-IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
-  IF(BUILD_TYPE)
-    STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
-           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
-  ELSE(BUILD_TYPE)
-    SET(CMAKE_INSTALL_CONFIG_NAME "Release")
-  ENDIF(BUILD_TYPE)
-  MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
-ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
-
-# Set the component getting installed.
-IF(NOT CMAKE_INSTALL_COMPONENT)
-  IF(COMPONENT)
-    MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
-    SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
-  ELSE(COMPONENT)
-    SET(CMAKE_INSTALL_COMPONENT)
-  ENDIF(COMPONENT)
-ENDIF(NOT CMAKE_INSTALL_COMPONENT)
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE EXECUTABLE FILES "/Users/hobu/foo/clean/bin/Release/lasinfo-old")
-  IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasinfo-old" AND
-     NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasinfo-old")
-    EXECUTE_PROCESS(COMMAND "/usr/bin/install_name_tool"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib" "/usr/local/lib/liblas.2.2.0.dylib"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas_c.2.2.0.dylib" "/usr/local/lib/liblas_c.2.2.0.dylib"
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasinfo-old")
-    IF(CMAKE_INSTALL_DO_STRIP)
-      EXECUTE_PROCESS(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasinfo-old")
-    ENDIF(CMAKE_INSTALL_DO_STRIP)
-  ENDIF()
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE EXECUTABLE FILES "/Users/hobu/foo/clean/bin/Release/lasinfo")
-  IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasinfo" AND
-     NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasinfo")
-    EXECUTE_PROCESS(COMMAND "/usr/bin/install_name_tool"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib" "/usr/local/lib/liblas.2.2.0.dylib"
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasinfo")
-    IF(CMAKE_INSTALL_DO_STRIP)
-      EXECUTE_PROCESS(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasinfo")
-    ENDIF(CMAKE_INSTALL_DO_STRIP)
-  ENDIF()
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE EXECUTABLE FILES "/Users/hobu/foo/clean/bin/Release/lasmerge")
-  IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasmerge" AND
-     NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasmerge")
-    EXECUTE_PROCESS(COMMAND "/usr/bin/install_name_tool"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib" "/usr/local/lib/liblas.2.2.0.dylib"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas_c.2.2.0.dylib" "/usr/local/lib/liblas_c.2.2.0.dylib"
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasmerge")
-    IF(CMAKE_INSTALL_DO_STRIP)
-      EXECUTE_PROCESS(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasmerge")
-    ENDIF(CMAKE_INSTALL_DO_STRIP)
-  ENDIF()
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE EXECUTABLE FILES "/Users/hobu/foo/clean/bin/Release/las2las")
-  IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2las" AND
-     NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2las")
-    EXECUTE_PROCESS(COMMAND "/usr/bin/install_name_tool"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib" "/usr/local/lib/liblas.2.2.0.dylib"
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2las")
-    IF(CMAKE_INSTALL_DO_STRIP)
-      EXECUTE_PROCESS(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2las")
-    ENDIF(CMAKE_INSTALL_DO_STRIP)
-  ENDIF()
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE EXECUTABLE FILES "/Users/hobu/foo/clean/bin/Release/las2txt-old")
-  IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2txt-old" AND
-     NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2txt-old")
-    EXECUTE_PROCESS(COMMAND "/usr/bin/install_name_tool"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib" "/usr/local/lib/liblas.2.2.0.dylib"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas_c.2.2.0.dylib" "/usr/local/lib/liblas_c.2.2.0.dylib"
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2txt-old")
-    IF(CMAKE_INSTALL_DO_STRIP)
-      EXECUTE_PROCESS(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2txt-old")
-    ENDIF(CMAKE_INSTALL_DO_STRIP)
-  ENDIF()
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE EXECUTABLE FILES "/Users/hobu/foo/clean/bin/Release/txt2las")
-  IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/txt2las" AND
-     NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/txt2las")
-    EXECUTE_PROCESS(COMMAND "/usr/bin/install_name_tool"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib" "/usr/local/lib/liblas.2.2.0.dylib"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas_c.2.2.0.dylib" "/usr/local/lib/liblas_c.2.2.0.dylib"
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/txt2las")
-    IF(CMAKE_INSTALL_DO_STRIP)
-      EXECUTE_PROCESS(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/txt2las")
-    ENDIF(CMAKE_INSTALL_DO_STRIP)
-  ENDIF()
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE EXECUTABLE FILES "/Users/hobu/foo/clean/bin/Release/las2las")
-  IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2las" AND
-     NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2las")
-    EXECUTE_PROCESS(COMMAND "/usr/bin/install_name_tool"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib" "/usr/local/lib/liblas.2.2.0.dylib"
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2las")
-    IF(CMAKE_INSTALL_DO_STRIP)
-      EXECUTE_PROCESS(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2las")
-    ENDIF(CMAKE_INSTALL_DO_STRIP)
-  ENDIF()
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE EXECUTABLE FILES "/Users/hobu/foo/clean/bin/Release/las2las-old")
-  IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2las-old" AND
-     NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2las-old")
-    EXECUTE_PROCESS(COMMAND "/usr/bin/install_name_tool"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib" "/usr/local/lib/liblas.2.2.0.dylib"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas_c.2.2.0.dylib" "/usr/local/lib/liblas_c.2.2.0.dylib"
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2las-old")
-    IF(CMAKE_INSTALL_DO_STRIP)
-      EXECUTE_PROCESS(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2las-old")
-    ENDIF(CMAKE_INSTALL_DO_STRIP)
-  ENDIF()
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE EXECUTABLE FILES "/Users/hobu/foo/clean/bin/Release/lasblock")
-  IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasblock" AND
-     NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasblock")
-    EXECUTE_PROCESS(COMMAND "/usr/bin/install_name_tool"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib" "/usr/local/lib/liblas.2.2.0.dylib"
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasblock")
-    IF(CMAKE_INSTALL_DO_STRIP)
-      EXECUTE_PROCESS(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/lasblock")
-    ENDIF(CMAKE_INSTALL_DO_STRIP)
-  ENDIF()
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE EXECUTABLE FILES "/Users/hobu/foo/clean/bin/Release/ts2las")
-  IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/ts2las" AND
-     NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/ts2las")
-    EXECUTE_PROCESS(COMMAND "/usr/bin/install_name_tool"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib" "/usr/local/lib/liblas.2.2.0.dylib"
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/ts2las")
-    IF(CMAKE_INSTALL_DO_STRIP)
-      EXECUTE_PROCESS(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/ts2las")
-    ENDIF(CMAKE_INSTALL_DO_STRIP)
-  ENDIF()
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE EXECUTABLE FILES "/Users/hobu/foo/clean/bin/Release/las2txt")
-  IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2txt" AND
-     NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2txt")
-    EXECUTE_PROCESS(COMMAND "/usr/bin/install_name_tool"
-      -change "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib" "/usr/local/lib/liblas.2.2.0.dylib"
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2txt")
-    IF(CMAKE_INSTALL_DO_STRIP)
-      EXECUTE_PROCESS(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/las2txt")
-    ENDIF(CMAKE_INSTALL_DO_STRIP)
-  ENDIF()
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE FILE PERMISSIONS OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE FILES "/Users/hobu/foo/clean/apps/liblas-config")
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
diff --git a/apps/las2las-old.c b/apps/las2las-old.c
deleted file mode 100644
index 65d77fc..0000000
--- a/apps/las2las-old.c
+++ /dev/null
@@ -1,1165 +0,0 @@
-/***************************************************************************
- * $Id$
- * $Date$
- *
- * Project: libLAS -- C/C++ read/write library for LAS LIDAR data
- * Purpose: LAS translation with optional configuration
- * Author:  Martin Isenburg isenburg at cs.unc.edu 
- ***************************************************************************
- * Copyright (c) 2007, Martin Isenburg isenburg at cs.unc.edu 
- *
- * See LICENSE.txt in this source distribution for more information.
- **************************************************************************/
-
-#include "liblas.h"
-#include "lascommon.h"
-
-/* std */
-#include <assert.h>
-#include <time.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#ifdef _WIN32
-#define compare_no_case(a,b,n)  _strnicmp( (a), (b), (n) )
-#else
-#define compare_no_case(a,b,n)  strncasecmp( (a), (b), (n) )
-#endif
-
-LASPointSummary* SummarizePoints(LASReaderH reader);
-void print_point_summary(FILE *file, LASPointSummary* summary, LASHeaderH header);
-void print_point(FILE *file, LASPointH point);
-void print_header(FILE *file, LASHeaderH header, const char* file_name, int bSkipVLR);
-void repair_header(FILE *file, LASHeaderH header, LASPointSummary* summary) ;
-
-#define LAS_FORMAT_10 0
-#define LAS_FORMAT_11 1
-#define LAS_FORMAT_12 2
-
-void do_bulk_copy(const char* infile, size_t in_start_point, const char* outfile)
-{
-    /* bulk copy assumes that the header has already been written to outfile 
-       as it is supposed to be, and that we're just going to copy all of the 
-       points in infile as they are.  
-    */
-    FILE* file_out = 0;
-    FILE* file_in = 0;
-    
-    size_t read = 0;
-    size_t written = 0;
-    size_t size = 1000;
-
-    char *buffer = 0;
-    
-    buffer = (char*) malloc(size * sizeof(char));
-    
-    if (buffer == 0) {
-        LASError_Print("unable to allocate buffer copy");
-        exit(1);
-    }
-    file_in = fopen(infile, "rb");
-    fseek(file_in, in_start_point, SEEK_SET);
-    
-    if (file_in == 0) {
-        LASError_Print("input filename not valid for bulk copy");
-        exit(1);
-    }
-    file_out = fopen(outfile, "ab+");
-    if (file_out == 0) {
-        LASError_Print("output filename not valid for bulk copy");
-        exit(1);
-    }
-    
-    while (feof(file_in) == 0) {
-        read = fread(buffer, 1, size, file_in);
-        written = fwrite(buffer, 1, read, file_out);
-        
-        if (read != written) {
-            LASError_Print("unable to write data in bulk copy");
-            exit(1);
-        }
-    }
-    
-    fclose(file_in);
-    fclose(file_out);
-    free(buffer);
-}
-
-
-void usage()
-{
-    fprintf(stderr,"----------------------------------------------------------\n");
-    fprintf(stderr,"    las2las-old (version %s) usage:\n", LAS_GetFullVersion());
-    fprintf(stderr,"----------------------------------------------------------\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Clip las file to a bounding box, throwing out points that have invalid data:\n");
-    fprintf(stderr,"  las2las-old -i in.las -clip 63000000 483450000 63050000 483500000 -o out.las --skip_invalid\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Read from stdin, eliminate intensities below 2000, and write to stdout:\n");
-    fprintf(stderr,"  las2las-old --eliminate_intensity_below 2000 --stdin --stdout < in.las > out.las \n");
-    fprintf(stderr,"\n");
-    
-    fprintf(stderr,"Eliminate return number two:\n");
-    fprintf(stderr,"  las2las-old -i in.las -eliminate_return 2 -o out.las\n");
-    fprintf(stderr,"\n");
-    
-    fprintf(stderr,"Eliminate scan angles above 15:\n");
-    fprintf(stderr,"  las2las-old -i in.las -eliminate_scan_angle_above 15 -o out.las\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Eliminate intensities below 1000:\n");
-    fprintf(stderr,"  las2las-old -i in.las -eliminate_intensity_below 1000 --stdout > out.las\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Eliminate intensities below 1000 and classifications that equal 2 (ground):\n");
-    fprintf(stderr,"  las2las-old -i in.las --eliminate_class 2 --out out.las\n");
-    fprintf(stderr,"\n");
-        
-    fprintf(stderr,"Capture only first returns and clip to bounding box:\n");
-    fprintf(stderr,"  las2las-old -i in.las -first_only -clip 63000000 483450000 63050000 483500000 -o out.las\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Capture only last returns, eliminate intensities below 2000, and write to stdout:\n");
-    fprintf(stderr,"  las2las-old --input in.las --last_only --eliminate_intensity_below 2000 --stdout > out.las\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Reproject the data (requires GDAL support):\n");
-    fprintf(stderr,"  las2las-old -v in.las output.las -xyz_offset 0 0 0 "
-                   "-t_srs EPSG:4326 --xyz_scale 0.0000001 0.0000001 0.0000001"
-                   "-s_srs EPSG:26915\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr, "\nFor more information, see the full documentation for las2las-old at:\n"
-                    " http://liblas.org/utilities/las2las-old.html\n");
-    fprintf(stderr,"----------------------------------------------------------\n");
-
-}
-
-void ptime(const char *const msg)
-{
-  float t= ((float)clock())/CLOCKS_PER_SEC;
-  fprintf(stderr, "cumulative CPU time thru %s = %f\n", msg, t);
-}
-
-int main(int argc, char *argv[])
-{
-    int i;
-    int verbose = FALSE;
-    int use_stdin = FALSE;
-    int use_stdout = FALSE;
-    char* file_name_in = 0;
-    char* file_name_out = 0;
-    char* proj4_text = NULL;
-    double *clip_xy_min = NULL;
-    double *clip_xy_max = NULL;
-    int clip = FALSE;
-    int remove_extra_header = FALSE;
-    int elim_return = 0;
-    int elim_scan_angle_above = 0;
-    int elim_intensity_below = 0;
-    int elim_class = 0;
-    int clsidx = 0;
-    int first_only = FALSE;
-    int last_only = FALSE;
-    int skip_invalid = FALSE;
-    int format = LAS_FORMAT_12;
-    int bulk_copy = FALSE;
-    
-    LASReaderH reader = NULL;
-    LASHeaderH header = NULL;
-    LASHeaderH surviving_header = NULL;
-    LASPointH p = NULL;
-    LASWriterH writer = NULL;
-    
-    LASSRSH in_srs = NULL;
-    LASSRSH out_srs = NULL;
-    int use_min_offset = FALSE;
-    int do_reprojection = FALSE;
-    int do_set_offset = FALSE;
-    int do_set_scale = FALSE;
-    int do_pad_header = FALSE;
-    
-    int header_pad = 0;
-    
-    int first_surviving_point = TRUE;
-    unsigned int surviving_number_of_point_records = 0;
-    unsigned int surviving_number_of_points_by_return[] = {0,0,0,0,0,0,0,0};
-    LASPointH surviving_point_min = NULL;
-    LASPointH surviving_point_max = NULL;
-    double surviving_gps_time_min;
-    double surviving_gps_time_max;
-    int verticalCSType = -1, verticalDatum = -1, verticalUnits = 9001;
-    const char *verticalCitation = "";
-
-    int clipped = 0;
-    int eliminated_return = 0;
-    int eliminated_scan_angle = 0;
-    int eliminated_intensity = 0;
-    int eliminated_class = 0;
-    int eliminated_first_only = 0;
-    int eliminated_last_only = 0; 
-    int thinned = 0;
-    
-    int bThin = FALSE;
-    int nThin = 0;
-
-    double xyz_scale[3] = {0.0, 0.0, 0.0};
-    double xyz_offset[3] = {0.0, 0.0, 0.0};
-    
-    double minx, maxx, miny, maxy, minz, maxz;
-    
-    LASPointSummary* summary = NULL;
-    
-    int ret = 0;
-    
-    for (i = 1; i < argc; i++) {
-        if (    strcmp(argv[i],"-h") == 0 ||
-                strcmp(argv[i],"--help") == 0
-            )
-        {
-            usage();
-            exit(0);
-        }
-        else if (   strcmp(argv[i],"-v") == 0 ||
-                    strcmp(argv[i],"--verbose") == 0
-            )
-        {
-            verbose = TRUE;
-        }
-        else if (   strcmp(argv[i],"-s") == 0 ||
-                    strcmp(argv[i],"--skip_invalid") == 0
-            )
-        {
-            skip_invalid = TRUE;
-        }
-        else if (   strcmp(argv[i],"-b") == 0 ||
-                    strcmp(argv[i],"--bulk") == 0
-            )
-        {
-            bulk_copy = TRUE;
-        }
-        
-        else if (   strcmp(argv[i],"--input") == 0  ||
-                    strcmp(argv[i],"-input") == 0   ||
-                    strcmp(argv[i],"-i") == 0       ||
-                    strcmp(argv[i],"-in") == 0
-                )
-        {
-            i++;
-            file_name_in = argv[i];
-        }
-        else if (   strcmp(argv[i],"--output") == 0  ||
-                    strcmp(argv[i],"--out") == 0     ||
-                    strcmp(argv[i],"-out") == 0     ||
-                    strcmp(argv[i],"-o") == 0       
-                )
-        {
-            i++;
-            file_name_out = argv[i];
-        }
-
-        else if (   strcmp(argv[i],"--stdout") == 0  ||
-                    strcmp(argv[i],"-olas") == 0    
-                )
-        {
-            use_stdout = TRUE;
-            file_name_out = "stdout";
-        }
-        else if (   strcmp(argv[i],"--clip") == 0   ||
-                    strcmp(argv[i],"-clip") == 0    ||
-                    strcmp(argv[i],"-clip_xy") == 0 
-                )
-        {
-            clip_xy_min = (double*) malloc (2 * sizeof(double));
-            clip_xy_max = (double*) malloc( 2 * sizeof(double));
-            i++;
-            clip_xy_min[0] = atof(argv[i]);
-            i++;
-            clip_xy_min[1] = atof(argv[i]);
-            i++;
-            clip_xy_max[0] = atof(argv[i]);
-            i++;
-            clip_xy_max[1] = atof(argv[i]);
-            clip = TRUE;
-        }
-        else if (   strcmp(argv[i],"--format") == 0   ||
-                    strcmp(argv[i],"-f") == 0    ||
-                    strcmp(argv[i],"-format") == 0 
-                )
-        {
-            i++;
-            if (strcmp(argv[i], "1.0") == 0) {
-                format = LAS_FORMAT_10;
-            }
-            else if (strcmp(argv[i], "1.1") == 0) {
-                format = LAS_FORMAT_11;
-            } 
-            else if (strcmp(argv[i], "1.2") == 0) {
-                format = LAS_FORMAT_12;
-            }
-            else {
-                LASError_Print("Format must be specified as 1.0, 1.1, or 1.2");
-            }
-
-        }
-
-        else if (   strcmp(argv[i],"--eliminate_return") == 0  ||
-                    strcmp(argv[i],"-eliminate_return") == 0   ||
-                    strcmp(argv[i],"-elim_return") == 0       ||
-                    strcmp(argv[i],"-elim_ret") == 0
-                )        
-        {
-            i++;
-            elim_return |= (1 << atoi(argv[i]));
-        }
-        else if (   strcmp(argv[i],"--eliminate_scan_angle_above") == 0  ||
-                    strcmp(argv[i],"-eliminate_scan_angle_above") == 0   ||
-                    strcmp(argv[i],"-elim_scan_angle_above") == 0       ||
-                    strcmp(argv[i],"--clip_scan_above") == 0
-                )        
-        {
-            i++;
-            elim_scan_angle_above = atoi(argv[i]);
-        }
-        else if (   strcmp(argv[i],"--eliminate_class") == 0  ||
-                    strcmp(argv[i],"-eliminate_class") == 0   ||
-                    strcmp(argv[i],"-elim_class") == 0       ||
-                    strcmp(argv[i],"--class") == 0
-                )        
-        {
-            i++;
-            elim_class = atoi(argv[i]);
-        }
-        else if (   strcmp(argv[i],"--eliminate_intensity_below") == 0  ||
-                    strcmp(argv[i],"-eliminate_intensity_below") == 0   ||
-                    strcmp(argv[i],"-elim_intensity_below") == 0       ||
-                    strcmp(argv[i],"--clip_intensity_below") == 0
-                )        
-        {
-            i++;
-            elim_intensity_below = atoi(argv[i]);
-        }
-        else if (   strcmp(argv[i], "--stdin") == 0 ||
-                    strcmp(argv[i], "-ilas") == 0
-                ) 
-        {
-            use_stdin = TRUE;
-        }
-        else if (   strcmp(argv[i], "--first_only") == 0 ||
-                    strcmp(argv[i], "-first_only") == 0
-                ) 
-        {
-            first_only = TRUE;
-        }
-        else if (   strcmp(argv[i], "--last_only") == 0 ||
-                    strcmp(argv[i], "-last_only") == 0
-                ) 
-        {
-            last_only = TRUE;
-        }
-        else if (   strcmp(argv[i], "--remove_extra_header") == 0 ||
-                    strcmp(argv[i], "-remove_extra_header") == 0
-                ) 
-        {
-            remove_extra_header = TRUE;
-        }
-        else if (   strcmp(argv[i],"--s_srs") == 0  ||
-                    strcmp(argv[i],"-s_srs") == 0    
-                )
-        {
-            ++i;
-            if (LAS_IsGDALEnabled()) {
-                in_srs = LASSRS_Create();
-                ret = LASSRS_SetFromUserInput(in_srs, argv[i]);
-                if (ret) {
-                    LASError_Print("Unable to import assigned SRS");
-                    exit(1);
-                }
-            }
-        }
-        else if (   strcmp(argv[i],"--t_srs") == 0  ||
-                    strcmp(argv[i],"-t_srs") == 0    ||
-                    strcmp(argv[i],"-t") == 0 
-                )
-        {
-            ++i;
-            if (LAS_IsGDALEnabled()) {
-                out_srs = LASSRS_Create();
-                ret = LASSRS_SetFromUserInput(out_srs, argv[i]);
-                if (ret) {
-                    LASError_Print("Unable to import output SRS");
-                    exit(1);
-                }
-                do_reprojection = TRUE;
-            }
-        }
-        else if (   strcmp(argv[i],"--a_srs") == 0  ||
-                    strcmp(argv[i],"-a_srs") == 0 
-                )
-        {
-            ++i;
-            if (LAS_IsGDALEnabled()) {
-                out_srs = LASSRS_Create();
-                ret = LASSRS_SetFromUserInput(out_srs, argv[i]);
-                if (ret) {
-                    LASError_Print("Unable to import output SRS");
-                    exit(1);
-                }
-            }
-        }
-        else if (   strcmp(argv[i],"--a_vertcs") == 0  ||
-                    strcmp(argv[i],"-a_vertcs") == 0 
-                )
-        {
-            ++i;
-            verticalCSType = atoi(argv[i]);
-            ++i;
-            if( i < argc && argv[i][0] != '-' )
-            {
-                verticalCitation = argv[i];
-                ++i;
-
-                if( i < argc && argv[i][0] != '-' )
-                {
-                    verticalDatum = atoi(argv[i]);
-                    ++i;
-                    if( i < argc && argv[i][0] != '-' )
-                    {
-                        verticalUnits = atoi(argv[i]);
-                        ++i;
-                    }
-                }
-            }
-        }
-        else if (   strcmp(argv[i],"--scale") == 0  ||
-                    strcmp(argv[i],"-scale") == 0    
-                )
-        {
-
-            i++;
-            sscanf(argv[i], "%lf", &(xyz_scale[2]));
-            xyz_scale[0] = xyz_scale[1] = xyz_scale[2];
-            do_set_scale = TRUE;
-        }
-        else if (   strcmp(argv[i],"--xyz_scale") == 0  ||
-                    strcmp(argv[i],"-xyz_scale") == 0    
-                )
-
-        {
-            i++;
-            sscanf(argv[i], "%lf", &(xyz_scale[0]));
-            i++;
-            sscanf(argv[i], "%lf", &(xyz_scale[1]));
-            i++;
-            sscanf(argv[i], "%lf", &(xyz_scale[2]));
-            do_set_scale = TRUE;
-        }
-        else if (   strcmp(argv[i],"--xyz_offset") == 0  ||
-                    strcmp(argv[i],"-xyz_offset") == 0    
-                )
-        {
-            i++;
-            if (!compare_no_case(argv[i], "min", 3)) {
-                use_min_offset = TRUE;
-                do_set_offset = TRUE;
-            } else
-            {
-                sscanf(argv[i], "%lf", &(xyz_offset[0]));
-                i++;
-                sscanf(argv[i], "%lf", &(xyz_offset[1]));
-                i++;
-                sscanf(argv[i], "%lf", &(xyz_offset[2]));
-                do_set_offset = TRUE;
-            }
-        }
-        else if (   strcmp(argv[i],"--pad-header") == 0  ||
-                    strcmp(argv[i],"-pad-header") == 0   ||
-                    strcmp(argv[i],"-ph") == 0 
-                )        
-        {
-            i++;
-            do_pad_header = TRUE;
-            header_pad = atoi(argv[i]);
-        }
-        else if (   strcmp(argv[i],"--thin") == 0  ||
-                    strcmp(argv[i],"-y") == 0    
-                )
-        {
-            i++;
-            bThin = TRUE;
-            nThin = atoi(argv[i]);
-        }
-        else if (file_name_in == NULL && file_name_out == NULL)
-        {
-            file_name_in = argv[i];
-        }
-        else if (file_name_in != NULL && file_name_out == NULL)
-        {
-            file_name_out = argv[i];
-        }
-        else 
-        {
-            fprintf(stderr, "ERROR: unknown argument '%s'\n",argv[i]);
-            usage();
-            exit(1);
-        }
-    }
-
-    if (use_stdin) file_name_in="stdin";
-    if (file_name_in)
-    {
-        reader = LASReader_Create(file_name_in);
-        if (!reader) { 
-            LASError_Print("Could not open file to read");
-            exit(1);
-        }
-    }
-    else
-    {
-        LASError_Print("no input specified");
-        usage();
-        exit(1);
-    }
-
-        
-    header = LASReader_GetHeader(reader);
-    if (!header) { 
-        LASError_Print("Could not fetch header");
-        exit(1);
-    } 
-
-    if (verbose) {
-        ptime("start.");
-        fprintf(stderr, "first pass reading %d points ...\n", LASHeader_GetPointRecordsCount(header));
-    }
-
-    p  = LASReader_GetNextPoint(reader);
-
-    if (!p) {
-        if (LASError_GetLastErrorNum()) 
-            LASError_Print("Not able to fetch a point.  LASReader is invalid");
-        else
-            LASError_Print("File does not contain any points to read.");
-        exit(1);
-    }
-    
-    i = 0;
-    while (p)
-    {
-        if (bThin && ((i % nThin) != 0)) {
-            thinned++;
-            i++;
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-        if (last_only && LASPoint_GetReturnNumber(p) != LASPoint_GetNumberOfReturns(p))
-        {
-            eliminated_last_only++;
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-        if (first_only && LASPoint_GetReturnNumber(p) != 1)
-        {
-            eliminated_first_only++;
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-    
-        if (clip && (LASPoint_GetX(p) < clip_xy_min[0] || LASPoint_GetY(p) < clip_xy_min[1]))
-        {
-            clipped++;
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-        if (clip && (LASPoint_GetX(p) > clip_xy_max[0] || LASPoint_GetY(p) > clip_xy_max[1]))
-        {
-            clipped++;
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        } 
-        if (elim_return && (elim_return & (1 << LASPoint_GetReturnNumber(p))))
-        {
-            eliminated_return++;
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-        if (elim_scan_angle_above && (LASPoint_GetScanAngleRank(p) > elim_scan_angle_above || LASPoint_GetScanAngleRank(p) < -elim_scan_angle_above))
-        {
-            eliminated_scan_angle++;
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-
-        clsidx = LASPoint_GetClassification(p);
-        clsidx = (clsidx & 31); /* 31 is max index in classification lookup table */
-        assert(clsidx <= 31);
-        if (elim_class && (elim_class == clsidx))
-        {
-            eliminated_class++;
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-
-        if (elim_intensity_below && LASPoint_GetIntensity(p) < elim_intensity_below)
-        {
-            eliminated_intensity++;
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-        surviving_number_of_point_records++;
-
-        if (LASPoint_GetReturnNumber(p))
-            surviving_number_of_points_by_return[LASPoint_GetReturnNumber(p)-1]++;
-        else
-            surviving_number_of_points_by_return[LASPoint_GetReturnNumber(p)]++;        
-
-        if (first_surviving_point)
-        {
-            surviving_point_min = LASPoint_Copy(p);
-            surviving_point_max = LASPoint_Copy(p);
-            surviving_gps_time_min = LASPoint_GetTime(p);
-            surviving_gps_time_max = LASPoint_GetTime(p);
-            first_surviving_point = FALSE;
-        }
-        else
-        {
-            if (LASPoint_GetX(p) < LASPoint_GetX(surviving_point_min))
-                LASPoint_SetX(surviving_point_min,LASPoint_GetX(p));
-            else if (LASPoint_GetX(p) > LASPoint_GetX(surviving_point_max)) 
-                LASPoint_SetX(surviving_point_max,LASPoint_GetX(p));
-
-            if (LASPoint_GetY(p) < LASPoint_GetY(surviving_point_min)) 
-                LASPoint_SetY(surviving_point_min,LASPoint_GetY(p));
-            else if (LASPoint_GetY(p) > LASPoint_GetY(surviving_point_max)) 
-                LASPoint_SetY(surviving_point_max,LASPoint_GetY(p));
-
-            if (LASPoint_GetZ(p) < LASPoint_GetZ(surviving_point_min))
-                LASPoint_SetZ(surviving_point_min,LASPoint_GetZ(p));
-            else if (LASPoint_GetZ(p) > LASPoint_GetZ(surviving_point_max))   
-                LASPoint_SetZ(surviving_point_max,LASPoint_GetZ(p));
-
-            if (LASPoint_GetIntensity(p) < LASPoint_GetIntensity(surviving_point_min)) 
-                LASPoint_SetIntensity(surviving_point_min,LASPoint_GetIntensity(p));
-            else if (LASPoint_GetIntensity(p) > LASPoint_GetIntensity(surviving_point_max)) 
-                LASPoint_SetIntensity(surviving_point_max,LASPoint_GetIntensity(p));
-
-            if (LASPoint_GetFlightLineEdge(p) < LASPoint_GetFlightLineEdge(surviving_point_min)) 
-                LASPoint_SetFlightLineEdge(surviving_point_min,LASPoint_GetFlightLineEdge(p));
-            else if (LASPoint_GetFlightLineEdge(p) > LASPoint_GetFlightLineEdge(surviving_point_max)) 
-                LASPoint_SetFlightLineEdge(surviving_point_max,LASPoint_GetFlightLineEdge(p));
-
-            if (LASPoint_GetScanDirection(p) < LASPoint_GetScanDirection(surviving_point_min)) 
-                LASPoint_SetScanDirection(surviving_point_min,LASPoint_GetScanDirection(p));
-            else if (LASPoint_GetScanDirection(p) > LASPoint_GetScanDirection(surviving_point_max)) 
-                LASPoint_SetScanDirection(surviving_point_max,LASPoint_GetScanDirection(p));
-
-            if (LASPoint_GetNumberOfReturns(p) < LASPoint_GetNumberOfReturns(surviving_point_min)) 
-                LASPoint_SetNumberOfReturns(surviving_point_min,LASPoint_GetNumberOfReturns(p));
-            else if (LASPoint_GetNumberOfReturns(p) > LASPoint_GetNumberOfReturns(surviving_point_max)) 
-                LASPoint_SetNumberOfReturns(surviving_point_max,LASPoint_GetNumberOfReturns(p));
-
-            if (LASPoint_GetReturnNumber(p) < LASPoint_GetReturnNumber(surviving_point_min)) 
-                LASPoint_SetReturnNumber(surviving_point_min,LASPoint_GetReturnNumber(p));
-            else if (LASPoint_GetReturnNumber(p) > LASPoint_GetReturnNumber(surviving_point_max)) 
-                LASPoint_SetReturnNumber(surviving_point_max,LASPoint_GetReturnNumber(p));
-
-            if (LASPoint_GetClassification(p) < LASPoint_GetClassification(surviving_point_min)) 
-                LASPoint_SetClassification(surviving_point_min,LASPoint_GetClassification(p));
-            else if (LASPoint_GetReturnNumber(p) > LASPoint_GetClassification(surviving_point_max)) 
-                LASPoint_SetClassification(surviving_point_max,LASPoint_GetClassification(p));
-
-            if (LASPoint_GetScanAngleRank(p) < LASPoint_GetScanAngleRank(surviving_point_min)) 
-                LASPoint_SetScanAngleRank(surviving_point_min,LASPoint_GetScanAngleRank(p));
-            else if (LASPoint_GetScanAngleRank(p) > LASPoint_GetScanAngleRank(surviving_point_max)) 
-                LASPoint_SetScanAngleRank(surviving_point_max,LASPoint_GetScanAngleRank(p));
-
-            if (LASPoint_GetUserData(p) < LASPoint_GetUserData(surviving_point_min)) 
-                LASPoint_SetUserData(surviving_point_min,LASPoint_GetUserData(p));
-            else if (LASPoint_GetUserData(p) > LASPoint_GetUserData(surviving_point_max)) 
-                LASPoint_SetUserData(surviving_point_max,LASPoint_GetUserData(p));
-
-            if (LASPoint_GetTime(p) < LASPoint_GetTime(surviving_point_min)) 
-                LASPoint_SetTime(surviving_point_min,LASPoint_GetTime(p));
-            else if (LASPoint_GetTime(p) > LASPoint_GetTime(surviving_point_max)) 
-                LASPoint_SetTime(surviving_point_max,LASPoint_GetTime(p));
-
-        }
-  
-        p  = LASReader_GetNextPoint(reader);
-        i++;
-    }
-
-    if (eliminated_first_only) 
-        fprintf(stderr, 
-                "eliminated based on first returns only: %d\n",
-                eliminated_first_only);
-    if (eliminated_last_only) 
-        fprintf(stderr, 
-                "eliminated based on last returns only: %d\n", 
-                eliminated_last_only);
-    if (eliminated_class) 
-        fprintf(stderr, 
-                "eliminated classification: %d\n", 
-                eliminated_class);
-    if (clipped) 
-        fprintf(stderr, 
-                "clipped: %d\n", 
-                clipped);
-    if (eliminated_return) 
-        fprintf(stderr, 
-                "eliminated based on return number: %d\n", 
-                eliminated_return);
-    if (eliminated_scan_angle) 
-        fprintf(stderr, 
-                "eliminated based on scan angle: %d\n", 
-                eliminated_scan_angle);
-    if (eliminated_intensity) 
-        fprintf(stderr, 
-        "eliminated based on intensity: %d\n", 
-        eliminated_intensity);
-
-    if (bThin) 
-        fprintf(stderr, 
-        "thinned: %d\n", 
-        thinned);
-    
-    if (surviving_number_of_point_records == 0) {
-        fprintf(stderr, "All points were eliminated!\n");
-        exit(0);
-    }
-    
-    LASReader_Destroy(reader);
-    LASHeader_Destroy(header);
-  
-    if (verbose)
-    {
-        fprintf(stderr, 
-                "x %.3f %.3f %.3f\n",
-                LASPoint_GetX(surviving_point_min), 
-                LASPoint_GetX(surviving_point_max), 
-                LASPoint_GetX(surviving_point_max) - LASPoint_GetX(surviving_point_min)
-                );
-        fprintf(stderr, 
-                "y %.3f %.3f %.3f\n",
-                LASPoint_GetY(surviving_point_min), 
-                LASPoint_GetY(surviving_point_max), 
-                LASPoint_GetY(surviving_point_max) - LASPoint_GetY(surviving_point_min)
-                );
-        fprintf(stderr, 
-                "z %.3f %.3f %.3f\n",
-                LASPoint_GetZ(surviving_point_min), 
-                LASPoint_GetZ(surviving_point_max), 
-                LASPoint_GetZ(surviving_point_max) - LASPoint_GetZ(surviving_point_min)
-                );
-        fprintf(stderr, 
-                "intensity %d %d %d\n",
-                LASPoint_GetIntensity(surviving_point_min), 
-                LASPoint_GetIntensity(surviving_point_max), 
-                LASPoint_GetIntensity(surviving_point_max) - LASPoint_GetIntensity(surviving_point_min)
-                );
-        fprintf(stderr, 
-                "edge_of_flight_line %d %d %d\n",
-                LASPoint_GetFlightLineEdge(surviving_point_min), 
-                LASPoint_GetFlightLineEdge(surviving_point_max), 
-                LASPoint_GetFlightLineEdge(surviving_point_max) - LASPoint_GetFlightLineEdge(surviving_point_min)
-                );
-        fprintf(stderr, 
-                "scan_direction_flag %d %d %d\n",
-                LASPoint_GetScanDirection(surviving_point_min), 
-                LASPoint_GetScanDirection(surviving_point_max), 
-                LASPoint_GetScanDirection(surviving_point_max) - LASPoint_GetScanDirection(surviving_point_min)
-                );
-        fprintf(stderr, 
-                "number_of_returns_of_given_pulse %d %d %d\n",
-                LASPoint_GetNumberOfReturns(surviving_point_min), 
-                LASPoint_GetNumberOfReturns(surviving_point_max), 
-                LASPoint_GetNumberOfReturns(surviving_point_max) - LASPoint_GetNumberOfReturns(surviving_point_min)
-                );
-        fprintf(stderr, 
-                "return_number %d %d %d\n",
-                LASPoint_GetReturnNumber(surviving_point_min), 
-                LASPoint_GetReturnNumber(surviving_point_max), 
-                LASPoint_GetReturnNumber(surviving_point_max) - LASPoint_GetReturnNumber(surviving_point_min)
-                );
-        fprintf(stderr, 
-                "classification %d %d %d\n",
-                LASPoint_GetClassification(surviving_point_min), 
-                LASPoint_GetClassification(surviving_point_max), 
-                LASPoint_GetClassification(surviving_point_max) - LASPoint_GetClassification(surviving_point_min)
-                );
-        fprintf(stderr, 
-                "scan_angle_rank %d %d %d\n",
-                LASPoint_GetScanAngleRank(surviving_point_min), 
-                LASPoint_GetScanAngleRank(surviving_point_max), 
-                LASPoint_GetScanAngleRank(surviving_point_max) - LASPoint_GetScanAngleRank(surviving_point_min)
-                );
-        fprintf(stderr, 
-                "user_data %d %d %d\n",
-                LASPoint_GetUserData(surviving_point_min), 
-                LASPoint_GetUserData(surviving_point_max), 
-                LASPoint_GetUserData(surviving_point_max) - LASPoint_GetUserData(surviving_point_min)
-                );
-        fprintf(stderr, 
-                "gps_time %.8f %.8f %.8f\n",
-                LASPoint_GetTime(surviving_point_min), 
-                LASPoint_GetTime(surviving_point_max), 
-                LASPoint_GetTime(surviving_point_max) - LASPoint_GetTime(surviving_point_min)
-                );
-
-    }
-
-    if (file_name_out == NULL && !use_stdout)
-    {
-        LASError_Print("no output specified. exiting...");
-        exit(1);
-    }
-
-
-    fprintf(stderr, "Creating another reader...\n");
-    if (file_name_in)
-    {
-        reader = LASReader_Create(file_name_in);
-      if (!reader) { 
-          LASError_Print("Could not open file to read");
-          exit(1);
-      } 
-    }
-    else
-    {
-        LASError_Print("no input specified");
-        usage();
-        exit(1);
-    }
-
-    
-    header = LASReader_GetHeader(reader);
-    if (!header) { 
-        LASError_Print("Could not read header");
-        exit(1);
-    } 
-
-
-    surviving_header = LASHeader_Copy(header);
-
-    LASHeader_SetPointRecordsCount(surviving_header, surviving_number_of_point_records);
-    LASHeader_SetSystemId(surviving_header, "MODIFICATION");
-
-    for (i = 0; i < 5; i++) LASHeader_SetPointRecordsByReturnCount(surviving_header, i, surviving_number_of_points_by_return[i]);
-
-    minx =  LASPoint_GetX(surviving_point_min) * \
-            LASHeader_GetScaleX(surviving_header) + \
-            LASHeader_GetOffsetX(surviving_header);
-            
-    maxx = LASPoint_GetX(surviving_point_max) * LASHeader_GetScaleX(surviving_header) + LASHeader_GetOffsetX(surviving_header);
-
-    miny = LASPoint_GetY(surviving_point_min) * LASHeader_GetScaleY(surviving_header) + LASHeader_GetOffsetY(surviving_header);
-    maxy = LASPoint_GetY(surviving_point_max) * LASHeader_GetScaleY(surviving_header) + LASHeader_GetOffsetY(surviving_header);
-
-    minz = LASPoint_GetZ(surviving_point_min) * LASHeader_GetScaleZ(surviving_header) + LASHeader_GetOffsetZ(surviving_header);
-    maxz = LASPoint_GetZ(surviving_point_max) * LASHeader_GetScaleZ(surviving_header) + LASHeader_GetOffsetZ(surviving_header);
-    
-    if (format == LAS_FORMAT_10) {
-        LASHeader_SetVersionMinor(surviving_header, 0);
-    } else if (format == LAS_FORMAT_11){
-        LASHeader_SetVersionMinor(surviving_header, 1);
-    } else if (format == LAS_FORMAT_12) {
-        LASHeader_SetVersionMinor(surviving_header, 2);
-    }
-
-    if (do_set_offset) {
-        if (use_min_offset) {
-            if (verbose) {
-                fprintf(stderr, 
-                    "Setting xyz offset to minimums...\n");
-            }
-            LASHeader_SetOffset(surviving_header, 
-                                LASPoint_GetX(surviving_point_min), 
-                                LASPoint_GetY(surviving_point_min), 
-                                LASPoint_GetZ(surviving_point_min));
-        } else {
-            if (verbose) {
-                fprintf(stderr, 
-                    "Setting xyz offset to %.8f %.8f %.8f...\n", xyz_offset[0], xyz_offset[1], xyz_offset[2]);
-            }
-            LASHeader_SetOffset(surviving_header,
-                                xyz_offset[0],
-                                xyz_offset[1],
-                                xyz_offset[2]);
-        }
-    }
-
-    if (do_set_scale) {
-        if (verbose) {
-            fprintf(stderr, 
-                "Setting xyz scale to %.8f %.8f %.8f...\n", xyz_scale[0], xyz_scale[1], xyz_scale[2]);
-        }
-        LASHeader_SetScale( surviving_header, 
-                            xyz_scale[0],
-                            xyz_scale[1],
-                            xyz_scale[2]);
-    }
-    
-    if (do_pad_header){
-        if (verbose) {
-            fprintf(stderr, 
-                "Padding header by %d bytes. New header will be %d bytes long instead of %d bytes ...\n", 
-                header_pad, 
-                LASHeader_GetDataOffset(surviving_header)+abs(header_pad), 
-                LASHeader_GetDataOffset(surviving_header));
-        }
-        
-        LASHeader_SetDataOffset(surviving_header, LASHeader_GetDataOffset(surviving_header)+abs(header_pad));
-    }
-    
-    /* Do we have vertical cs info to set? */
-    if( verticalCSType > 0 )
-    {
-        if( out_srs == NULL )
-            out_srs = LASHeader_GetSRS(surviving_header);
-
-        if( out_srs == NULL )
-            out_srs = LASSRS_Create();
-
-        LASSRS_SetVerticalCS( out_srs,
-                              verticalCSType, 
-                              verticalCitation, 
-                              verticalDatum, 
-                              verticalUnits );
-    }
-
-    if (do_reprojection) {
-        if (verbose) {
-            proj4_text =  LASSRS_GetProj4(out_srs);
-            fprintf(stderr,
-                "Setting new coordinate system to %s", proj4_text);
-            LASString_Free(proj4_text);
-        }
-        
-        /* keep around the header's SRS if we don't have one set by the user */
-        if (in_srs == NULL) {
-            in_srs = LASHeader_GetSRS(surviving_header);
-        }
-        
-        LASHeader_SetSRS(surviving_header, out_srs);
-    }
-
-    /* Are we just assigning an override SRS? (-a_srs) */
-    else if( out_srs != NULL )
-    {
-        LASHeader_SetSRS(surviving_header, out_srs);
-    }
-
-    if (verbose) {
-        fprintf(stderr, 
-                "second pass reading %d and writing %d points ...\n", 
-                LASHeader_GetPointRecordsCount(surviving_header), 
-                surviving_number_of_point_records);
-    }
-    
-    
-    if (use_stdout) file_name_out = "stdout";
-    
-    writer = LASWriter_Create(  file_name_out, 
-                                surviving_header, 
-                                LAS_MODE_WRITE);
-    if (!writer) { 
-        LASError_Print("Could not open file to write");
-        exit(1);
-    }  
-
-    if (do_reprojection) {
-        if (in_srs != NULL) {
-            char* in_wkt = LASSRS_GetWKT(in_srs);
-            if (strlen(in_wkt) == 0) {
-                LASString_Free(in_wkt);
-                LASError_Print("Input SRS is empty, please specify with -s_srs");
-                exit(1);
-            }
-            LASString_Free(in_wkt);
-            LASWriter_SetInputSRS(writer, in_srs);
-        } else {
-            
-        }
-    
-        if (out_srs != NULL) {
-            if (verbose) {
-                fprintf(stderr,
-                    "Setting LASWriter_SetOutputSRS to %s", LASSRS_GetProj4(out_srs));
-            }
-            LASWriter_SetOutputSRS(writer, out_srs);
-        }
-    }
-/*
-
-  if (!remove_extra_header)
-  {
-    for (unsigned int u = lasreader->header.header_size; u < lasreader->header.offset_to_point_data; u++)
-    {
-      fputc(fgetc(file_in),file_out);
-    }
-  }
-*/
-
-    
-    LASReader_Destroy(reader);
-    reader = NULL;
-    if (file_name_in)
-    {
-        reader = LASReader_Create(file_name_in);
-        if (!reader) { 
-            LASError_Print("Could not open file to read");
-            exit(1);
-        } 
-    }
-    else
-    {
-        LASError_Print("no input specified");
-        usage();
-        exit(1);
-    }
-
-    
-    p = LASReader_GetNextPoint(reader);
-    if (!p) {
-        if (LASError_GetLastErrorNum()) 
-            LASError_Print("Not able to fetch a point.  LASReader is invalid");
-        else
-            LASError_Print("File does not contain any points to read.");
-        exit(1);
-    }
-    
-    i = 0;
-    while (p) {
-
-        if (bThin && ((i % nThin) != 0)) {
-            i++;
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-        
-        if (skip_invalid && !LASPoint_IsValid(p)) {
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-        if (last_only && LASPoint_GetReturnNumber(p) != LASPoint_GetNumberOfReturns(p))
-        {
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-        if (first_only && LASPoint_GetReturnNumber(p) != 1)
-        {
-            p = LASReader_GetNextPoint(reader);
-            continue;
-
-        }
-        if (clip_xy_min && (LASPoint_GetX(p) < clip_xy_min[0] || LASPoint_GetY(p) < clip_xy_min[1]))
-        {
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-        if (clip_xy_max && (LASPoint_GetX(p) > clip_xy_max[0] || LASPoint_GetY(p) > clip_xy_max[1]))
-        {
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-        if (elim_return && (elim_return & (1 << LASPoint_GetReturnNumber(p))))
-        {
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-        if (elim_scan_angle_above && (LASPoint_GetScanAngleRank(p) > elim_scan_angle_above || LASPoint_GetScanAngleRank(p) < -elim_scan_angle_above))
-        {
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-        if (elim_intensity_below && LASPoint_GetIntensity(p) < elim_intensity_below)
-        {
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-
-        clsidx = LASPoint_GetClassification(p);
-        clsidx = (clsidx & 31); /* 31 is max index in classification lookup table */
-        assert(clsidx <= 31);
-        if (elim_class && (elim_class == clsidx))
-        {
-            p = LASReader_GetNextPoint(reader);
-            continue;
-        }
-        ret = LASWriter_WritePoint(writer,p);
-        
-        if (ret == LE_Warning) {
-            LASError_Print("Unable to write invalid point.  Use --skip_invalid to avoid this problem (you will lose data in the translation)");
-            exit(1);
-        }
-        p  = LASReader_GetNextPoint(reader);
-        i++;
-    }
-
-    LASWriter_Destroy(writer);
-    LASReader_Destroy(reader);
-    LASHeader_Destroy(header);
-    LASHeader_Destroy(surviving_header);
-
-    if (surviving_point_max != NULL)
-        LASPoint_Destroy(surviving_point_max);
-    if (surviving_point_min != NULL)
-        LASPoint_Destroy(surviving_point_min);
-
-    reader = LASReader_Create(file_name_out);
-    if (!reader) { 
-        LASError_Print("Could not open file to read");
-        exit(1);
-    }
-
-    header = LASReader_GetHeader(reader);
-    if (!header) { 
-        LASError_Print("Could not read header");
-        exit(1);
-    }
-
-    
-    summary = SummarizePoints(reader);
-    if (verbose) {
-        print_point_summary(stderr, summary, header);
-    }
-    repair_header(stderr, header, summary) ;
-
-    if (summary != NULL) {
-        if (summary->pmin != NULL)
-            LASPoint_Destroy(summary->pmin);
-        if (summary->pmax != NULL)
-            LASPoint_Destroy(summary->pmax);
-        free(summary);
-    }
-
-    if (reader != NULL) {
-        LASReader_Destroy(reader);
-        reader = NULL;
-    }
-    
-    writer = LASWriter_Create(file_name_out, header, LAS_MODE_APPEND);
-    if (!writer) {
-        LASError_Print("Problem creating LASWriterH object for append");
-        LASHeader_Destroy(header);
-        header = NULL;
-        exit(1);
-    }
-    LASWriter_Destroy(writer);
-    writer = NULL;
-    LASHeader_Destroy(header);
-    header = NULL;
-    
-    if (out_srs != NULL)
-        LASSRS_Destroy(out_srs);
-    
-    if (in_srs != NULL)
-        LASSRS_Destroy(in_srs);
-
-    if (verbose) ptime("done.");
-
-    return 0;
-}
diff --git a/apps/las2las.cpp b/apps/las2las.cpp
old mode 100644
new mode 100755
diff --git a/apps/las2ogr.cpp b/apps/las2ogr.cpp
old mode 100644
new mode 100755
diff --git a/apps/las2txt.c b/apps/las2txt.c
old mode 100644
new mode 100755
index 05b0f87..0d75f9f
--- a/apps/las2txt.c
+++ b/apps/las2txt.c
@@ -184,7 +184,7 @@ int main(int argc, char *argv[])
             }
             else
             {
-                fprintf(stderr, "ERROR: unknown seperator '%s'\n",argv[i]);
+                fprintf(stderr, "ERROR: unknown separator '%s'\n",argv[i]);
                 usage();
                 exit(1);
             }
diff --git a/apps/las2txt.cpp b/apps/las2txt.cpp
old mode 100644
new mode 100755
diff --git a/apps/lasblock.cpp b/apps/lasblock.cpp
old mode 100644
new mode 100755
index d0f9778..c573e0b
--- a/apps/lasblock.cpp
+++ b/apps/lasblock.cpp
@@ -69,7 +69,7 @@ void OutputHelp( std::ostream & oss, po::options_description const& options)
 
     oss <<"\nFor more information, see the full documentation for lasblock at:\n";
     
-    oss << " http://liblas.org/utilities/block.html\n";
+    oss << " http://liblas.org/utilities/lasblock.html\n";
     oss << "----------------------------------------------------------\n";
 
 }
diff --git a/apps/lascommon.c b/apps/lascommon.c
old mode 100644
new mode 100755
diff --git a/apps/lascommon.h b/apps/lascommon.h
old mode 100644
new mode 100755
diff --git a/apps/lasdiff.c b/apps/lasdiff.c
old mode 100644
new mode 100755
diff --git a/apps/lasindex.cpp b/apps/lasindex.cpp
old mode 100644
new mode 100755
diff --git a/apps/lasindex_test.cpp b/apps/lasindex_test.cpp
old mode 100644
new mode 100755
diff --git a/apps/lasinfo-old.c b/apps/lasinfo-old.c
deleted file mode 100644
index 98c9cf7..0000000
--- a/apps/lasinfo-old.c
+++ /dev/null
@@ -1,420 +0,0 @@
-/***************************************************************************
-* $Id$
-* $Date$
-*
-* Project: libLAS -- C/C++ read/write library for LAS LIDAR data
-* Purpose: LAS information reporting and setting
-* Author:  Martin Isenburg isenburg at cs.unc.edu 
-***************************************************************************
-* Copyright (c) 2007, Martin Isenburg isenburg at cs.unc.edu 
-*
-* See LICENSE.txt in this source distribution for more information.
-**************************************************************************/
-
-/* TODO: Remove before releasing */
-#if defined(_MSC_VER) && defined(USE_VLD)
-#include <vld.h>
-#endif
-
-/* liblas */
-#include <liblas.h>
-/* std */
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#ifdef HAVE_GDAL
-#include <cpl_multiproc.h>
-#include <cpl_string.h>
-#endif
-
-#include "lascommon.h"
-
-LASPointSummary* SummarizePoints(LASReaderH reader);
-void print_point_summary(FILE *file, LASPointSummary* summary, LASHeaderH header);
-void print_header(FILE *file, LASHeaderH header, const char* file_name, int bSkipVLR, int bWKT);
-
-void usage()
-{
-    char* version = LAS_GetFullVersion();
-    fprintf(stderr,"----------------------------------------------------------\n");
-    fprintf(stderr,"    lasinfo-old (version %s) usage:\n", version);
-    fprintf(stderr,"----------------------------------------------------------\n");
-    fprintf(stderr,"\n");
-    LASString_Free(version);
-    version = NULL;
-
-    fprintf(stderr,"Printing simple header info:\n");
-    fprintf(stderr,"  lasinfo-old lidar.las\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Checking point information:\n");
-    fprintf(stderr,"  lasinfo-old --input lidar.las --check\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Print header info and point summary and redirect output to a file:\n");
-    fprintf(stderr,"  lasinfo-old --check --input lidar.las 2> output.txt\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Read from stdin, scan the points, and skip printing VLR info:\n");
-    fprintf(stderr,"  lasinfo-old --stdin --check --skip_vlr < lidar.las\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Repairing header info to reflect point data:\n");
-    fprintf(stderr,"  lasinfo-old -i lidar.las --repair\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Altering header info:\n");
-    fprintf(stderr, "  lasinfo-old -i lidar.las --system_identifier \"hello world!\" "
-                    "--generating_software \"this is a test (-:\"  --file_creation 8 2007\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Print this output:\n");
-    fprintf(stderr, "  lasinfo-old --help\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr, "\nFor more information, see the full documentation for lasinfo-old at:\n"
-                    " http://liblas.org/utilities/lasinfo-old.html\n");
-    fprintf(stderr,"----------------------------------------------------------\n");
-}
-
-int main(int argc, char *argv[])
-{
-    int i = 0;
-    char* file_name = NULL;
-
-    LASReaderH reader = NULL;
-    LASHeaderH header = NULL;
-    LASWriterH writer = NULL;
-
-    int check_points = FALSE;
-    int repair_header = FALSE;
-    int change_header = FALSE;
-    int repair_bounding_box = FALSE;
-    int use_stdin = FALSE;
-    int update_return_counts = FALSE;
-    int skip_vlr = FALSE;
-    int wkt = FALSE;
-
-    char *system_identifier = NULL;
-    char *generating_software = NULL;
-    unsigned char file_creation_day = 0;
-    unsigned char file_creation_year = 0;
-
-    int err = 0;
-
-    LASPointSummary* summary = NULL;
-
-    for (i = 1; i < argc; i++)
-    {
-        if (strcmp(argv[i],"-v") == 0 || strcmp(argv[i],"--version") == 0)
-        {
-            char* ver = LAS_GetFullVersion();
-            fprintf(stderr,"%s", ver);
-            LASString_Free(ver);
-            exit(0);
-        }
-        else if (strcmp(argv[i],"-h") == 0 || strcmp(argv[i],"--help") == 0)
-        {
-            usage();
-            exit(0);
-        }
-        else if (strcmp(argv[i],"--input") == 0
-              || strcmp(argv[i],"-input") == 0
-              || strcmp(argv[i],"-i") == 0
-              || strcmp(argv[i],"-in") == 0)
-        {
-            i++;
-            file_name = argv[i];
-        }
-        else if (strcmp(argv[i], "--points") == 0
-              || strcmp(argv[i], "--check") == 0
-              || strcmp(argv[i], "--check_points") == 0
-              || strcmp(argv[i], "-c") == 0
-              || strcmp(argv[i], "-points") == 0
-              || strcmp(argv[i], "-check") == 0
-              || strcmp(argv[i], "-check_points") == 0)
-        {
-            check_points = TRUE;
-        }
-        else if (strcmp(argv[i], "--nocheck") == 0
-              || strcmp(argv[i], "-nocheck") == 0)
-        {
-            check_points = FALSE;
-        }
-        else if (strcmp(argv[i], "--stdin") == 0
-              || strcmp(argv[i], "-ilas") == 0) 
-        {
-            use_stdin = TRUE;
-        }
-        else if (strcmp(argv[i], "--repair") == 0
-              || strcmp(argv[i], "-r") == 0
-              || strcmp(argv[i], "-repair_header") == 0
-              || strcmp(argv[i], "-repair") == 0) 
-        {
-            repair_header = TRUE;
-            check_points = TRUE;
-        }
-        else if (strcmp(argv[i], "--repair_bb") == 0
-              || strcmp(argv[i], "--repair_bounding_box") == 0
-              || strcmp(argv[i], "--repair_boundingbox") == 0
-              || strcmp(argv[i], "-repair_bb") == 0
-              || strcmp(argv[i], "-repair_bounding_box") == 0
-              || strcmp(argv[i], "-repair_boundingbox") == 0
-              || strcmp(argv[i], "-repair") == 0
-              || strcmp(argv[i], "-rb") == 0) 
-        {
-            repair_bounding_box = TRUE;
-            check_points = TRUE;
-        }
-
-        else if (strcmp(argv[i],"--system_identifier") == 0
-              || strcmp(argv[i],"-system_identifier") == 0
-              || strcmp(argv[i],"-s") == 0
-              || strcmp(argv[i],"-sys_id") == 0)
-        {
-            i++;
-            system_identifier = (char*) malloc(31 * sizeof(char));
-            strcpy(system_identifier, argv[i]);
-            change_header = TRUE;
-        }
-
-        else if (strcmp(argv[i],"--generating_software") == 0
-              || strcmp(argv[i],"-generating_software") == 0
-              || strcmp(argv[i],"-g") == 0
-              || strcmp(argv[i],"-gen_soft") == 0)
-        {
-            i++;
-            generating_software = (char*) malloc(31*sizeof(char));
-            strcpy(generating_software, argv[i]);
-            change_header = TRUE;
-        }
-        else if (strcmp(argv[i],"--file_creation") == 0
-              || strcmp(argv[i],"-file_creation") == 0)
-        {
-            /* XXX - mloskot: Consider replacing atoi with strtol,
-            see http://www.iso-9899.info/wiki/Converting */
-            i++;
-            file_creation_day = (unsigned char)atoi(argv[i]);
-            i++;
-            file_creation_year = (unsigned char)atoi(argv[i]);
-            change_header = TRUE;
-        }
-        else if (strcmp(argv[i],"--skip_vlr") == 0 || strcmp(argv[i],"--no_vlr") == 0)
-        {
-            skip_vlr = TRUE;
-        }
-        else if (strcmp(argv[i],"--wkt") == 0)
-        {
-            wkt = TRUE;
-        }    
-        else if (file_name == NULL)
-        {
-            file_name = argv[i];
-        } 
-        else
-        {
-            usage();
-            fprintf(stderr, "ERROR: unknown argument '%s'\n",argv[i]);
-            exit(1);
-        }
-    }
-
-    if (use_stdin) {
-        file_name = "stdin";
-    }
-
-    if (!file_name) {
-        LASError_Print("No filename was provided to be opened");
-        usage();
-        exit(1);
-    }
-
-    reader = LASReader_Create(file_name);
-    if (!reader) { 
-        LASError_Print("Could not open file ");
-        exit(1);
-    } 
-
-    header = LASReader_GetHeader(reader);
-    if (!header) { 
-        LASError_Print("Could not get LASHeader ");
-        exit(1);
-    } 
-
-    print_header(stdout, header, file_name, skip_vlr, wkt);
-
-    if (change_header) {
-        if (system_identifier) {
-            err = LASHeader_SetSystemId (header, system_identifier);
-            if (err) LASError_Print("Could not set SystemId");
-        }
-        if (generating_software) {
-            err = LASHeader_SetSoftwareId(header, generating_software);
-            if (err) LASError_Print("Could not set SoftwareId");
-        }
-        if ( file_creation_day || file_creation_year) {
-            err = LASHeader_SetCreationDOY(header, file_creation_day);
-            if (err) LASError_Print("Could not set file creation day");
-            err = LASHeader_SetCreationYear(header, file_creation_year);
-            if (err) LASError_Print("Could not set file creation year");
-        }
-
-        /* We need to wipe out the reader and make a writer. */
-        if (reader) {
-            LASReader_Destroy(reader);
-            reader = NULL;
-        }
-
-        writer = LASWriter_Create(file_name, header, LAS_MODE_APPEND);
-        if (!writer) {
-            LASError_Print("Problem creating LASWriterH object");
-            LASHeader_Destroy(header);
-            header = NULL;
-            exit(1);
-        }
-
-        if (writer) LASWriter_Destroy(writer);
-        writer = NULL;
-        if (header) LASHeader_Destroy(header);
-        header = NULL;
-    }
-
-    if (check_points)
-    {
-        if (!reader) {
-            reader = LASReader_Create(file_name);
-            if (!reader) { 
-                LASError_Print("Could not open file ");
-                exit(1);
-            } 
-        }
-
-        if (! header) {
-            header = LASReader_GetHeader(reader);
-            if (!header) { 
-                LASError_Print("Could not get LASHeader ");
-                exit(1);
-            } 
-        } 
-
-        if (!summary)
-            summary = SummarizePoints(reader);
-        print_point_summary(stdout, summary, header);
-
-        if (repair_header) {
-            fprintf(stdout, "\n---------------------------------------------------------\n");
-            fprintf(stdout, "  Repair Summary\n");
-            fprintf(stdout, "---------------------------------------------------------\n");
-
-            if (use_stdin) {
-                LASError_Print("Cannot update header information on piped input!");
-                exit(1);
-            }
-
-            if (! header) {
-                header = LASReader_GetHeader(reader);
-                if (!header) { 
-                    LASError_Print("Could not get LASHeader ");
-                    exit(1);
-                }
-            } 
-
-            if (! repair_bounding_box) {
-                if ( LASHeader_GetMinX(header) != LASPoint_GetX(summary->pmin) )
-                    repair_bounding_box = TRUE;
-                if ( LASHeader_GetMinY(header) != LASPoint_GetY(summary->pmin) )
-                    repair_bounding_box = TRUE;
-                if ( LASHeader_GetMinZ(header) != LASPoint_GetZ(summary->pmin) )
-                    repair_bounding_box = TRUE;
-
-                if ( LASHeader_GetMaxX(header) != LASPoint_GetX(summary->pmax) )
-                    repair_bounding_box = TRUE;
-                if ( LASHeader_GetMaxY(header) != LASPoint_GetY(summary->pmax) )
-                    repair_bounding_box = TRUE;
-                if ( LASHeader_GetMaxZ(header) != LASPoint_GetZ(summary->pmax) )
-                    repair_bounding_box = TRUE;
-            }
-
-            if (repair_bounding_box) {
-                fprintf(stdout, "  Reparing Bounding Box...\n");
-                err = LASHeader_SetMin( header, 
-                    LASPoint_GetX(summary->pmin), 
-                    LASPoint_GetY(summary->pmin), 
-                    LASPoint_GetZ(summary->pmin)
-                    );
-                if (err) {
-                    LASError_Print("Could not set minimum for header ");
-                    exit(1);
-                }
-                err = LASHeader_SetMax( header, 
-                    LASPoint_GetX(summary->pmax), 
-                    LASPoint_GetY(summary->pmax), 
-                    LASPoint_GetZ(summary->pmax)
-                    );
-                if (err) {
-                    LASError_Print("Could not set minimum for header ");
-                    exit(1);
-                }
-            }
-
-            for (i = 0; i < 5; i++) {
-
-                if (LASHeader_GetPointRecordsByReturnCount(header, i) != 
-                    summary->number_of_points_by_return[i]) 
-                {
-                    update_return_counts = TRUE;
-                    break;
-                }
-            }
-
-            if (update_return_counts) {
-                fprintf(stdout, "  Reparing Point Count by Return...\n");
-                for (i = 0; i < 5; i++) {
-                    LASHeader_SetPointRecordsByReturnCount( header,  
-                        i, 
-                        summary->number_of_points_by_return[i]);
-                }                
-            }
-
-            if (reader) {
-                LASReader_Destroy(reader);
-                reader = NULL;
-            }
-
-            writer = LASWriter_Create(file_name, header, LAS_MODE_APPEND);
-            if (!writer) {
-                LASError_Print("Problem creating LASWriterH object for append");
-                LASHeader_Destroy(header);
-                header = NULL;
-                exit(1);
-            }
-            LASWriter_Destroy(writer);
-            writer = NULL;
-            LASHeader_Destroy(header);
-            header = NULL;            
-        }
-
-        if (summary) {
-            LASPoint_Destroy(summary->pmin);
-            LASPoint_Destroy(summary->pmax);
-            free(summary);
-
-        }
-    }   
-
-    if (reader) LASReader_Destroy(reader);
-    if (header) LASHeader_Destroy(header);
-
-#ifdef HAVE_GDAL
-    /* Various GDAL related cleanups */
-#ifdef OSRCleanup
-    OSRCleanup();
-#endif
-    CPLFinderClean();
-    CPLFreeConfig();
-    CPLCleanupTLS();
-#endif
-
-    return 0;
-}
diff --git a/apps/lasinfo.cpp b/apps/lasinfo.cpp
old mode 100644
new mode 100755
diff --git a/apps/laskernel.cpp b/apps/laskernel.cpp
old mode 100644
new mode 100755
index e68437a..4c2ec0d
--- a/apps/laskernel.cpp
+++ b/apps/laskernel.cpp
@@ -1,4 +1,3 @@
-
 #include "laskernel.hpp"
 
 bool OptechScanAngleFixer::transform(liblas::Point& p)
@@ -198,14 +197,7 @@ void RewriteHeader(liblas::Header const& header, std::string const& filename)
         liblas::Writer writer(ofs, header);
     }
     ofs.close();
-    
-    // Write our updated header with summary info
-    std::ofstream ofs2(filename.c_str(), m);
-    {
-        // scope this, so the dtor can write to the stream before we close it
-        liblas::Writer writer2(ofs2, header);
-    }
-    ofs2.close();
+
 }  
   
 void RepairHeader(liblas::CoordinateSummary const& summary, liblas::Header& header)
@@ -320,7 +312,7 @@ liblas::FilterPtr MakeTimeFilter(std::string times,
 liblas::FilterPtr MakeScanAngleFilter(std::string intensities, 
                                       liblas::FilterI::FilterType ftype) 
 {
-    typedef liblas::ContinuousValueFilter<boost::int8_t> filter;
+    typedef liblas::ContinuousValueFilter<boost::int32_t> filter;
     filter::filter_func f = &liblas::Point::GetScanAngleRank;
     filter* intensity_filter = new filter(f, intensities);
     intensity_filter->SetType(ftype);
@@ -538,7 +530,7 @@ std::vector<liblas::FilterPtr> GetFilters(po::variables_map vm, bool verbose)
             std::cout << "Setting miny to: " << miny << std::endl;
     }
 
-    if (vm.count("maxx")) 
+    if (vm.count("maxy")) 
     {
         double maxy = vm["maxy"].as< double >();
         (extent.max)(1, maxy);
@@ -1327,7 +1319,14 @@ std::vector<liblas::TransformPtr> GetTransforms(po::variables_map vm, bool verbo
         header.SetSRS(out_ref);
         
         liblas::Bounds<double> b = header.GetExtent();
-        b.project(in_ref, out_ref);
+    
+        liblas::ReprojectionTransform trans(in_ref, out_ref);
+    
+        liblas::Point minimum(&header);
+        liblas::Point maximum(&header);
+        trans.transform(minimum);
+        trans.transform(maximum);
+        b = liblas::Bounds<double>(minimum, maximum);
         header.SetExtent(b);
         liblas::TransformPtr srs_transform = liblas::TransformPtr(new liblas::ReprojectionTransform(in_ref, out_ref, &header));
         transforms.push_back(srs_transform);
diff --git a/apps/laskernel.hpp b/apps/laskernel.hpp
old mode 100644
new mode 100755
diff --git a/apps/lasmerge.c b/apps/lasmerge.c
deleted file mode 100644
index d9c875f..0000000
--- a/apps/lasmerge.c
+++ /dev/null
@@ -1,507 +0,0 @@
-/***************************************************************************
- * $Id$
- * $Date$
- *
- * Project: libLAS -- C/C++ read/write library for LAS LIDAR data
- * Purpose: LAS file merging
- * Author:  Martin Isenburg isenburg at cs.unc.edu 
- ***************************************************************************
- * Copyright (c) 2007, Martin Isenburg isenburg at cs.unc.edu 
- *
- * See LICENSE.txt in this source distribution for more information.
- **************************************************************************/
-
-
-#include <time.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "liblas.h"
-#include "lascommon.h"
-
-LASPointSummary* SummarizePoints(LASReaderH reader);
-void print_point_summary(FILE *file, LASPointSummary* summary, LASHeaderH header);
-void print_header(FILE *file, LASHeaderH header, const char* file_name, int bSkipVLR);
-
-void usage()
-{
-
-    fprintf(stderr,"----------------------------------------------------------\n");
-    fprintf(stderr,"    lasmerge (version %s) usage:\n", LAS_GetFullVersion());
-    fprintf(stderr,"----------------------------------------------------------\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Merge using a list of files:\n");
-    fprintf(stderr,"  lasmerge -i lasfiles.txt -o out.las\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Manually list files to merge:\n");
-    fprintf(stderr,"  lasmerge -i file1.las -i file2.las -i file3.las -o out.las\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Merge to stdout:\n");
-    fprintf(stderr,"  lasmerge -i file1.las -i file2.las --stdout\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Merge and set scale:\n");
-    fprintf(stderr, "  lasmerge --input lasfiles.txt --scale 0.01 --output out.las\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Merge and set scale individually:\n");
-    fprintf(stderr, "  lasmerge --input lasfiles.txt --xyz_scale 0.01 0.01 0.1 --output out.las\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Merge and set offset individually:\n");
-    fprintf(stderr, "  lasmerge --input lasfiles.txt --xyz_offset 0.01 0.01 0.1 --output out.las\n");
-    fprintf(stderr,"\n");
-
-    fprintf(stderr,"Print this output:\n");
-    fprintf(stderr, "  lasmerge --help\n");
-    fprintf(stderr,"\n");
-    
-    fprintf(stderr, "For more information, see the full documentation for lasmerge at:\n"
-                    " http://liblas.org/utilities/lasmerge.html\n");
-    fprintf(stderr,"----------------------------------------------------------\n");
-
-}
-
-void ptime(const char *const msg)
-{
-    float t= ((float)clock())/CLOCKS_PER_SEC;
-    fprintf(stderr, "cumulative CPU time thru %s = %f\n", msg, t);
-}
-
-int main(int argc, char *argv[])
-{
-    int i;
-    int verbose = FALSE;
-    int skip_vlr = FALSE;
-    int num_file_name_in = 0;
-    int alloced_file_name_in = 32;
-    char** file_names_in = (char**)malloc(sizeof(char*)*alloced_file_name_in);
-    char* file_name_out = 0;
-    int use_stdout = FALSE;
-    double xyz_scale[3] = {0.0, 0.0, 0.0};
-    double xyz_offset[3] = {0.0, 0.0, 0.0};
-
-    double minx, miny, maxx, maxy, minz, maxz;
-    double x_scale_factor, y_scale_factor, z_scale_factor;
-
-  
-    LASHeaderH merged_header=NULL;
-    LASHeaderH header = NULL;
-    LASReaderH reader = NULL;
-    LASWriterH writer = NULL;
-    LASPointH p = NULL;
-  
-    FILE* file = NULL;
-
-    int smallest_int = (1<<31)+10;
-    int largest_int = smallest_int-1-20;
-
-    int same = TRUE;
-    LASPointSummary* summary = NULL;
-
-    for (i = 1; i < argc; i++)
-    {
-        if (    strcmp(argv[i],"-h") == 0 ||
-                strcmp(argv[i],"--help") == 0
-            )
-        {
-            usage();
-            exit(0);
-        }
-        else if (   strcmp(argv[i],"-v") == 0 ||
-                    strcmp(argv[i],"--verbose") == 0
-            )
-        {
-            verbose = TRUE;
-        }        
-        else if (   strcmp(argv[i],"--input") == 0  ||
-                    strcmp(argv[i],"-input") == 0   ||
-                    strcmp(argv[i],"-i") == 0       ||
-                    strcmp(argv[i],"-in") == 0
-                )
-        {
-            i++;
-            if (num_file_name_in == alloced_file_name_in)
-            {
-                alloced_file_name_in *= 2;
-                file_names_in = (char**)realloc(file_names_in,sizeof(char*)*alloced_file_name_in);
-            }
-            file_names_in[num_file_name_in] = argv[i];
-            num_file_name_in++;
-        }
-        else if (   strcmp(argv[i],"--output") == 0  ||
-                    strcmp(argv[i],"--out") == 0     ||
-                    strcmp(argv[i],"-out") == 0     ||
-                    strcmp(argv[i],"-o") == 0       
-                )
-        {
-            i++;
-            file_name_out = argv[i];
-        }
-        else if (   strcmp(argv[i],"--scale") == 0  ||
-                    strcmp(argv[i],"-scale") == 0     ||
-                    strcmp(argv[i],"-s") == 0       
-                )
-        {
-
-            i++;
-            sscanf(argv[i], "%lf", &(xyz_scale[2]));
-            xyz_scale[0] = xyz_scale[1] = xyz_scale[2];
-        }
-        else if (   strcmp(argv[i],"--xyz_scale") == 0  ||
-                    strcmp(argv[i],"-xyz_scale") == 0    
-                )
-
-        {
-            i++;
-            sscanf(argv[i], "%lf", &(xyz_scale[0]));
-            i++;
-            sscanf(argv[i], "%lf", &(xyz_scale[1]));
-            i++;
-            sscanf(argv[i], "%lf", &(xyz_scale[2]));
-        }
-        else if (   strcmp(argv[i],"--xyz_offset") == 0  ||
-                    strcmp(argv[i],"-xyz_offset") == 0    
-                )
-        {
-            i++;
-            sscanf(argv[i], "%lf", &(xyz_offset[0]));
-            i++;
-            sscanf(argv[i], "%lf", &(xyz_offset[1]));
-            i++;
-            sscanf(argv[i], "%lf", &(xyz_offset[2]));
-        }
-        else if (   strcmp(argv[i],"--stdout") == 0  ||
-                    strcmp(argv[i],"-olas") == 0    
-                )
-        {
-            use_stdout = TRUE;
-            file_name_out = "stdout";
-        }
-        else if (   strcmp(argv[i],"--skip_vlr") == 0   ||
-                    strcmp(argv[i],"--no_vlr") == 0)
-        {
-            skip_vlr = TRUE;
-        } 
-        else if (i == argc - 2 && num_file_name_in == 0 && file_name_out == 0)
-        {
-            file_names_in[0] = argv[i];
-            num_file_name_in = 1;
-        }
-        else if (i == argc - 1 && num_file_name_in == 0 && file_name_out == 0)
-        {
-            file_names_in[0] = argv[i];
-            num_file_name_in = 1;
-        }
-        else if (i == argc - 1 && num_file_name_in != 0 && file_name_out == 0)
-        {
-            file_name_out = argv[i];
-        }
-        else 
-        {
-            fprintf(stderr, "ERROR: unknown argument '%s'\n",argv[i]);
-            usage();
-            exit(1);
-        }
-    }
-
-    if (num_file_name_in == 0)
-    {
-        fprintf(stderr, "ERROR: no input specified\n");
-        usage();
-        exit(1);
-    }
-
-    if (    num_file_name_in == 1 && 
-            strstr(file_names_in[0],".las") == 0 && 
-            strstr(file_names_in[0],".LAS") == 0
-       )
-    {
-        char line[512];
-
-        num_file_name_in = 0;
-        file = fopen(file_names_in[0], "r");
-        while (fgets(line, sizeof(char) * 512, file))
-            {
-                if (strstr(line,".las") || strstr(line,".LAS") )
-                {
-                    if (num_file_name_in == alloced_file_name_in)
-                    {
-                        alloced_file_name_in *= 2;
-                        file_names_in = (char**)realloc(file_names_in,sizeof(char*)*alloced_file_name_in);
-                    }
-                    file_names_in[num_file_name_in] = LASCopyString(line);
-                    i = (int)strlen(file_names_in[num_file_name_in]) - 1;
-                    while ( i && 
-                            file_names_in[num_file_name_in][i] != 's' && 
-                            file_names_in[num_file_name_in][i] != 'S' && 
-                            file_names_in[num_file_name_in][i] != 'z' && 
-                            file_names_in[num_file_name_in][i] != 'Z') 
-                    i--;
-                    if (i)
-                    {
-                        file_names_in[num_file_name_in][i+1] = '\0';
-                        num_file_name_in++;
-                    }
-                    else
-                    {
-                        fprintf(stderr, "WARNING: cannot parse line '%s'\n",line);
-                    }
-                }
-                else
-                {
-                    fprintf(stderr, "WARNING: no a valid LAS file name '%s'\n",line);
-                }
-            }
-    }
-
-
-    if (verbose) ptime("starting first pass.");
-    fprintf(stderr, "first pass ... reading headers of %d LAS files...\n", num_file_name_in);
-
-    for (i = 0; i < num_file_name_in; i++)
-    {
-        reader = LASReader_Create(file_names_in[i]);
-        if (!reader) { 
-                LASError_Print("Could not get LASReader "); 
-                exit(1);
-            } 
-      
-            header = LASReader_GetHeader(reader);
-            if (!header) { 
-                LASError_Print("Could not get LASHeader "); 
-                exit(1);
-            } 
-
-
-        if (i == 0)
-        {
-            merged_header = LASReader_GetHeader(reader);
-        }
-        else
-        {
-            LASHeader_SetPointRecordsCount( merged_header, 
-                                            LASHeader_GetPointRecordsCount(merged_header) + 
-                                            LASHeader_GetPointRecordsCount(header));
-            LASHeader_SetPointRecordsByReturnCount( merged_header, 
-                                                    0, 
-                                                    LASHeader_GetPointRecordsByReturnCount(merged_header,0) + 
-                                                    LASHeader_GetPointRecordsByReturnCount(header,0));
-            LASHeader_SetPointRecordsByReturnCount( merged_header, 
-                                                    1, 
-                                                    LASHeader_GetPointRecordsByReturnCount(merged_header,1) + 
-                                                    LASHeader_GetPointRecordsByReturnCount(header,1));
-            LASHeader_SetPointRecordsByReturnCount( merged_header, 
-                                                    2, 
-                                                    LASHeader_GetPointRecordsByReturnCount(merged_header,2) + 
-                                                    LASHeader_GetPointRecordsByReturnCount(header,2));
-            LASHeader_SetPointRecordsByReturnCount( merged_header, 
-                                                    3, 
-                                                    LASHeader_GetPointRecordsByReturnCount(merged_header,3) + 
-                                                    LASHeader_GetPointRecordsByReturnCount(header,3));
-            LASHeader_SetPointRecordsByReturnCount( merged_header, 
-                                                    4, 
-                                                    LASHeader_GetPointRecordsByReturnCount(merged_header,4) + 
-                                                    LASHeader_GetPointRecordsByReturnCount(header,4));
-
-            LASHeader_SetSystemId(merged_header, "MERGED");
-
-            minx = LASHeader_GetMinX(merged_header);
-            maxx = LASHeader_GetMaxX(merged_header);
-            miny = LASHeader_GetMinY(merged_header);
-            maxy = LASHeader_GetMaxY(merged_header);
-            minz = LASHeader_GetMinZ(merged_header);
-            maxz = LASHeader_GetMaxZ(merged_header);
-        
-            if (minx > LASHeader_GetMinX(header)) minx = LASHeader_GetMinX(header);
-            if (maxx < LASHeader_GetMaxX(header)) maxx = LASHeader_GetMaxX(header);
-            if (miny > LASHeader_GetMinY(header)) miny = LASHeader_GetMinY(header);
-            if (maxy < LASHeader_GetMaxY(header)) maxy = LASHeader_GetMaxY(header);
-            if (minz > LASHeader_GetMinZ(header)) minz = LASHeader_GetMinZ(header);
-            if (maxz < LASHeader_GetMaxZ(header)) maxz = LASHeader_GetMaxZ(header);
-        
-            LASHeader_SetMin(merged_header, minx, miny, minz);
-            LASHeader_SetMax(merged_header, maxx, maxy, maxz);
-        }
-        
-        LASHeader_Destroy(header);
-        LASReader_Destroy(reader);
-    }
-
-    if (verbose)
-    {
-        fprintf(stderr, "  number_of_point_records %d\n", 
-                LASHeader_GetPointRecordsCount(merged_header));
-        fprintf(stderr, "  number of points by return %d %d %d %d %d\n", 
-                        LASHeader_GetPointRecordsByReturnCount(merged_header, 0),
-                        LASHeader_GetPointRecordsByReturnCount(merged_header, 1), 
-                        LASHeader_GetPointRecordsByReturnCount(merged_header, 2), 
-                        LASHeader_GetPointRecordsByReturnCount(merged_header, 3), 
-                        LASHeader_GetPointRecordsByReturnCount(merged_header, 4));
-        fprintf(stderr, "  min x y z                  %.6f %.6f %.6f\n", 
-                        LASHeader_GetMinX(merged_header), 
-                        LASHeader_GetMinY(merged_header), 
-                        LASHeader_GetMinZ(merged_header));
-        fprintf(stderr, "  max x y z                  %.6f %.6f %.6f\n", 
-                        LASHeader_GetMaxX(merged_header), 
-                        LASHeader_GetMaxY(merged_header), 
-                        LASHeader_GetMaxZ(merged_header));
-    }
-
-    LASHeader_SetScale( merged_header, 
-                        xyz_scale[0], 
-                        xyz_scale[1], 
-                        xyz_scale[2]);
-
-    LASHeader_SetOffset(merged_header, 
-                        xyz_offset[0], 
-                        xyz_offset[1], 
-                        xyz_offset[2] );
-
-    x_scale_factor = LASHeader_GetScaleX(merged_header);
-    if (((LASHeader_GetMaxX(merged_header) - LASHeader_GetOffsetX(merged_header)) / LASHeader_GetScaleX(merged_header)) > largest_int ||
-        ((LASHeader_GetMinX(merged_header) - LASHeader_GetOffsetX(merged_header)) / LASHeader_GetScaleX(merged_header)) < smallest_int )
-    {
-        x_scale_factor = 0.0000001;
-        while (((LASHeader_GetMaxX(merged_header) - LASHeader_GetOffsetX(merged_header)) / x_scale_factor) > largest_int ||
-            ((LASHeader_GetMinX(merged_header) - LASHeader_GetOffsetX(merged_header)) / x_scale_factor) < smallest_int )
-        {
-            x_scale_factor *= 10;
-        }
-        fprintf(stderr, "x_scale_factor of merged_header changed to %g\n", x_scale_factor);
-    }
-
-    y_scale_factor = LASHeader_GetScaleY(merged_header);
-    if (((LASHeader_GetMaxY(merged_header) - LASHeader_GetOffsetY(merged_header)) / y_scale_factor) > largest_int ||
-        ((LASHeader_GetMinY(merged_header) - LASHeader_GetOffsetY(merged_header)) / y_scale_factor) < smallest_int )
-    {
-        y_scale_factor = 0.0000001;
-        while (((LASHeader_GetMaxY(merged_header) - LASHeader_GetOffsetY(merged_header)) / y_scale_factor) > largest_int ||
-            ((LASHeader_GetMinY(merged_header) - LASHeader_GetOffsetY(merged_header)) / y_scale_factor) < smallest_int )
-        {
-            y_scale_factor *= 10;
-        }
-        fprintf(stderr, "y_scale_factor of merged_header changed to %g\n", y_scale_factor);
-    }
-  
-    z_scale_factor = LASHeader_GetScaleZ(merged_header);
-    if (((LASHeader_GetMaxZ(merged_header) - LASHeader_GetOffsetZ(merged_header)) / z_scale_factor) > largest_int ||
-        ((LASHeader_GetMinZ(merged_header) - LASHeader_GetOffsetZ(merged_header)) / z_scale_factor) < smallest_int )
-    {
-        z_scale_factor = 0.0000001;
-        while (((LASHeader_GetMaxZ(merged_header) - LASHeader_GetOffsetZ(merged_header)) / z_scale_factor) > largest_int ||
-            ((LASHeader_GetMinZ(merged_header) - LASHeader_GetOffsetZ(merged_header)) / z_scale_factor) < smallest_int )\
-        {
-            z_scale_factor *= 10;
-        }
-        fprintf(stderr, "z_scale_factor of merged_header changed to %g\n", z_scale_factor);
-    }
-  
-    LASHeader_SetScale( merged_header, 
-                        x_scale_factor, 
-                        y_scale_factor, 
-                        z_scale_factor);
-
-    if (file_name_out == NULL && !use_stdout)
-    {
-        LASError_Print("no output was specified "); 
-        exit(1);
-    }
-
-    writer = LASWriter_Create(file_name_out, merged_header, LAS_MODE_WRITE);
-    if (!writer) { 
-        LASError_Print("Could not create LASWriter "); 
-        exit(1);
-    } 
-
-    if (verbose) ptime("starting second pass.");
-    fprintf(stderr, "second pass ... merge %d LAS files into one ...\n", num_file_name_in);
-
-    for (i = 0; i < num_file_name_in; i++)
-    {
-        reader = LASReader_Create(file_names_in[i]);
-        if (!reader) { 
-            LASError_Print("Could not get LASReader ");
-            exit(1);
-        } 
-        header = LASReader_GetHeader(reader);
-        if (!header) { 
-            LASError_Print("Could not get LASHeader ");
-            exit(1);
-        } 
-
-        same = TRUE;
-        if (LASHeader_GetOffsetX(merged_header) != LASHeader_GetOffsetX(header)) same = FALSE;
-        if (LASHeader_GetOffsetY(merged_header) != LASHeader_GetOffsetY(header)) same = FALSE;
-        if (LASHeader_GetOffsetZ(merged_header) != LASHeader_GetOffsetZ(header)) same = FALSE;
-
-        if (LASHeader_GetScaleX(merged_header) != LASHeader_GetScaleX(header)) same = FALSE;
-        if (LASHeader_GetScaleY(merged_header) != LASHeader_GetScaleY(header)) same = FALSE;
-        if (LASHeader_GetScaleZ(merged_header) != LASHeader_GetScaleZ(header)) same = FALSE;
-    
-
-        if (same)
-        {
-            p = LASReader_GetNextPoint(reader);
-            while (p)
-            {
-                LASWriter_WritePoint(writer, p);
-                p = LASReader_GetNextPoint(reader);
-            }
-        }
-        else
-        {
-            p = LASReader_GetNextPoint(reader);
-            while (p)
-            {
-                LASPoint_SetX(p,(0.5 + (LASPoint_GetX(p) - LASHeader_GetOffsetX(merged_header)) / LASHeader_GetScaleX(merged_header)));
-                LASPoint_SetY(p,(0.5 + (LASPoint_GetY(p) - LASHeader_GetOffsetY(merged_header)) / LASHeader_GetScaleY(merged_header)));
-                LASPoint_SetZ(p,(0.5 + (LASPoint_GetZ(p) - LASHeader_GetOffsetZ(merged_header)) / LASHeader_GetScaleZ(merged_header)));
-                LASWriter_WritePoint(writer, p);
-                p = LASReader_GetNextPoint(reader);
-            }
-        }
-
-        LASHeader_Destroy(header);
-        LASReader_Destroy(reader);
-        reader = NULL;
-    }
-    
-    LASHeader_Destroy(merged_header);
-    LASWriter_Destroy(writer);
-
-    if (verbose) ptime("done.");
-
-    if (verbose) {
-        reader = LASReader_Create(file_name_out);
-        if (!reader) { 
-            LASError_Print("Could not open file ");
-            exit(1);
-        } 
-      
-        header = LASReader_GetHeader(reader);
-        if (!header) { 
-            LASError_Print("Could not get LASHeader ");
-            exit(1);
-        } 
-
-        print_header(stderr, header, file_name_out, skip_vlr);        
-        summary = SummarizePoints(reader);
-        print_point_summary(stderr, summary, header);
-        
-        LASHeader_Destroy(header);
-        header = NULL;            
-        LASReader_Destroy(reader);
-        reader = NULL;
-        
-        LASPoint_Destroy(summary->pmin);
-        LASPoint_Destroy(summary->pmax);
-        free(summary);
-    }
-    
-    return 0;
-}
diff --git a/apps/liblas-config b/apps/liblas-config
old mode 100644
new mode 100755
index 77e1301..d78c469
--- a/apps/liblas-config
+++ b/apps/liblas-config
@@ -4,22 +4,22 @@ exec_prefix=/usr/local/bin
 libdir=/usr/local/lib
 
 INCLUDES="-I${prefix}/include "
-LIBS="-L$libdir -llas -llas_c -L/usr/local/lib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a" 
+LIBS="-L$libdir -llas -llas_c -L/usr/local/lib /usr/local/lib/libboost_program_options-mt.dylib /usr/local/lib/libboost_thread-mt.dylib" 
 
-GDAL_INCLUDE=""
+GDAL_INCLUDE="/usr/local/include"
 if test -n "$GDAL_INCLUDE" ; then 
     INCLUDES="$INCLUDES -I$GDAL_INCLUDE"
 fi
-GDAL_LIBRARY=""
+GDAL_LIBRARY="/usr/local/Cellar/gdal/1.11.0/lib/libgdal.dylib"
 if test -n "$GDAL_LIBRARY" ; then 
     LIBS="$LIBS $GDAL_LIBRARY"
 fi
 
-GEOTIFF_INCLUDE=""
+GEOTIFF_INCLUDE="/usr/local/include"
 if test -n "$GEOTIFF_INCLUDE" ; then 
     INCLUDES="$INCLUDES -I$GEOTIFF_INCLUDE"
 fi
-GEOTIFF_LIBRARY=""
+GEOTIFF_LIBRARY="/usr/local/lib/libgeotiff.dylib"
 if test -n "$GEOTIFF_LIBRARY" ; then 
     LIBS="$LIBS $GEOTIFF_LIBRARY"
 fi
@@ -34,11 +34,11 @@ if test -n "$ORACLE_OCI_LIBRARY" ; then
     LIBS="$LIBS $ORACLE_OCI_LIBRARY   "
 fi
 
-TIFF_INCLUDE=""
+TIFF_INCLUDE="/usr/local/include"
 if test -n "$TIFF_INCLUDE" ; then 
     INCLUDES="$INCLUDES -I$TIFF_INCLUDE"
 fi
-TIFF_LIBRARY=""
+TIFF_LIBRARY="/usr/local/lib/libtiff.dylib"
 if test -n "$TIFF_LIBRARY" ; then 
     LIBS="$LIBS $TIFF_LIBRARY"
 fi
@@ -52,11 +52,11 @@ if test -n "$LIBXML2_LIBRARIES" ; then
     LIBS="$LIBS $LIBXML2_LIBRARIES"
 fi
 
-LASZIP_INCLUDE_DIR=""
+LASZIP_INCLUDE_DIR="/usr/local/include"
 if test -n "$LASZIP_INCLUDE_DIR" ; then 
     INCLUDES="$INCLUDES -I$LASZIP_INCLUDE_DIR"
 fi
-LASZIP_LIBRARY=""
+LASZIP_LIBRARY="/usr/local/lib/liblaszip.dylib"
 if test -n "$LASZIP_LIBRARY" ; then 
     LIBS="$LIBS $LASZIP_LIBRARY"
 fi
@@ -95,7 +95,7 @@ case $1 in
     ;;
 
   --defines)
-    echo 
+    echo  -DHAVE_LASZIP=1 -DHAVE_GDAL=1 -DHAVE_LIBGEOTIFF=1
     ;;
 
   --includes)
@@ -107,11 +107,11 @@ case $1 in
     ;;
 
   --cxxflags)
-    echo  -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98
+    echo   -Wextra -Wall -Wno-unused-parameter -Wno-unused-variable -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long
     ;;
     
   --version)
-    echo 1.7.0
+    echo 1.8.0
     ;;
 
   *)
diff --git a/apps/liblas-config.in b/apps/liblas-config.in
old mode 100644
new mode 100755
diff --git a/apps/liblas.pc.in b/apps/liblas.pc.in
old mode 100644
new mode 100755
diff --git a/apps/ts2las.cpp b/apps/ts2las.cpp
old mode 100644
new mode 100755
index 023cc10..69823c9
--- a/apps/ts2las.cpp
+++ b/apps/ts2las.cpp
@@ -102,7 +102,7 @@ liblas::Header CreateHeader(ScanHdr* hdr, bool verbose)
 
     double scale = 1.0/(double)hdr->Units;
     header.SetScale(scale, scale, scale);
-    header.SetOffset(hdr->OrgX*scale, hdr->OrgY*scale, hdr->OrgZ*scale);
+    header.SetOffset(-hdr->OrgX*scale, -hdr->OrgY*scale, -hdr->OrgZ*scale);
     header.SetPointRecordsCount(hdr->PntCnt);
     
     if (verbose)
@@ -192,7 +192,7 @@ bool WritePoints(liblas::Writer& writer, std::istream& strm, ScanHdr* hdr, bool
             point->Intensity = row->EchoInt & 0x3FFF;
             point->Echo = (row->EchoInt >> 14);
         }
-        Point p;
+        Point p(&writer.GetHeader());
         
         p.SetRawX(point->Pnt.x);
         p.SetRawY(point->Pnt.y);
diff --git a/apps/ts2las.hpp b/apps/ts2las.hpp
old mode 100644
new mode 100755
diff --git a/apps/txt2las.c b/apps/txt2las.c
old mode 100644
new mode 100755
index 933393c..0964824
--- a/apps/txt2las.c
+++ b/apps/txt2las.c
@@ -77,7 +77,7 @@ void usage()
     fprintf(stderr," or '-generating_software \"TerraScan\"' are available too.\n");
 
     fprintf(stderr, "For more information, see the full documentation for txt2las at:\n"
-                    " http://liblas.org/browser/trunk/doc/txt2las.txt\n");
+                    " http://liblas.org/utilities/txt2las.html\n");
     fprintf(stderr,"----------------------------------------------------------\n");
 
 }
diff --git a/bin/ci/before_install.sh b/bin/ci/before_install.sh
new file mode 100755
index 0000000..6b360c0
--- /dev/null
+++ b/bin/ci/before_install.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+# Installs requirements for libLAS
+source ./bin/ci/common.sh
+echo "$(tmstamp) *** before_install::apt-get starting $(date) ***"
+sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 16126D3A3E5C1192
+sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable -y
+sudo apt-get update -qq
+sudo apt-get install -qq cmake libboost-program-options-dev libboost-thread-dev libboost-system-dev libboost-filesystem-dev
+sudo apt-get install \
+    libgdal-dev \
+    libgeos-dev \
+    libgeos++-dev \
+    libproj-dev \
+    libxml2-dev \
+    libtiff4-dev
+# install libgeotiff from sources
+wget http://download.osgeo.org/geotiff/libgeotiff/libgeotiff-1.4.0.tar.gz
+tar -xzf libgeotiff-1.4.0.tar.gz
+cd libgeotiff-1.4.0
+./configure --prefix=/usr && make && sudo make install
+cd $TRAVIS_BUILD_DIR
+
+echo "$(tmstamp) *** before_install::apt-get finished $(date) ***"
+gcc --version
+clang --version
diff --git a/bin/ci/common.sh b/bin/ci/common.sh
new file mode 100755
index 0000000..de7e6b2
--- /dev/null
+++ b/bin/ci/common.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+if [[ "$TRAVIS" != "true" ]] ; then
+	echo "Running this script makes no sense outside of travis-ci.org"
+	exit 1
+fi
+# Functions
+tmstamp() { echo -n "[$(date '+%H:%M:%S')]" ; }
+# Environment
+NUMTHREADS=4
+if [[ -f /sys/devices/system/cpu/online ]]; then
+	# Calculates 1.5 times physical threads
+	NUMTHREADS=$(( ( $(cut -f 2 -d '-' /sys/devices/system/cpu/online) + 1 ) * 15 / 10  ))
+fi
+NUMTHREADS=1 # disable MP
+export NUMTHREADS
diff --git a/bin/ci/script.sh b/bin/ci/script.sh
new file mode 100755
index 0000000..fbb1438
--- /dev/null
+++ b/bin/ci/script.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+# Builds and tests libLAS
+source ./bin/ci/common.sh
+mkdir -p _build
+cd _build
+
+echo "$(tmstamp) *** script::cmake-config starting $(date) ***"
+cmake .. -DWITH_GDAL=ON -DWITH_GEOTIFF=ON
+echo "$(tmstamp) *** script::cmake-config finished $(date) ***"
+
+echo "$(tmstamp) *** script::cmake-build make -j ${NUMTHREADS} $(date) ***"
+make -j ${NUMTHREADS}
+echo "$(tmstamp) *** script::cmake-build finished $(date) ***"
+
+echo "$(tmstamp) *** script::cmake-test starting $(date) ***"
+ctest -V --output-on-failure .
+echo "$(tmstamp) *** script::cmake-test finished $(date) ***"
diff --git a/buildout/bootstrap.py b/buildout/bootstrap.py
old mode 100644
new mode 100755
diff --git a/buildout/buildout.cfg b/buildout/buildout.cfg
old mode 100644
new mode 100755
diff --git a/buildout/setenv.in b/buildout/setenv.in
old mode 100644
new mode 100755
diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt
new file mode 100755
index 0000000..18c876a
--- /dev/null
+++ b/cmake/CMakeLists.txt
@@ -0,0 +1,33 @@
+#############################################################################
+# Config file generation and installation
+#############################################################################
+
+# Set where cmake will install liblas-config.cmake.  It's installed in
+# ${CMAKE_INSTALL_PREFIX}/${INSTALL_CMAKE_DIR} and ${PROJECT_ROOT_DIR}
+# is the relative path to the root from there.
+if (NOT WIN32)
+  set(INSTALL_CMAKE_DIR "share/cmake/${PROJECT_NAME}-${VERSION}")
+  set (PROJECT_ROOT_DIR "../../..")
+else ()
+  set(INSTALL_CMAKE_DIR "cmake")
+  set (PROJECT_ROOT_DIR "..")
+endif ()
+
+# Now create the liblas-config files using the .in templates
+configure_file (liblas-config.cmake.in
+  ${CMAKE_CURRENT_BINARY_DIR}/liblas-config.cmake @ONLY)
+configure_file (liblas-config-version.cmake.in
+  ${CMAKE_CURRENT_BINARY_DIR}/liblas-config-version.cmake @ONLY)
+
+# Install the liblas-config files so that other modules can find this
+# project using 'find_package(libLAS)'
+install (FILES
+  "${CMAKE_CURRENT_BINARY_DIR}/liblas-config.cmake"
+  "${CMAKE_CURRENT_BINARY_DIR}/liblas-config-version.cmake"
+  DESTINATION "${INSTALL_CMAKE_DIR}")
+
+# Make information about libLAS available.  The depends target is
+# defined in ../src/CMakeLists.txt
+install (EXPORT depends
+  FILE "liblas-depends.cmake"
+  DESTINATION "${INSTALL_CMAKE_DIR}")
diff --git a/cmake/libLAS.vcproj.user.template b/cmake/libLAS.vcproj.user.template
old mode 100644
new mode 100755
diff --git a/cmake/liblas-config-version.cmake b/cmake/liblas-config-version.cmake
new file mode 100755
index 0000000..5409e23
--- /dev/null
+++ b/cmake/liblas-config-version.cmake
@@ -0,0 +1,18 @@
+# Version checking for libLAS
+
+set(PACKAGE_VERSION "1.8.0")
+set(PACKAGE_VERSION_MAJOR "1")
+set(PACKAGE_VERSION_MINOR "8")
+set(PACKAGE_VERSION_PATCH "0")
+ 
+if (WIN32 AND NOT "${CMAKE_GENERATOR}" STREQUAL "Unix Makefiles")
+  # Reject if there's a mismatch on compiler versions (Windows only)
+  set (PACKAGE_VERSION_UNSUITABLE TRUE)
+elseif (PACKAGE_FIND_VERSION)
+  if (${PACKAGE_FIND_VERSION} VERSION_EQUAL ${PACKAGE_VERSION})
+    set (PACKAGE_VERSION_EXACT TRUE)
+  elseif (${PACKAGE_FIND_VERSION} VERSION_LESS ${PACKAGE_VERSION}
+    AND ${PACKAGE_FIND_VERSION_MAJOR} EQUAL ${PACKAGE_VERSION_MAJOR})
+    set (PACKAGE_VERSION_COMPATIBLE TRUE)
+  endif ()
+endif ()
diff --git a/cmake/liblas-config-version.cmake.in b/cmake/liblas-config-version.cmake.in
new file mode 100755
index 0000000..7ad76d6
--- /dev/null
+++ b/cmake/liblas-config-version.cmake.in
@@ -0,0 +1,18 @@
+# Version checking for libLAS
+
+set(PACKAGE_VERSION "@VERSION@")
+set(PACKAGE_VERSION_MAJOR "@LIBLAS_VERSION_MAJOR@")
+set(PACKAGE_VERSION_MINOR "@LIBLAS_VERSION_MINOR@")
+set(PACKAGE_VERSION_PATCH "@LIBLAS_VERSION_PATCH@")
+ 
+if (WIN32 AND NOT "${CMAKE_GENERATOR}" STREQUAL "@CMAKE_GENERATOR@")
+  # Reject if there's a mismatch on compiler versions (Windows only)
+  set (PACKAGE_VERSION_UNSUITABLE TRUE)
+elseif (PACKAGE_FIND_VERSION)
+  if (${PACKAGE_FIND_VERSION} VERSION_EQUAL ${PACKAGE_VERSION})
+    set (PACKAGE_VERSION_EXACT TRUE)
+  elseif (${PACKAGE_FIND_VERSION} VERSION_LESS ${PACKAGE_VERSION}
+    AND ${PACKAGE_FIND_VERSION_MAJOR} EQUAL ${PACKAGE_VERSION_MAJOR})
+    set (PACKAGE_VERSION_COMPATIBLE TRUE)
+  endif ()
+endif ()
diff --git a/cmake/liblas-config.cmake b/cmake/liblas-config.cmake
new file mode 100755
index 0000000..50f6a50
--- /dev/null
+++ b/cmake/liblas-config.cmake
@@ -0,0 +1,29 @@
+# Configure libLAS package
+#
+# It defines the following variables
+#  libLAS_FOUND = LIBLAS_FOUND - TRUE
+#  libLAS_INCLUDE_DIRS - include directories for libLAS
+#  libLAS_LIBRARY_DIRS - library directory
+#  libLAS_LIBRARIES    - all the libraries of the components requested
+#                                if no components specified then all found
+#  libLAS_VERSION      - libLAS library version
+
+message (STATUS "Reading ${CMAKE_CURRENT_LIST_FILE}")
+set (libLAS_VERSION "")
+message (STATUS "libLAS configuration, version "
+  ${libLAS_VERSION})
+
+# Tell the user project where to find our headers and libraries
+get_filename_component (_DIR ${CMAKE_CURRENT_LIST_FILE} PATH)
+get_filename_component (PROJECT_ROOT_DIR "${_DIR}/../../.." ABSOLUTE)
+set (libLAS_INCLUDE_DIRS "${PROJECT_ROOT_DIR}/include")
+set (libLAS_LIBRARY_DIRS "${PROJECT_ROOT_DIR}/lib")
+
+include ("${_DIR}/liblas-depends.cmake")
+if(WIN32)
+  set (libLAS_LIBRARIES liblas liblas_c)
+else()
+  set (libLAS_LIBRARIES las las_c)
+endif()
+
+set (LIBLAS_FOUND TRUE)
diff --git a/cmake/liblas-config.cmake.in b/cmake/liblas-config.cmake.in
new file mode 100755
index 0000000..51e1163
--- /dev/null
+++ b/cmake/liblas-config.cmake.in
@@ -0,0 +1,29 @@
+# Configure libLAS package
+#
+# It defines the following variables
+#  libLAS_FOUND = LIBLAS_FOUND - TRUE
+#  libLAS_INCLUDE_DIRS - include directories for libLAS
+#  libLAS_LIBRARY_DIRS - library directory
+#  libLAS_LIBRARIES    - all the libraries of the components requested
+#                                if no components specified then all found
+#  libLAS_VERSION      - libLAS library version
+
+message (STATUS "Reading ${CMAKE_CURRENT_LIST_FILE}")
+set (libLAS_VERSION "@PACKAGE_VERSION@")
+message (STATUS "libLAS configuration, version "
+  ${libLAS_VERSION})
+
+# Tell the user project where to find our headers and libraries
+get_filename_component (_DIR ${CMAKE_CURRENT_LIST_FILE} PATH)
+get_filename_component (PROJECT_ROOT_DIR "${_DIR}/@PROJECT_ROOT_DIR@" ABSOLUTE)
+set (libLAS_INCLUDE_DIRS "${PROJECT_ROOT_DIR}/include")
+set (libLAS_LIBRARY_DIRS "${PROJECT_ROOT_DIR}/lib")
+
+include ("${_DIR}/liblas-depends.cmake")
+if(WIN32)
+  set (libLAS_LIBRARIES liblas liblas_c)
+else()
+  set (libLAS_LIBRARIES las las_c)
+endif()
+
+set (LIBLAS_FOUND TRUE)
diff --git a/cmake/modules/BuildOSGeo4W.cmake b/cmake/modules/BuildOSGeo4W.cmake
old mode 100644
new mode 100755
diff --git a/cmake/modules/FindGDAL.cmake b/cmake/modules/FindGDAL.cmake
old mode 100644
new mode 100755
index 3760894..0c06636
--- a/cmake/modules/FindGDAL.cmake
+++ b/cmake/modules/FindGDAL.cmake
@@ -13,8 +13,80 @@
 # Modifications: Mateusz Loskot <mateusz at loskot.net>
 #
 ###############################################################################
+
+# Computes the realtionship between two version strings.  A version
+# string is a number delineated by '.'s such as 1.3.2 and 0.99.9.1.
+# You can feed version strings with different number of dot versions,
+# and the shorter version number will be padded with zeros: 9.2 <
+# 9.2.1 will actually compare 9.2.0 < 9.2.1.
+#
+# Input: a_in - value, not variable
+#        b_in - value, not variable
+#        result_out - variable with value:
+#                         -1 : a_in <  b_in
+#                          0 : a_in == b_in
+#                          1 : a_in >  b_in
+#
+# Written by James Bigler.
+MACRO(COMPARE_VERSION_STRINGS a_in b_in result_out)
+  # Since SEPARATE_ARGUMENTS using ' ' as the separation token,
+  # replace '.' with ' ' to allow easy tokenization of the string.
+  STRING(REPLACE "." " " a ${a_in})
+  STRING(REPLACE "." " " b ${b_in})
+  SEPARATE_ARGUMENTS(a)
+  SEPARATE_ARGUMENTS(b)
+
+  # Check the size of each list to see if they are equal.
+  LIST(LENGTH a a_length)
+  LIST(LENGTH b b_length)
+
+  # Pad the shorter list with zeros.
+
+  # Note that range needs to be one less than the length as the for
+  # loop is inclusive (silly CMake).
+  IF(a_length LESS b_length)
+    # a is shorter
+    SET(shorter a)
+    MATH(EXPR range "${b_length} - 1")
+    MATH(EXPR pad_range "${b_length} - ${a_length} - 1")
+  ELSE(a_length LESS b_length)
+    # b is shorter
+    SET(shorter b)
+    MATH(EXPR range "${a_length} - 1")
+    MATH(EXPR pad_range "${a_length} - ${b_length} - 1")
+  ENDIF(a_length LESS b_length)
+
+  # PAD out if we need to
+  IF(NOT pad_range LESS 0)
+    FOREACH(pad RANGE ${pad_range})
+      # Since shorter is an alias for b, we need to get to it by by dereferencing shorter.
+      LIST(APPEND ${shorter} 0)
+    ENDFOREACH(pad RANGE ${pad_range})
+  ENDIF(NOT pad_range LESS 0)
+
+  SET(result 0)
+  FOREACH(index RANGE ${range})
+    IF(result EQUAL 0)
+      # Only continue to compare things as long as they are equal
+      LIST(GET a ${index} a_version)
+      LIST(GET b ${index} b_version)
+      # LESS
+      IF(a_version LESS b_version)
+        SET(result -1)
+      ENDIF(a_version LESS b_version)
+      # GREATER
+      IF(a_version GREATER b_version)
+        SET(result 1)
+      ENDIF(a_version GREATER b_version)
+    ENDIF(result EQUAL 0)
+  ENDFOREACH(index)
+
+  # Copy out the return result
+  SET(${result_out} ${result})
+ENDMACRO(COMPARE_VERSION_STRINGS)
+
 MESSAGE(STATUS "Searching for GDAL ${GDAL_FIND_VERSION}+ library")
-MESSAGE(STATUS "   NOTE: Required version is not checked - to be implemented")
+set (GDAL_VERSION_COUNT 3)
 
 SET(GDAL_NAMES gdal)
 
@@ -23,10 +95,10 @@ IF(WIN32)
     SET(OSGEO4W_IMPORT_LIBRARY gdal_i)
     IF(DEFINED ENV{OSGEO4W_ROOT})
         SET(OSGEO4W_ROOT_DIR $ENV{OSGEO4W_ROOT})
-        MESSAGE(STATUS "Trying OSGeo4W using environment variable OSGEO4W_ROOT=$ENV{OSGEO4W_ROOT}")
+        #MESSAGE(STATUS " FindGDAL: trying OSGeo4W using environment variable OSGEO4W_ROOT=$ENV{OSGEO4W_ROOT}")
     ELSE()
         SET(OSGEO4W_ROOT_DIR c:/OSGeo4W)
-        MESSAGE(STATUS "Trying OSGeo4W using default location OSGEO4W_ROOT=${OSGEO4W_ROOT_DIR}")
+        #MESSAGE(STATUS " FindGDAL: trying OSGeo4W using default location OSGEO4W_ROOT=${OSGEO4W_ROOT_DIR}")
     ENDIF()
 
     IF(MINGW)
@@ -114,24 +186,33 @@ ELSEIF(UNIX)
         # if(version1 VERSION_LESS version2)
 
         # Extract GDAL version
-        EXEC_PROGRAM(${GDAL_CONFIG} ARGS --version OUTPUT_VARIABLE GDAL_VERSION)
-        SET(GDAL_VERSION_STRING "${GDAL_VERSION}" CACHE STRING "Version of GDAL package found")
+        EXEC_PROGRAM(${GDAL_CONFIG} ARGS --version OUTPUT_VARIABLE GDAL_VERSION_STATED)
+        SET(GDAL_VERSION_STRING "${GDAL_VERSION_STATED}" CACHE STRING "Version of GDAL package found")
 
-        STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1" GDAL_VERSION_MAJOR "${GDAL_VERSION}")
-        STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\2" GDAL_VERSION_MINOR "${GDAL_VERSION}")
-  
+        STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1" GDAL_VERSION_MAJOR "${GDAL_VERSION_STATED}")
+        STRING(REGEX REPLACE "([0-9]+)\\.(/^\\d{1,2}$/)\\.([0-9]+)" "\\2" GDAL_VERSION_MINOR "${GDAL_VERSION_STATED}")
+        STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\3" GDAL_VERSION_PATCH "${GDAL_VERSION_STATED}")
+        
         # Check for GDAL version
-        # TODO: What version is requiredfor libLAS? --mloskot
-        IF(GDAL_VERSION_MAJOR LESS 1 OR GDAL_VERSION_MINOR LESS 6)
-            MESSAGE (FATAL_ERROR "GDAL version is too old (${GDAL_VERSION}). Use 1.6.0 or higher.")
+        if (GDAL_FIND_VERSION)
+        COMPARE_VERSION_STRINGS( "${GDAL_VERSION_STATED}" "${GDAL_FIND_VERSION}" version_result)
+        IF (version_result LESS 0)
+            MESSAGE (FATAL_ERROR "GDAL version is too old (${GDAL_VERSION_STATED}). Use ${GDAL_FIND_VERSION} or higher requested.")
+        else()
+            MESSAGE(STATUS "Found acceptable GDAL version ${GDAL_VERSION_STATED}")
+            set (GDAL_VERSION_STRING ${GDAL_VERSION_STATED})
+            # set (GDAL_VERSION "1.6")
+            set (GDAL_VERSION_COMPATIBLE true)
         ENDIF()
+        endif()
 
+        set (GDAL_FOUND TRUE)
         # Set INCLUDE_DIR to prefix+include
         EXEC_PROGRAM(${GDAL_CONFIG} ARGS --prefix OUTPUT_VARIABLE GDAL_PREFIX)
 
         FIND_PATH(GDAL_INCLUDE_DIR
             gdal.h 
-            PATH_PREFIXES gdal gdal-1.6
+            PATH_PREFIXES gdal
             PATHS
             ${GDAL_PREFIX}/include/gdal
             ${GDAL_PREFIX}/include
@@ -177,11 +258,8 @@ ELSE()
     MESSAGE("FindGDAL.cmake: unrecognized or unsupported operating system (use Unix or Windows)")
 ENDIF()
 
-# Handle the QUIETLY and REQUIRED arguments and set SPATIALINDEX_FOUND to TRUE
+# Handle the QUIETLY and REQUIRED arguments and set GDAL_FOUND to TRUE
 # if all listed variables are TRUE
 INCLUDE(FindPackageHandleStandardArgs)
 FIND_PACKAGE_HANDLE_STANDARD_ARGS(GDAL DEFAULT_MSG GDAL_LIBRARY GDAL_INCLUDE_DIR)
 
-# TODO: Do we want to mark these as advanced? --mloskot
-# http://www.cmake.org/cmake/help/cmake2.6docs.html#command:mark_as_advanced
-#MARK_AS_ADVANCED(SPATIALINDEX_LIBRARY SPATIALINDEX_INCLUDE_DIR)
diff --git a/cmake/modules/FindGeoTIFF.cmake b/cmake/modules/FindGeoTIFF.cmake
old mode 100644
new mode 100755
index e0bcd45..7492487
--- a/cmake/modules/FindGeoTIFF.cmake
+++ b/cmake/modules/FindGeoTIFF.cmake
@@ -29,16 +29,16 @@ IF(WIN32)
   SET(OSGEO4W_IMPORT_LIBRARY geotiff_i)
   IF(DEFINED ENV{OSGEO4W_ROOT})
     SET(OSGEO4W_ROOT_DIR $ENV{OSGEO4W_ROOT})
-    MESSAGE(STATUS "Trying OSGeo4W using environment variable OSGEO4W_ROOT=$ENV{OSGEO4W_ROOT}")
+    #MESSAGE(STATUS " FindGeoTIFF: trying OSGeo4W using environment variable OSGEO4W_ROOT=$ENV{OSGEO4W_ROOT}")
   ELSE()
     SET(OSGEO4W_ROOT_DIR c:/OSGeo4W)
-    MESSAGE(STATUS "Trying OSGeo4W using default location OSGEO4W_ROOT=${OSGEO4W_ROOT_DIR}")
+    #MESSAGE(STATUS " FindGeoTIFF: trying OSGeo4W using default location OSGEO4W_ROOT=${OSGEO4W_ROOT_DIR}")
   ENDIF()
 ENDIF()
      
 FIND_PATH(GEOTIFF_INCLUDE_DIR
   geotiff.h
-  PATH_PREFIXES geotiff
+  PATH_SUFFIXES geotiff
   PATHS
   ${OSGEO4W_ROOT_DIR}/include)
 
diff --git a/cmake/modules/FindLASzip.cmake b/cmake/modules/FindLASzip.cmake
old mode 100644
new mode 100755
index c6a7c53..a0d4b89
--- a/cmake/modules/FindLASzip.cmake
+++ b/cmake/modules/FindLASzip.cmake
@@ -31,7 +31,7 @@ IF(WIN32)
     SET(OSGEO4W_ROOT_DIR $ENV{OSGEO4W_ROOT})
     MESSAGE(STATUS "Trying OSGeo4W using environment variable OSGEO4W_ROOT=$ENV{OSGEO4W_ROOT}")
   ELSE()
-    SET(OSGEO4W_ROOT_DIR c:/OSGeo4W)
+    SET(OSGEO4W_ROOT_DIR c:/OSGeo4W64)
     MESSAGE(STATUS "Trying OSGeo4W using default location OSGEO4W_ROOT=${OSGEO4W_ROOT_DIR}")
   ENDIF()
 ENDIF()
diff --git a/cmake/modules/FindOracle.cmake b/cmake/modules/FindOracle.cmake
old mode 100644
new mode 100755
diff --git a/cmake/modules/FindSpatialIndex.cmake b/cmake/modules/FindSpatialIndex.cmake
old mode 100644
new mode 100755
diff --git a/cmake_install.cmake b/cmake_install.cmake
deleted file mode 100644
index fb568bd..0000000
--- a/cmake_install.cmake
+++ /dev/null
@@ -1,57 +0,0 @@
-# Install script for directory: /Users/hobu/foo/clean
-
-# Set the install prefix
-IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
-  SET(CMAKE_INSTALL_PREFIX "/usr/local")
-ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
-STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
-
-# Set the install configuration name.
-IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
-  IF(BUILD_TYPE)
-    STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
-           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
-  ELSE(BUILD_TYPE)
-    SET(CMAKE_INSTALL_CONFIG_NAME "Release")
-  ENDIF(BUILD_TYPE)
-  MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
-ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
-
-# Set the component getting installed.
-IF(NOT CMAKE_INSTALL_COMPONENT)
-  IF(COMPONENT)
-    MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
-    SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
-  ELSE(COMPONENT)
-    SET(CMAKE_INSTALL_COMPONENT)
-  ENDIF(COMPONENT)
-ENDIF(NOT CMAKE_INSTALL_COMPONENT)
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/liblas/doc" TYPE FILE FILES
-    "/Users/hobu/foo/clean/AUTHORS"
-    "/Users/hobu/foo/clean/COPYING"
-    "/Users/hobu/foo/clean/INSTALL"
-    "/Users/hobu/foo/clean/LICENSE.txt"
-    "/Users/hobu/foo/clean/README.txt"
-    )
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_LOCAL_ONLY)
-  # Include the install script for each subdirectory.
-  INCLUDE("/Users/hobu/foo/clean/src/cmake_install.cmake")
-  INCLUDE("/Users/hobu/foo/clean/apps/cmake_install.cmake")
-  INCLUDE("/Users/hobu/foo/clean/test/cmake_install.cmake")
-
-ENDIF(NOT CMAKE_INSTALL_LOCAL_ONLY)
-
-IF(CMAKE_INSTALL_COMPONENT)
-  SET(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
-ELSE(CMAKE_INSTALL_COMPONENT)
-  SET(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
-ENDIF(CMAKE_INSTALL_COMPONENT)
-
-FILE(WRITE "/Users/hobu/foo/clean/${CMAKE_INSTALL_MANIFEST}" "")
-FOREACH(file ${CMAKE_INSTALL_MANIFEST_FILES})
-  FILE(APPEND "/Users/hobu/foo/clean/${CMAKE_INSTALL_MANIFEST}" "${file}\n")
-ENDFOREACH(file)
diff --git a/csharp-new/liblas_swig.sln b/csharp-new/liblas_swig.sln
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_cpp/liblas.i b/csharp-new/liblas_swig_cpp/liblas.i
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_cpp/liblas_swig_cpp.vcxproj b/csharp-new/liblas_swig_cpp/liblas_swig_cpp.vcxproj
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_cpp/liblas_swig_cpp.vcxproj.filters b/csharp-new/liblas_swig_cpp/liblas_swig_cpp.vcxproj.filters
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_cpp/liblas_swig_cpp.vcxproj.user b/csharp-new/liblas_swig_cpp/liblas_swig_cpp.vcxproj.user
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_cs/Properties/AssemblyInfo.cs b/csharp-new/liblas_swig_cs/Properties/AssemblyInfo.cs
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_cs/liblas_swig_cs.csproj b/csharp-new/liblas_swig_cs/liblas_swig_cs.csproj
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_test/Program.cs b/csharp-new/liblas_swig_test/Program.cs
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_test/Properties/AssemblyInfo.cs b/csharp-new/liblas_swig_test/Properties/AssemblyInfo.cs
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_test/TestGuid.cs b/csharp-new/liblas_swig_test/TestGuid.cs
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_test/TestHeader.cs b/csharp-new/liblas_swig_test/TestHeader.cs
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_test/TestPoint.cs b/csharp-new/liblas_swig_test/TestPoint.cs
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_test/TestReader.cs b/csharp-new/liblas_swig_test/TestReader.cs
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_test/TestSpatialReference.cs b/csharp-new/liblas_swig_test/TestSpatialReference.cs
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_test/TestVariableRecord.cs b/csharp-new/liblas_swig_test/TestVariableRecord.cs
old mode 100644
new mode 100755
diff --git a/csharp-new/liblas_swig_test/liblas_swig_test.csproj b/csharp-new/liblas_swig_test/liblas_swig_test.csproj
old mode 100644
new mode 100755
diff --git a/csharp/HelloWorldLAS/HelloWorldLAS.csproj b/csharp/HelloWorldLAS/HelloWorldLAS.csproj
old mode 100644
new mode 100755
diff --git a/csharp/HelloWorldLAS/HelloWorldLAS_Express.csproj b/csharp/HelloWorldLAS/HelloWorldLAS_Express.csproj
old mode 100644
new mode 100755
diff --git a/csharp/HelloWorldLAS/Program.cs b/csharp/HelloWorldLAS/Program.cs
old mode 100644
new mode 100755
diff --git a/csharp/HelloWorldLAS/Properties/AssemblyInfo.cs b/csharp/HelloWorldLAS/Properties/AssemblyInfo.cs
old mode 100644
new mode 100755
diff --git a/csharp/NUnitTest/LASFilesClass.cs b/csharp/NUnitTest/LASFilesClass.cs
old mode 100644
new mode 100755
diff --git a/csharp/NUnitTest/LASGuidTest.cs b/csharp/NUnitTest/LASGuidTest.cs
old mode 100644
new mode 100755
diff --git a/csharp/NUnitTest/LASHeaderTest.cs b/csharp/NUnitTest/LASHeaderTest.cs
old mode 100644
new mode 100755
diff --git a/csharp/NUnitTest/LASPointTest.cs b/csharp/NUnitTest/LASPointTest.cs
old mode 100644
new mode 100755
diff --git a/csharp/NUnitTest/LASReaderTest.cs b/csharp/NUnitTest/LASReaderTest.cs
old mode 100644
new mode 100755
diff --git a/csharp/NUnitTest/LASVariableLengthRecordTest.cs b/csharp/NUnitTest/LASVariableLengthRecordTest.cs
old mode 100644
new mode 100755
diff --git a/csharp/NUnitTest/LASWriterTest.cs b/csharp/NUnitTest/LASWriterTest.cs
old mode 100644
new mode 100755
diff --git a/csharp/NUnitTest/NUnitTest.csproj b/csharp/NUnitTest/NUnitTest.csproj
old mode 100644
new mode 100755
diff --git a/csharp/NUnitTest/NUnitTest_Express.csproj b/csharp/NUnitTest/NUnitTest_Express.csproj
old mode 100644
new mode 100755
diff --git a/csharp/NUnitTest/Properties/AssemblyInfo.cs b/csharp/NUnitTest/Properties/AssemblyInfo.cs
old mode 100644
new mode 100755
diff --git a/csharp/Samples/Read_Express/ReadLAS.cs b/csharp/Samples/Read_Express/ReadLAS.cs
old mode 100644
new mode 100755
diff --git a/csharp/Samples/Read_Express/Read_Express.csproj b/csharp/Samples/Read_Express/Read_Express.csproj
old mode 100644
new mode 100755
diff --git a/csharp/Samples/WriteLAS/Properties/AssemblyInfo.cs b/csharp/Samples/WriteLAS/Properties/AssemblyInfo.cs
old mode 100644
new mode 100755
diff --git a/csharp/Samples/WriteLAS/WriteLAS.cs b/csharp/Samples/WriteLAS/WriteLAS.cs
old mode 100644
new mode 100755
diff --git a/csharp/Samples/WriteLAS/Write_Express.csproj b/csharp/Samples/WriteLAS/Write_Express.csproj
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS.sln b/csharp/dotnetLibLAS.sln
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/AssemblyInfo.cs b/csharp/dotnetLibLAS/AssemblyInfo.cs
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/LASException.cs b/csharp/dotnetLibLAS/LASException.cs
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/LASGuid.cs b/csharp/dotnetLibLAS/LASGuid.cs
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/LASHeader.cs b/csharp/dotnetLibLAS/LASHeader.cs
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/LASPoint.cs b/csharp/dotnetLibLAS/LASPoint.cs
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/LASReader.cs b/csharp/dotnetLibLAS/LASReader.cs
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/LASVariableLengthRecord.cs b/csharp/dotnetLibLAS/LASVariableLengthRecord.cs
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/LASWriter.cs b/csharp/dotnetLibLAS/LASWriter.cs
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/LibLASCAPI.cs b/csharp/dotnetLibLAS/LibLASCAPI.cs
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/dotnetLibLAS.csproj b/csharp/dotnetLibLAS/dotnetLibLAS.csproj
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/dotnetLibLAS.dll.config b/csharp/dotnetLibLAS/dotnetLibLAS.dll.config
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/dotnetLibLAS_Express.csproj b/csharp/dotnetLibLAS/dotnetLibLAS_Express.csproj
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/dotnetLibLas.xml b/csharp/dotnetLibLAS/dotnetLibLas.xml
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS/liblas.snk b/csharp/dotnetLibLAS/liblas.snk
old mode 100644
new mode 100755
diff --git a/csharp/dotnetLibLAS_xpress.sln b/csharp/dotnetLibLAS_xpress.sln
old mode 100644
new mode 100755
diff --git a/csharp/makefile.vc b/csharp/makefile.vc
old mode 100644
new mode 100755
diff --git a/doc/Makefile b/doc/Makefile
deleted file mode 100644
index 0f40004..0000000
--- a/doc/Makefile
+++ /dev/null
@@ -1,141 +0,0 @@
-# Makefile for Sphinx documentation
-#
-
-# You can set these variables from the command line.
-SPHINXOPTS    =
-SPHINXBUILD   = sphinx-build
-PAPER         =
-BUILDDIR      = build
-
-# Internal variables.
-PAPEROPT_a4     = -D latex_paper_size=a4
-PAPEROPT_letter = -D latex_paper_size=letter
-ALLSPHINXOPTS   = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
-
-.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext pdf
-
-help:
-	@echo "Please use \`make <target>' where <target> is one of"
-	@echo "  html       to make standalone HTML files"
-	@echo "  dirhtml    to make HTML files named index.html in directories"
-	@echo "  singlehtml to make a single large HTML file"
-	@echo "  pickle     to make pickle files"
-	@echo "  json       to make JSON files"
-	@echo "  htmlhelp   to make HTML files and a HTML help project"
-	@echo "  qthelp     to make HTML files and a qthelp project"
-	@echo "  devhelp    to make HTML files and a Devhelp project"
-	@echo "  epub       to make an epub"
-	@echo "  latex      to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
-	@echo "  latexpdf   to make LaTeX files and run them through pdflatex"
-	@echo "  text       to make text files"
-	@echo "  man        to make manual pages"
-	@echo "  gettext    to make PO message catalogs"
-	@echo "  changes    to make an overview of all changed/added/deprecated items"
-	@echo "  linkcheck  to check all external links for integrity"
-	@echo "  doctest    to run all doctests embedded in the documentation (if enabled)"
-
-clean:
-	-rm -rf $(BUILDDIR)/*
-
-html:
-	$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
-	@echo
-	@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
-
-dirhtml:
-	$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
-	@echo
-	@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
-
-singlehtml:
-	$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
-	@echo
-	@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
-
-pickle:
-	$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
-	@echo
-	@echo "Build finished; now you can process the pickle files."
-
-json:
-	$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
-	@echo
-	@echo "Build finished; now you can process the JSON files."
-
-htmlhelp:
-	$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
-	@echo
-	@echo "Build finished; now you can run HTML Help Workshop with the" \
-	      ".hhp project file in $(BUILDDIR)/htmlhelp."
-
-qthelp:
-	$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
-	@echo
-	@echo "Build finished; now you can run "qcollectiongenerator" with the" \
-	      ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
-	@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/df.qhcp"
-	@echo "To view the help file:"
-	@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/df.qhc"
-
-devhelp:
-	$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
-	@echo
-	@echo "Build finished."
-	@echo "To view the help file:"
-	@echo "# mkdir -p $$HOME/.local/share/devhelp/df"
-	@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/df"
-	@echo "# devhelp"
-
-epub:
-	$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
-	@echo
-	@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
-
-latex:
-	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
-	@echo
-	@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
-	@echo "Run \`make' in that directory to run these through (pdf)latex" \
-	      "(use \`make latexpdf' here to do that automatically)."
-
-latexpdf:
-	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
-	@echo "Running LaTeX files through pdflatex..."
-	make -C $(BUILDDIR)/latex all-pdf
-	@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
-
-text:
-	$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
-	@echo
-	@echo "Build finished. The text files are in $(BUILDDIR)/text."
-
-man:
-	$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
-	@echo
-	@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
-
-gettext:
-	$(SPHINXBUILD) -b gettext $(ALLSPHINXOPTS) $(BUILDDIR)/locale
-	@echo
-	@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
-
-changes:
-	$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
-	@echo
-	@echo "The overview file is in $(BUILDDIR)/changes."
-
-linkcheck:
-	$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
-	@echo
-	@echo "Link check complete; look for any errors in the above output " \
-	      "or in $(BUILDDIR)/linkcheck/output.txt."
-
-doctest:
-	$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
-	@echo "Testing of doctests in the sources finished, look at the " \
-	      "results in $(BUILDDIR)/doctest/output.txt."
-
-pdf:
-	$(SPHINXBUILD) -b pdf $(ALLSPHINXOPTS) build/pdf
-	@echo
-	@echo "Build finished; now you can process the PDF files."
\ No newline at end of file
diff --git a/doc/_static/liblas-color-pallette.css b/doc/_static/liblas-color-pallette.css
old mode 100644
new mode 100755
diff --git a/doc/_static/liblaslogo.png b/doc/_static/liblaslogo.png
old mode 100644
new mode 100755
diff --git a/doc/_static/pdf.png b/doc/_static/pdf.png
old mode 100644
new mode 100755
diff --git a/doc/_static/sphinx.css b/doc/_static/sphinx.css
old mode 100644
new mode 100755
diff --git a/doc/_templates/indexsidebar.html b/doc/_templates/indexsidebar.html
old mode 100644
new mode 100755
index 4a1e319..5a0b94e
--- a/doc/_templates/indexsidebar.html
+++ b/doc/_templates/indexsidebar.html
@@ -2,51 +2,11 @@
 <p>
 <a href="{{ pathto('docs') }}" title="Home">Documentation</a><br />
 <a href="{{ pathto('download') }}" title="Home">Download</a><br />
-<a href="http://trac.liblas.org" title="Bugs">Bugs</a><br />
+<a href="https://github.com/libLAS/libLAS/issues/" title="github">Bugs</a><br />
 
 <a href="{{ pathto('features') }}" title="Features">Features</a><br />
 <a href="{{ pathto('community') }}" title="Mailing Lists">Mailing Lists</a><br />
 
 </p>
 
-<p>
-<script src="http://widgets.twimg.com/j/2/widget.js"></script>
-<script>
-new TWTR.Widget({
-  version: 2,
-  type: 'profile',
-  rpp: 4,
-  interval: 6000,
-  width: 'auto',
-  height: 200,
-  theme: {
-    shell: {
-      background: '#6666ae',
-      color: '#ffffff'
-    },
-    tweets: {
-      background: '#6666ae',
-      color: '#ffffff',
-      links: '#ffffff'
-    }
-  },
-  features: {
-    scrollbar: false,
-    loop: false,
-    live: false,
-    hashtags: true,
-    timestamp: true,
-    avatars: false,
-    behavior: 'all'
-  }
-}).render().setUser('liblas').start();
-</script>
-</p>
-
-
-
-<p>
-<script type="text/javascript" src="http://www.ohloh.net/p/10742/widgets/project_thin_badge.js"></script>
-</p>
-
 
diff --git a/doc/_templates/layout.html b/doc/_templates/layout.html
old mode 100644
new mode 100755
index 7bb3ca4..42eeb5f
--- a/doc/_templates/layout.html
+++ b/doc/_templates/layout.html
@@ -15,9 +15,9 @@
     <td style="padding: 10px 10px 0px 0px; text-align: right; vertical-align: top;">
       <a href="{{ pathto('index') }}" title="Home">Home</a> |
       <a href="{{ pathto('docs') }}" title="Docs">Docs</a> |
-      <a href="https://github.com/liblas/liblas" title="Bugs">Bugs</a> |
+      <a href="https://github.com/libLAS/libLAS/issues/" title="Bugs">github</a> |
       <a href="{{ pathto('faq') }}" title="FAQ">FAQ</a> |
-      <a href="{{ pathto('download') }}" title="Download">Download </a>
+      <a href="{{ pathto('download') }}" title="Download">Download</a>
     </td>
   </tr>
   <tr>
diff --git a/doc/api/TracFooter.html b/doc/api/TracFooter.html
old mode 100644
new mode 100755
diff --git a/doc/api/TracHeader.html b/doc/api/TracHeader.html
old mode 100644
new mode 100755
diff --git a/doc/api/doxygen.conf b/doc/api/doxygen.conf
old mode 100644
new mode 100755
diff --git a/doc/api/doxygen.css b/doc/api/doxygen.css
old mode 100644
new mode 100755
diff --git a/doc/api/doxygen_dev.conf b/doc/api/doxygen_dev.conf
old mode 100644
new mode 100755
diff --git a/doc/community.txt b/doc/community.txt
old mode 100644
new mode 100755
index 0c1b813..349349e
--- a/doc/community.txt
+++ b/doc/community.txt
@@ -14,7 +14,7 @@ Mailing Lists
 Bugs
 ..............................................................................
 
-Visit http://trac.osgeo.org to file bugs or edit wiki pages with your own 
+Visit https://github.com/libLAS/libLAS/ to file bugs or edit wiki pages with your own 
 information about libLAS.  
 
 IRC
diff --git a/doc/compilation.txt b/doc/compilation.txt
old mode 100644
new mode 100755
diff --git a/doc/conf.py b/doc/conf.py
old mode 100644
new mode 100755
index d263e4a..211d888
--- a/doc/conf.py
+++ b/doc/conf.py
@@ -44,7 +44,7 @@ master_doc = 'docs'
 
 # General information about the project.
 project = u'libLAS'
-copyright = u'2010, Howard Butler, Mateusz Loskot and others'
+copyright = u'2014, Howard Butler, Mateusz Loskot and others'
 
 # The version info for the project you're documenting, acts as replacement for
 # |version| and |release|, also used in various other places throughout the
diff --git a/doc/copyright.txt b/doc/copyright.txt
old mode 100644
new mode 100755
diff --git a/doc/development/annual_report_2010.txt b/doc/development/annual_report_2010.txt
old mode 100644
new mode 100755
diff --git a/doc/development/buildbot.txt b/doc/development/buildbot.txt
old mode 100644
new mode 100755
index 304070a..e0dcf56
--- a/doc/development/buildbot.txt
+++ b/doc/development/buildbot.txt
@@ -38,27 +38,12 @@ written to stderr.  Be careful to write it in the right directory or some
 tests will fail for reasons that are not clear. 
 
 
-Continuous Integration - buildbot
+Continuous Integration - TravisCI
 ..............................................................................
 
 
-The libLAS project uses `Buildbot <http://buildbot.net/trac>`__ to perform
-automated builds and continuous integration. Thanks to the
-`OSGeo Foundation`_, a dedicated Buildbot instance is hosted on the `OSGeo Buildbot`_.
-
-
-The libLAS Buildbot status is rendered on the `libLAS buildbot waterfall`_
-which can be used to trigger new builds on request.
-
-There is also #bbliblas bot present on `IRC`_ #liblas] IRC channel:
-
-::
-
-<mloskot> bbliblas: force build telascience-full "Routine check"
-
-.. warning::
-    Currently the buildbot instance is not operational.  This section will
-    be updated when an analygous service is available again.
+The libLAS project uses `Travis <https://travis-ci.org/libLAS/libLAS>`__ to perform
+automated builds and continuous integration. 
 
 
 Building libLAS and running unit tests using CMake on Unix
diff --git a/doc/development/format_elements.txt b/doc/development/format_elements.txt
old mode 100644
new mode 100755
diff --git a/doc/development/index.txt b/doc/development/index.txt
old mode 100644
new mode 100755
diff --git a/doc/development/rfc/index.txt b/doc/development/rfc/index.txt
old mode 100644
new mode 100755
diff --git a/doc/development/rfc/rfc_1_verticalcs.txt b/doc/development/rfc/rfc_1_verticalcs.txt
old mode 100644
new mode 100755
diff --git a/doc/development/rfc/rfc_2_spatialreference.txt b/doc/development/rfc/rfc_2_spatialreference.txt
old mode 100644
new mode 100755
diff --git a/doc/development/source.txt b/doc/development/source.txt
old mode 100644
new mode 100755
diff --git a/doc/development/specifications.txt b/doc/development/specifications.txt
old mode 100644
new mode 100755
diff --git a/doc/development/wkt.txt b/doc/development/wkt.txt
old mode 100644
new mode 100755
diff --git a/doc/docs.txt b/doc/docs.txt
old mode 100644
new mode 100755
index daaa06d..3373c2f
--- a/doc/docs.txt
+++ b/doc/docs.txt
@@ -24,8 +24,8 @@ libLAS Documentation
    faq
    development/index
    utilities/index
-   C++ Class API <http://test.liblas.org/doxygen/annotated.html>
-   C API <http://test.liblas.org/doxygen/liblas_8h.html>
+   C++ Class API <http://liblas.org/doxygen/annotated.html>
+   C API <http://liblas.org/doxygen/liblas_8h.html>
    Python API<python>
    lastools
 
diff --git a/doc/download.txt b/doc/download.txt
old mode 100644
new mode 100755
index 0bb2280..4f5fb1b
--- a/doc/download.txt
+++ b/doc/download.txt
@@ -8,17 +8,16 @@ Download
 Current Release(s)
 ------------------------------------------------------------------------------
 
-* **2011-07-01** 
+* **2012-01-06** 
 
-  - `libLAS-1.7.0b2-src.tar.gz  <http://download2.osgeo.org/liblas/libLAS-1.7.0b2.tar.gz>`__ 
-    `(md5) <http://download2.osgeo.org/liblas/libLAS-1.7.0b2.tar.gz.md5>`__ 
+  - `libLAS-1.7.0-src.tar.gz  <http://download.osgeo.org/liblas/libLAS-1.7.0.tar.gz>`__ 
+    `(md5) <http://download2.osgeo.org/liblas/libLAS-1.7.0.tar.gz.md5>`__ 
 
-  - `libLAS-1.7.0b2-src.zip <http://download2.osgeo.org/liblas/libLAS-1.7.0b2.zip>`_ 
-    `(md5) <http://download2.osgeo.org/liblas/libLAS-1.7.0b2.zip.md5>`__
+  - `libLAS-1.7.0-src.zip <http://download.osgeo.org/liblas/libLAS-1.7.0.zip>`_ 
+    `(md5) <http://download2.osgeo.org/liblas/libLAS-1.7.0.zip.md5>`__
 
   - See `OSGeo4W <http://trac.osgeo.org/osgeo4w>`__ for Windows release.
   
-  - `Release Notes <http://lists.osgeo.org/pipermail/liblas-devel/2011-July/001410.html>`__
 
 
 .. note::
@@ -36,128 +35,6 @@ Current Release(s)
     how to get started using the tools once they are installed.
 
 
-Past Releases
-------------------------------------------------------------------------------
-
-* **2011-06-30** 
-
-  - `libLAS-1.7.0b1-src.tar.gz  <http://download.osgeo.org/liblas/libLAS-1.7.0b1.tar.gz>`__ 
-    `(md5) <http://download.osgeo.org/liblas/libLAS-1.7.0b1.tar.gz.md5>`__ 
-
-  - `libLAS-1.7.0b1-src.zip <http://download.osgeo.org/liblas/libLAS-1.7.0b1.zip>`_ 
-    `(md5) <http://download.osgeo.org/liblas/libLAS-1.7.0b1.zip.md5>`__
-
-  - See `OSGeo4W <http://trac.osgeo.org/osgeo4w>`__ for Windows release.
-  
-  - `Release Notes <http://lists.osgeo.org/pipermail/liblas-devel/2011-June/001409.html>`__
-
-
-* **2011-04-05** 
-
-  - `libLAS-1.6.1-src.tar.gz  <http://download.osgeo.org/liblas/libLAS-1.6.1.tar.gz>`__ 
-    `(md5) <http://download.osgeo.org/liblas/libLAS-1.6.1.tar.gz.md5>`__ 
-
-  - `libLAS-1.6.1-src.zip <http://download.osgeo.org/liblas/libLAS-1.6.1.zip>`_ 
-    `(md5) <http://download.osgeo.org/liblas/libLAS-1.6.1.zip.md5>`__
-
-  - See `OSGeo4W <http://trac.osgeo.org/osgeo4w>`__ for Windows release.
-  
-  - `Release Notes <http://lists.osgeo.org/pipermail/liblas-devel/2011-April/001303.html>`__
-
-* **2011-02-01** 
-
-  - `libLAS-1.6.0-src.tar.gz  <http://download.osgeo.org/liblas/libLAS-1.6.0.tar.gz>`__ 
-    `(md5) <http://download.osgeo.org/liblas/libLAS-1.6.0.tar.gz.md5>`__ 
-
-  - `libLAS-1.6.0-src.zip <http://download.osgeo.org/liblas/libLAS-1.6.0.zip>`_ 
-    `(md5) <http://download.osgeo.org/liblas/libLAS-1.6.0.zip.md5>`__
-
-  - See `OSGeo4W <http://trac.osgeo.org/osgeo4w>`__ for Windows release.
-  
-  - `Release Notes <http://lists.osgeo.org/pipermail/liblas-devel/2011-February/001194.html>`__
-
-* **2011-1-7** 
-
-  - `libLAS-1.6.0b4-src.tar.gz  <http://download.osgeo.org/liblas/libLAS-1.6.0b4.tar.gz>`__ 
-    `(md5) <http://download.osgeo.org/liblas/libLAS-1.6.0b4.tar.gz.md5>`__ 
-
-  - `libLAS-1.6.0b4-src.zip <http://download.osgeo.org/liblas/libLAS-1.6.0b4.zip>`_ 
-    `(md5) <http://download.osgeo.org/liblas/libLAS-1.6.0b4.zip.md5>`__
-
-  - See `OSGeo4W <http://trac.osgeo.org/osgeo4w>`__ for Windows release.
-  
-  - `Release Notes <http://lists.osgeo.org/pipermail/liblas-devel/2010-December/001108.html>`__
-
-
-
-* **2010-12-15** 
-
-  - `libLAS-1.6.0b3-src.tar.gz`_ 
-    `(md5) <http://download.osgeo.org/liblas/libLAS-1.6.0b3.tar.gz.md5>`__ 
-
-  - `libLAS-1.6.0b3-src.zip <http://download.osgeo.org/liblas/libLAS-1.6.0b3.zip>`_ 
-    `(md5) <http://download.osgeo.org/liblas/libLAS-1.6.0b3.zip.md5>`__
-
-  - See `OSGeo4W <http://trac.osgeo.org/osgeo4w>`__ for Windows release.
-  
-  - `Release Notes <http://lists.osgeo.org/pipermail/liblas-devel/2010-December/001108.html>`__
-
-.. _`libLAS-1.6.0b3-src.tar.gz`: http://download.osgeo.org/liblas/libLAS-1.6.0b3.tar.gz
-
-
-* **2010-11-05** 
-
-  - `libLAS-1.6.0b2-src.tar.gz`_ 
-    `(md5) <http://trac.liblas.org/raw-attachment/wiki/1.6.0b2/libLAS-1.6.0b2.tar.gz.md5>`__ 
-
-  - `libLAS-1.6.0b2-src.zip <http://trac.liblas.org/raw-attachment/wiki/1.6.0b2/libLAS-1.6.0b2.zip>`_ 
-    `(md5) <http://trac.liblas.org/raw-attachment/wiki/1.6.0b2/libLAS-1.6.0b2.zip.md5>`__
-
-  - See `OSGeo4W <http://trac.osgeo.org/osgeo4w>`__ for Windows release.
-  
-  - `Release Notes <http://trac.liblas.org/wiki/1.6.0b2>`__
-
-.. _`libLAS-1.6.0b2-src.tar.gz`: http://trac.liblas.org/raw-attachment/wiki/1.6.0b2/libLAS-1.6.0b2.tar.gz
-
-* **2010-10-12** 
-
-  - `libLAS-1.6.0b1-src.tar.gz`_ 
-    `(md5) <http://trac.liblas.org/raw-attachment/wiki/1.6.0b1/libLAS-1.6.0b1.tar.gz.md5>`__ 
-
-  - `libLAS-1.6.0b1-src.zip <http://trac.liblas.org/raw-attachment/wiki/1.6.0b1/libLAS-1.6.0b1.zip>`_ 
-    `(md5) <http://trac.liblas.org/raw-attachment/wiki/1.6.0b1/libLAS-1.6.0b1.zip.md5>`__
-
-  - `Release Notes <http://trac.liblas.org/wiki/1.6.0b1>`__
-
-.. _`libLAS-1.6.0b1-src.tar.gz`: http://trac.liblas.org/raw-attachment/wiki/1.6.0b1/libLAS-1.6.0b1.tar.gz
-
-
-* **2009-10-02** 
-
-  - `liblas-src-1.2.1.tar.gz`_ 
-    `(md5) <http://trac.liblas.org/raw-attachment/wiki/1.2.1/liblas-src-1.2.1.tar.gz.md5>`__ 
-
-  - `liblas-1.2.1-win32 <http://trac.liblas.org/raw-attachment/wiki/1.2.1/liblas-1.2.1-win32.zip>`_ 
-    `(md5) <http://trac.liblas.org/raw-attachment/wiki/1.2.1/liblas-1.2.1-win32.zip.md5>`__
-
-  - `Release Notes <http://trac.liblas.org/wiki/1.2.1>`__
-
-.. _`liblas-src-1.2.1.tar.gz`: http://trac.liblas.org/raw-attachment/wiki/1.2.1/liblas-src-1.2.1.tar.gz
-
-
-* **2009-03-25** 
-
-  - `liblas-src-1.2.0.tar.gz`_ 
-    `(md5) <http://trac.liblas.org/raw-attachment/wiki/1.2.0/liblas-src-1.2.0.tar.gz.md5>`__
-
-  - `liblas-1.2.0-win32 <http://trac.liblas.org/raw-attachment/wiki/1.2.0/liblas-1.2.0-win32.zip>`_ 
-    `(md5) <http://trac.liblas.org/raw-attachment/wiki/1.2.0/liblas-1.2.0-win32.zip.md5>`__
-
-  - `Release Notes <http://trac.liblas.org/wiki/1.2.0>`__
-
-.. _`liblas-src-1.2.0.tar.gz`: http://trac.liblas.org/raw-attachment/wiki/1.2.0/liblas-src-1.2.0.tar.gz
-
-
 Development Source
 ..............................................................................
 
@@ -207,6 +84,11 @@ Windows
     
 .. _`OSGeo4W`: http://trac.osgeo.org/osgeo4w/
 
+Mac
+..............................................................................
+
+`Homebrew <http://brew.sh/>`__ has you covered on OSX
+
 
 .. _linux:
 
diff --git a/doc/faq.txt b/doc/faq.txt
old mode 100644
new mode 100755
index 26952b8..41f18a1
--- a/doc/faq.txt
+++ b/doc/faq.txt
@@ -16,6 +16,15 @@ reading and writing support. Additionally, a number of organizations also use
 libLAS for a variety of tasks. See `here
 <http://trac.liblas.org/wiki/WhoUsesLibLAS>`__ for more details.
 
+What is libLAS's development status?
+--------------------------------------------------------------------------------
+
+libLAS is in a rather dormant period and is essentially in maintenance-only 
+mode at this time. It is suggested you build atop `LASlib`_ if you are starting 
+new development.
+
+.. _`LASlib`: http://www.cs.unc.edu/~isenburg/lastools/
+
 What software supports ASPRS LAS Format?
 --------------------------------------------------------------------------------
 
@@ -23,6 +32,14 @@ There is a number of geospatial software packages that support read/write of
 ASPRS LAS Format. Popular software is listed on the `Software
 <http://trac.liblas.org/wiki/Software>`__ Wiki page.
 
+Where did libLAS' Python support go?
+--------------------------------------------------------------------------------
+
+http://www.laspy.org 
+supports LAS 1.0-LAS 1.4, and it is suggested you use that if you want 
+full Python support. libLAS' Python support was poorly implemented and not 
+as featureful as laspy. laspy is a new, more complete effort. Don't use libLAS' 
+Python library for any new development. It is slated to be removed in the future.
 
 How does ASPRS LAS Format handle endianness?
 --------------------------------------------------------------------------------
@@ -42,11 +59,11 @@ stabilizes and there are enough softwares and implementations out there to
 base the work on. The LAS 2.0 specification is a whole-scale rewrite of the
 LAS specification, and its implementation will be challenging within libLAS.
 
-Does libLAS support LAS 1.3?
+Does libLAS support LAS 1.3 or LAS 1.4?
 --------------------------------------------------------------------------------
 
 Not at this time. Waveform data and software models to support waveform models
-within libLAS have not yet been developed. libLAS 1.6 supports reading point
+within libLAS have not yet been developed. libLAS 1.6+ supports reading point
 data from LAS 1.3 files, but waveform data is not supported.
 
 How can I remove points classified as ground from LAS files?
@@ -58,21 +75,3 @@ points removed::
    
     las2las input.las output.las --drop-classes 2
 
-How can I get past the linking error when building svn trunk on OS X 10.4?
---------------------------------------------------------------------------------
-
-::
-
-    ld: multiple definitions of symbol ___divdi3
-    /usr/lib/gcc/powerpc-apple-darwin8/4.0.1/libgcc.a(_divdi3.o) private external definition of ___divdi3 in section (__TEXT,__text)
-    /usr/lib/gcc/powerpc-apple-darwin8/4.0.1/../../../libgcc_s.10.4.dylib(_divdi3_s.o) definition of ___divdi3
-    ld: multiple definitions of symbol ___udivdi3
-    /usr/lib/gcc/powerpc-apple-darwin8/4.0.1/libgcc.a(_udivdi3.o) private external definition of ___udivdi3 in section (__TEXT,__text)
-    /usr/lib/gcc/powerpc-apple-darwin8/4.0.1/../../../libgcc_s.10.4.dylib(_udivdi3_s.o) definition of ___udivdi3
-    ld: multiple definitions of symbol ___umoddi3
-    /usr/lib/gcc/powerpc-apple-darwin8/4.0.1/libgcc.a(_umoddi3.o) private external definition of ___umoddi3 in section (__TEXT,__text)
-    /usr/lib/gcc/powerpc-apple-darwin8/4.0.1/../../../libgcc_s.10.4.dylib(_umoddi3_s.o) definition of ___umoddi3
-    /usr/bin/libtool: internal link edit command failed
-    
-OS X 10.4's XCode has an extremely old automake/autoconf/libtool stack, and without upgrading those, 
-you'll have to stick to building libLAS from releases.
diff --git a/doc/features.txt b/doc/features.txt
old mode 100644
new mode 100755
diff --git a/doc/images/boostpro-options.png b/doc/images/boostpro-options.png
old mode 100644
new mode 100755
diff --git a/doc/images/ccmake-osx-start.png b/doc/images/ccmake-osx-start.png
old mode 100644
new mode 100755
diff --git a/doc/images/cmake-gui-osx-configured.png b/doc/images/cmake-gui-osx-configured.png
old mode 100644
new mode 100755
diff --git a/doc/images/cmake-gui-osx-start.png b/doc/images/cmake-gui-osx-start.png
old mode 100644
new mode 100755
diff --git a/doc/images/lasblock_big.png b/doc/images/lasblock_big.png
old mode 100644
new mode 100755
diff --git a/doc/images/lasblock_small.png b/doc/images/lasblock_small.png
old mode 100644
new mode 100755
diff --git a/doc/images/liblas-logo.svg b/doc/images/liblas-logo.svg
old mode 100644
new mode 100755
diff --git a/doc/images/liblas-twitter-logo.png b/doc/images/liblas-twitter-logo.png
old mode 100644
new mode 100755
diff --git a/doc/images/osgeo4w-advanced-install.png b/doc/images/osgeo4w-advanced-install.png
old mode 100644
new mode 100755
diff --git a/doc/images/osgeo4w-las2las-reproject.png b/doc/images/osgeo4w-las2las-reproject.png
old mode 100644
new mode 100755
diff --git a/doc/images/osgeo4w-lasinfo-output.png b/doc/images/osgeo4w-lasinfo-output.png
old mode 100644
new mode 100755
diff --git a/doc/images/osgeo4w-lasinfo-point.png b/doc/images/osgeo4w-lasinfo-point.png
old mode 100644
new mode 100755
diff --git a/doc/images/osgeo4w-run-liblas-shell.png b/doc/images/osgeo4w-run-liblas-shell.png
old mode 100644
new mode 100755
diff --git a/doc/images/osgeo4w-select-liblas.png b/doc/images/osgeo4w-select-liblas.png
old mode 100644
new mode 100755
diff --git a/doc/images/windows-cmake-generator-makefiles.png b/doc/images/windows-cmake-generator-makefiles.png
old mode 100644
new mode 100755
diff --git a/doc/images/windows-cmake-generator-visual-studio-9.png b/doc/images/windows-cmake-generator-visual-studio-9.png
old mode 100644
new mode 100755
diff --git a/doc/images/windows-cmake-start.png b/doc/images/windows-cmake-start.png
old mode 100644
new mode 100755
diff --git a/doc/images/windows-command-prompt.png b/doc/images/windows-command-prompt.png
old mode 100644
new mode 100755
diff --git a/doc/images/windows-msvc-build.png b/doc/images/windows-msvc-build.png
old mode 100644
new mode 100755
diff --git a/doc/images/windows-osgeo4w-advanced-install.png b/doc/images/windows-osgeo4w-advanced-install.png
old mode 100644
new mode 100755
diff --git a/doc/images/windows-osgeo4w-choosing-packages.png b/doc/images/windows-osgeo4w-choosing-packages.png
old mode 100644
new mode 100755
diff --git a/doc/images/xcode-lasinfo-arguments.png b/doc/images/xcode-lasinfo-arguments.png
old mode 100644
new mode 100755
diff --git a/doc/images/xcode-lasinfo-output.png b/doc/images/xcode-lasinfo-output.png
old mode 100644
new mode 100755
diff --git a/doc/images/xcode-set-default-executable.png b/doc/images/xcode-set-default-executable.png
old mode 100644
new mode 100755
diff --git a/doc/images/xcode-start.png b/doc/images/xcode-start.png
old mode 100644
new mode 100755
diff --git a/doc/index.txt b/doc/index.txt
old mode 100644
new mode 100755
index 168b830..76b525a
--- a/doc/index.txt
+++ b/doc/index.txt
@@ -18,24 +18,19 @@ Iowa DNR for use in its state-wide `LIDAR`_ project.  Ongoing support for
 libLAS is provided by a number of organizations including the 
 `U.S. Army Cold Regions Research and Engineering Laboratory`_.
 
-libLAS builds upon by `Martin Isenburg and Jonathan Shewchuk`_ of LLNL/UC
-Berkeley in their `LAStools`_ project to do a number of things. First, the
-libLAS focuses almost completely on providing an easy-to-program-with library
-for software developers wishing to implement the LAS specification in their
-own software. libLAS is a building block for developers looking to implement
-their own LiDAR data processing when working with ASPRS LAS data.
+As of 2014, libLAS has been almost entirely superceded by `Martin Isenburg`_'s `LASlib`_ library. The only functionality that libLAS provides over LASlib is the 
+ability to work with `GDAL`_-derived coordinate system information and 
+reproject into infrequently-used coordinate systems. Additionally, libLAS' 
+Python capabilities are much better expressed by the pure-Python laspy 
+http://laspy.org library, and if manipulating LAS data in Python is your 
+ultimate desire, use that instead of libLAS.
 
-For more information, :ref:`this document <lastools_liblas>` provides a
-comparison and description of the relationship of libLAS to LAStools.
 
-.. seealso::
-    http://trac.liblas.org contains the previous incarnation of the libLAS 
-    website.  If you can't find something here, it should still be there.
 
 
 .. _`U.S. Army Cold Regions Research and Engineering Laboratory` : http://www.crrel.usace.army.mil/
 
-
+.. _`LASlib`: http://www.cs.unc.edu/~isenburg/lastools/download/laslib.zip
 
 
 
diff --git a/doc/lastools.txt b/doc/lastools.txt
old mode 100644
new mode 100755
diff --git a/doc/liblas.json b/doc/liblas.json
old mode 100644
new mode 100755
diff --git a/doc/make.bat b/doc/make.bat
old mode 100644
new mode 100755
diff --git a/doc/osgeo4w.txt b/doc/osgeo4w.txt
old mode 100644
new mode 100755
diff --git a/doc/python.txt b/doc/python.txt
old mode 100644
new mode 100755
index 299eae6..ba2b41f
--- a/doc/python.txt
+++ b/doc/python.txt
@@ -41,17 +41,6 @@ liblas.file.File
                 __getitem__,
                 __len__
                 
-=============================================
-liblas.format.Format
-=============================================
-
-.. autoclass:: liblas.format.Format
-    :members:   __init__,
-                major,
-                minor,
-                color,
-                time,
-                size
 
 =============================================
 liblas.guid.GUID
diff --git a/doc/start.txt b/doc/start.txt
old mode 100644
new mode 100755
index 5e9508a..3dc986a
--- a/doc/start.txt
+++ b/doc/start.txt
@@ -45,6 +45,20 @@ Packages are available for `DebianGIS`_, but in most other cases you are
 going to have to compile libLAS yourself. :ref:`compilation` provides an 
 extensive synopsis of how to do so.
 
+OSX
+..............................................................................
+
+If you use you `Homebrew`_, you can install libLAS this way::
+
+    $ brew install liblas
+
+If you want the latest development version::
+
+    $ brew install liblas --HEAD
+
+Otherwise, you have to :ref:`compile <compilation>` libLAS yourself.
+
+
 Compilation
 ..............................................................................
 
@@ -297,3 +311,4 @@ compression library.
 .. _`WKT`: http://en.wikipedia.org/wiki/Well-known_text#Spatial_reference_systems
 .. _`GDAL`: http://gdal.org
 .. _`Autzen_Stadium`: http://liblas.org/samples/Autzen_Stadium.zip
+.. _`Homebrew`: http://brew.sh
diff --git a/doc/tutorial/boo.txt b/doc/tutorial/boo.txt
old mode 100644
new mode 100755
diff --git a/doc/tutorial/cpp.txt b/doc/tutorial/cpp.txt
old mode 100644
new mode 100755
index 5b2f496..6a0cdd6
--- a/doc/tutorial/cpp.txt
+++ b/doc/tutorial/cpp.txt
@@ -311,7 +311,7 @@ that is an exact copy of the file except for it contains compressed data.
             liblas::Reader reader = f.CreateWithStream(ifs);
 
             liblas::Header header = reader.GetHeader();
-            header.Compressed(true);
+            header.SetCompressed(true);
             
             liblas::Writer writer(ofs, header);
 
@@ -401,10 +401,10 @@ function.
             exit(1);
         }
         
-        std::vector<liblas::uint8_t> classes;
-        classes.push_back(2); // ground
-        classes.push_back(9); // water
-        classes.push_back(6); // building
+        std::vector<liblas::Classification> classes;
+        classes.push_back(liblas::Classification(2)); // ground
+        classes.push_back(liblas::Classification(9)); // water
+        classes.push_back(liblas::Classification(6)); // building
     
         std::vector<liblas::FilterPtr> filters;
         liblas::FilterPtr class_filter = liblas::FilterPtr(new liblas::ClassificationFilter(classes));
@@ -438,4 +438,4 @@ function.
 
 .. _`unit tests package`: http://trac.liblas.org/browser/test/unit
 .. _`LASzip`: http://laszip.org
-.. _`GDAL`: http://gdal.org
\ No newline at end of file
+.. _`GDAL`: http://gdal.org
diff --git a/doc/tutorial/csharp.txt b/doc/tutorial/csharp.txt
old mode 100644
new mode 100755
diff --git a/doc/tutorial/index.txt b/doc/tutorial/index.txt
old mode 100644
new mode 100755
diff --git a/doc/tutorial/ironpython.txt b/doc/tutorial/ironpython.txt
old mode 100644
new mode 100755
diff --git a/doc/tutorial/python.txt b/doc/tutorial/python.txt
old mode 100644
new mode 100755
diff --git a/doc/tutorial/qhull.txt b/doc/tutorial/qhull.txt
old mode 100644
new mode 100755
diff --git a/doc/tutorial/vbnet.txt b/doc/tutorial/vbnet.txt
old mode 100644
new mode 100755
diff --git a/doc/utilities/index.txt b/doc/utilities/index.txt
old mode 100644
new mode 100755
index 26a74b2..cc35eb2
--- a/doc/utilities/index.txt
+++ b/doc/utilities/index.txt
@@ -17,4 +17,5 @@
    las2ogr
    txt2las
    lasblock
-   ts2las
\ No newline at end of file
+   ts2las
+   las2tindex
\ No newline at end of file
diff --git a/doc/utilities/las2las-old.txt b/doc/utilities/las2las-old.txt
old mode 100644
new mode 100755
index 612ff16..6c5c85f
--- a/doc/utilities/las2las-old.txt
+++ b/doc/utilities/las2las-old.txt
@@ -17,10 +17,10 @@
 Description
 -----------
 
-:ref:`_las2las_old` reads and writes LiDAR data in the ASPRS LAS 1.0 and 1.1 formats while 
+`las2las_old` reads and writes LiDAR data in the ASPRS LAS 1.0 and 1.1 formats while 
 modifying its contents. While `lasinfo_old` can do a few simple operations like 
 updating header information, more drastic changes, like removing points or 
-altering values, will require :ref:`_las2las_old`.  :ref:`_las2las_old` is expected to be used for 
+altering values, will require `las2las_old`.  `las2las_old` is expected to be used for 
 modifying single files at a time, and all :ref:`las2las` operations require multiple 
 read passes through the points.   Some examples of operations `las2las` can be 
 used for include:
@@ -36,7 +36,7 @@ used for include:
 * changing the format from LAS 1.0 to 1.1 or vice versa
 * eliminating points of a given classification (--eliminate class 2)
 
-:ref:`_las2las_old` is a port of Martin Isenburg's :ref:`_las2las_old` utility from `LASTools`_ 
+`las2las_old` is a port of Martin Isenburg's `las2las_old` utility from `LASTools`_ 
 to the libLAS library.  For the most part, it is unchanged from Martin's 
 utility except for a few differences:
 
diff --git a/doc/utilities/las2las.txt b/doc/utilities/las2las.txt
old mode 100644
new mode 100755
diff --git a/doc/utilities/las2ogr.txt b/doc/utilities/las2ogr.txt
old mode 100644
new mode 100755
index ffb6fc9..643ed42
--- a/doc/utilities/las2ogr.txt
+++ b/doc/utilities/las2ogr.txt
@@ -12,9 +12,6 @@
 :Author: Mateusz Loskot
 :Contact: mateusz at loskot.net
 
-lasdiff compares two LAS files and reports whether they are identical 
-or whether they are different.
-
 las2ogr converts LAS file to data source using OGR drivers 
 available from GDAL/OGR package. This utility is useful to translate
 cloud of points collected by LiDAR sensors to vectors for easier 
diff --git a/doc/utilities/las2tindex.txt b/doc/utilities/las2tindex.txt
new file mode 100755
index 0000000..820c060
--- /dev/null
+++ b/doc/utilities/las2tindex.txt
@@ -0,0 +1,50 @@
+
+.. raw:: pdf
+
+    PageBreak
+    
+.. _las2tindex:
+    
+****************************************************************
+  las2tindex
+****************************************************************
+
+:Author: Luca Delucchi
+:Contact: luca.delucchi at fmach.it
+
+las2tindex create a OGR vector file containg the tile index of several
+LAS/LAZ files.
+
+If `libLAS Python library <../tutorial/python>`_ is installed the script use it otherwise it launch and
+parse lasinfo command to obtain the bounding box of each LAS/LAZ file
+
+.. note::
+    Windows users can install GDAL binaries using friendly installer from OSGeo4W package.
+
+Usage
+-----
+
+::
+
+    $ las2tindex -h
+    Usage: las2tindex OPTIONS lasfiles
+    Options are:
+        -h print this message
+        -o [--output]   output file
+        -f [--format]   OGR format for output file
+        -e [--epsg]     EPSG code of input and output file
+
+Example
+-------
+
+Write tile index file in ESRI Shapefile format of all your LAS files into folder
+
+::
+
+    $ las2tindex -o points.shp *.las
+
+Write tile index file in KML format of three LAZ files
+
+::
+
+    $ las2tindex -o points.kml -f KML first.laz second.laz third.laz
diff --git a/doc/utilities/las2txt.txt b/doc/utilities/las2txt.txt
old mode 100644
new mode 100755
diff --git a/doc/utilities/lasblock.txt b/doc/utilities/lasblock.txt
old mode 100644
new mode 100755
diff --git a/doc/utilities/lasdiff.txt b/doc/utilities/lasdiff.txt
old mode 100644
new mode 100755
diff --git a/doc/utilities/lasinfo-old.txt b/doc/utilities/lasinfo-old.txt
old mode 100644
new mode 100755
diff --git a/doc/utilities/lasinfo.txt b/doc/utilities/lasinfo.txt
old mode 100644
new mode 100755
diff --git a/doc/utilities/lasmerge.txt b/doc/utilities/lasmerge.txt
old mode 100644
new mode 100755
diff --git a/doc/utilities/ts2las.txt b/doc/utilities/ts2las.txt
old mode 100644
new mode 100755
diff --git a/doc/utilities/txt2las.txt b/doc/utilities/txt2las.txt
old mode 100644
new mode 100755
diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
old mode 100644
new mode 100755
diff --git a/include/liblas/bounds.hpp b/include/liblas/bounds.hpp
old mode 100644
new mode 100755
index 68e62a3..2bb7079
--- a/include/liblas/bounds.hpp
+++ b/include/liblas/bounds.hpp
@@ -47,8 +47,6 @@
 #include <liblas/transform.hpp>
 #include <liblas/detail/private_utility.hpp>
 #include <liblas/export.hpp>
-// boost
-#include <boost/cstdint.hpp>
 
 #include <boost/concept_check.hpp>
 // std
@@ -61,6 +59,7 @@
 
 namespace liblas {
 
+
 template <typename T>
 class LAS_DLL Range
 {
@@ -325,36 +324,34 @@ void (max)(std::size_t const& index, T v)
     ranges[index].maximum = v;
 }
 
-liblas::Point (min)() {
-    liblas::Point p;
-    try 
-    {
-        p.SetCoordinates(ranges[0].minimum, ranges[1].minimum, ranges[2].minimum);
-    } 
-    catch (std::runtime_error const& e)
-    {
-        ::boost::ignore_unused_variable_warning(e);
-        p.SetCoordinates(ranges[0].minimum, ranges[1].minimum, 0);
-        
-    }
-
-    return p;
-}
-
-liblas::Point (max)() {
-    liblas::Point p;
-    try 
-    {
-        p.SetCoordinates(ranges[0].maximum, ranges[1].maximum, ranges[2].maximum);
-    } 
-    catch (std::runtime_error const& e)
-    {
-        ::boost::ignore_unused_variable_warning(e);
-        p.SetCoordinates(ranges[0].maximum, ranges[1].maximum, 0);
-        
-    }
-    return p;
-}
+// liblas::Point (min)() {
+//     liblas::Point p(&DefaultHeader::get());
+//     try
+//     {
+//         p.SetCoordinates(ranges[0].minimum, ranges[1].minimum, ranges[2].minimum);
+//     }
+//     catch (std::runtime_error const& )
+//     {
+//         p.SetCoordinates(ranges[0].minimum, ranges[1].minimum, 0);
+//
+//     }
+//
+//     return p;
+// }
+//
+// liblas::Point (max)() {
+//     liblas::Point p(&DefaultHeader::get());
+//     try
+//     {
+//         p.SetCoordinates(ranges[0].maximum, ranges[1].maximum, ranges[2].maximum);
+//     }
+//     catch (std::runtime_error const& )
+//     {
+//         p.SetCoordinates(ranges[0].maximum, ranges[1].maximum, 0);
+//
+//     }
+//     return p;
+// }
 
 T minx() const { if (ranges.size() == 0) return 0; return ranges[0].minimum; }
 T miny() const { if (ranges.size() < 2) return 0; return ranges[1].minimum; }
@@ -571,16 +568,16 @@ void verify()
     }
 }
 
-Bounds<T> project(liblas::SpatialReference const& in_ref, liblas::SpatialReference const& out_ref)
-{
-    liblas::ReprojectionTransform trans(in_ref, out_ref);
-    
-    liblas::Point minimum = (min)();
-    liblas::Point maximum = (max)();
-    trans.transform(minimum);
-    trans.transform(maximum);
-    return Bounds<T>(minimum, maximum);
-}
+// Bounds<T> project(liblas::SpatialReference const& in_ref, liblas::SpatialReference const& out_ref)
+// {
+//     liblas::ReprojectionTransform trans(in_ref, out_ref);
+//
+//     liblas::Point minimum = (min)();
+//     liblas::Point maximum = (max)();
+//     trans.transform(minimum);
+//     trans.transform(maximum);
+//     return Bounds<T>(minimum, maximum);
+// }
 
 
 
diff --git a/include/liblas/capi/las_config.h b/include/liblas/capi/las_config.h
old mode 100644
new mode 100755
diff --git a/include/liblas/capi/las_version.h b/include/liblas/capi/las_version.h
old mode 100644
new mode 100755
index e759d37..c6c61c2
--- a/include/liblas/capi/las_version.h
+++ b/include/liblas/capi/las_version.h
@@ -44,7 +44,7 @@
 
 #ifndef LIBLAS_VERSION_MAJOR
 #define LIBLAS_VERSION_MAJOR    1
-#define LIBLAS_VERSION_MINOR    7
+#define LIBLAS_VERSION_MINOR    8
 #define LIBLAS_VERSION_REV      0
 #define LIBLAS_VERSION_BUILD    0
 #endif
@@ -54,11 +54,11 @@
 #endif
 
 #ifndef LIBLAS_RELEASE_DATE
-#define LIBLAS_RELEASE_DATE     20120105
+#define LIBLAS_RELEASE_DATE     20140801
 #endif
 
 #ifndef LIBLAS_RELEASE_NAME
-#define LIBLAS_RELEASE_NAME     "1.7.0"
+#define LIBLAS_RELEASE_NAME     "1.8.0"
 #endif
 
 #endif /* LAS_VERSION_H_INCLUDED */
diff --git a/include/liblas/capi/liblas.h b/include/liblas/capi/liblas.h
old mode 100644
new mode 100755
diff --git a/include/liblas/chipper.hpp b/include/liblas/chipper.hpp
old mode 100644
new mode 100755
index 40d8ea2..e0d7099
--- a/include/liblas/chipper.hpp
+++ b/include/liblas/chipper.hpp
@@ -24,8 +24,8 @@ class LAS_DLL PtRef
 {
 public:
     double m_pos;
-    boost::uint32_t m_ptindex;
-    boost::uint32_t m_oindex;
+    uint32_t m_ptindex;
+    uint32_t m_oindex;
 
     bool operator < (const PtRef& pt) const
         { return m_pos < pt.m_pos; }
@@ -57,7 +57,7 @@ public:
         { return m_vec_p->begin(); }
     PtRefVec::iterator end()
         { return m_vec_p->end(); }
-    PtRef& operator[](boost::uint32_t pos)
+    PtRef& operator[](uint32_t pos)
         { return (*m_vec_p)[pos]; }
     std::string Dir()
     {
@@ -68,8 +68,8 @@ public:
         else
             return "NONE";
     }
-    void SortByOIndex(boost::uint32_t left, boost::uint32_t center,
-        boost::uint32_t right);
+    void SortByOIndex(uint32_t left, uint32_t center,
+        uint32_t right);
     void SetAllocator(detail::opt_allocator<PtRef> *alloc_p )
     {
         m_vec_p = new PtRefVec( *alloc_p );
@@ -84,12 +84,12 @@ class LAS_DLL Block
 
 private:
     RefList *m_list_p;
-    boost::uint32_t m_left;
-    boost::uint32_t m_right;
+    uint32_t m_left;
+    uint32_t m_right;
     liblas::Bounds<double> m_bounds;
 
 public:
-    std::vector<boost::uint32_t> GetIDs() const; 
+    std::vector<uint32_t> GetIDs() const; 
     Bounds<double> const& GetBounds() const
         {return m_bounds;} 
     void SetBounds(liblas::Bounds<double> const& bounds)
@@ -105,7 +105,7 @@ public:
     {}
 
     // Maximum number of pointer per output block.
-    boost::uint32_t m_threshold;
+    uint32_t m_threshold;
     // If true, use sorting instead of copying to reduce memory.
     bool m_use_sort;
     // If true, use memory mapped files instead of main memory
@@ -118,7 +118,7 @@ class LAS_DLL Chipper
 {
 public:
     Chipper(Reader *reader, Options *options );
-    Chipper(Reader *reader, boost::uint32_t max_partition_size) :
+    Chipper(Reader *reader, uint32_t max_partition_size) :
         m_reader(reader), m_xvec(DIR_X), m_yvec(DIR_Y), m_spare(DIR_NONE)
     {
         m_options.m_threshold = max_partition_size;
@@ -133,22 +133,22 @@ public:
 private:
     int Allocate();
     int Load();
-    void Partition(boost::uint32_t size);
+    void Partition(uint32_t size);
     void Split(RefList& xvec, RefList& yvec, RefList& spare);
     void DecideSplit(RefList& v1, RefList& v2, RefList& spare,
-        boost::uint32_t left, boost::uint32_t right);
+        uint32_t left, uint32_t right);
     void RearrangeNarrow(RefList& wide, RefList& narrow, RefList& spare,
-        boost::uint32_t left, boost::uint32_t center, boost::uint32_t right);
+        uint32_t left, uint32_t center, uint32_t right);
     void Split(RefList& wide, RefList& narrow, RefList& spare,
-        boost::uint32_t left, boost::uint32_t right);
+        uint32_t left, uint32_t right);
     void FinalSplit(RefList& wide, RefList& narrow,
-        boost::uint32_t pleft, boost::uint32_t pcenter);
-    void Emit(RefList& wide, boost::uint32_t widemin, boost::uint32_t widemax,
-        RefList& narrow, boost::uint32_t narrowmin, boost::uint32_t narrowmax);
+        uint32_t pleft, uint32_t pcenter);
+    void Emit(RefList& wide, uint32_t widemin, uint32_t widemax,
+        RefList& narrow, uint32_t narrowmin, uint32_t narrowmax);
 
     Reader *m_reader;
     std::vector<Block> m_blocks;
-    std::vector<boost::uint32_t> m_partitions;
+    std::vector<uint32_t> m_partitions;
     // Note, order is important here, as the allocator must be destroyed
     // after the RefLists.
     boost::shared_ptr<detail::opt_allocator<PtRef> > m_allocator;
diff --git a/include/liblas/classification.hpp b/include/liblas/classification.hpp
old mode 100644
new mode 100755
index b8875d4..32d2300
--- a/include/liblas/classification.hpp
+++ b/include/liblas/classification.hpp
@@ -42,8 +42,6 @@
 #ifndef LIBLAS_LASCLASSIFICATION_HPP_INCLUDED
 #define LIBLAS_LASCLASSIFICATION_HPP_INCLUDED
 
-// boost
-#include <boost/cstdint.hpp>
 #include <liblas/export.hpp>
 // std
 #include <cassert>
@@ -52,7 +50,7 @@
 #include <ostream>
 #include <sstream>
 #include <stdexcept>
-
+#include <stdint.h>
 
 // I hate you windows
 #ifdef _MSC_VER
@@ -79,7 +77,7 @@ public:
     /// @note Currently, libLAS does not support classification based on table
     /// stored in variable-length record. Only Standard ASPRS classification
     /// table is supported.
-    static boost::uint32_t const class_table_size;
+    static uint32_t const class_table_size;
 
     /// Values of indexes in the set of bit flags.
     enum BitPosition
@@ -103,7 +101,7 @@ public:
 
     /// Initializes classification flags using 8 bits of integral type.
     /// @param flags [in] - contains 8 bits representing classification flags.
-    explicit Classification(boost::uint8_t const& flags)
+    explicit Classification(uint8_t const& flags)
         : m_flags(flags)
     {}
 
@@ -115,7 +113,7 @@ public:
     /// @param k [in] - If set, this point is considered to be a model keypoint and
     /// thus generally should not be withheld in a thinning algorithm.
     /// @param w [in] - If set, this point should not be included in processing.
-    Classification(boost::uint32_t cls, bool s, bool k, bool w)
+    Classification(uint32_t cls, bool s, bool k, bool w)
     {
         SetClass(cls);
         SetSynthetic(s);
@@ -158,7 +156,7 @@ public:
     std::string GetClassName() const;
 
     /// Returns index of ASPRS classification as defined in the lookup table.
-    boost::uint8_t GetClass() const;
+    uint8_t GetClass() const;
 
     /// Updates index of ASPRS classification as defined in the lookup table.
     /// Valid index is in range from 0 to class_table_size - 1.
@@ -169,7 +167,7 @@ public:
     /// table is supported.
     /// @exception Theoretically, may throw std::out_of_range in case index 
     /// value is not in range between 0 and class_table_size - 1.
-    void SetClass(boost::uint32_t index);
+    void SetClass(uint32_t index);
 
     /// Sets if this point was created by a technique other than LIDAR
     /// collection such as digitized from a photogrammetric stereo model.
@@ -221,7 +219,7 @@ private:
 
     bitset_type m_flags;
 
-    void check_class_index(boost::uint32_t index) const;
+    void check_class_index(uint32_t index) const;
 };
 
 /// Equal-to operator implemented in terms of Classification::equal.
diff --git a/include/liblas/color.hpp b/include/liblas/color.hpp
old mode 100644
new mode 100755
index 02e47a9..1eea531
--- a/include/liblas/color.hpp
+++ b/include/liblas/color.hpp
@@ -42,10 +42,10 @@
 #define LIBLAS_LASCOLOR_HPP_INCLUDED
 
 #include <liblas/export.hpp>
+#include <stdint.h>
 
 // boost
 #include <boost/array.hpp>
-#include <boost/cstdint.hpp>
 // std
 #include <cstdlib> // std::size_t
 
@@ -56,7 +56,7 @@ class LAS_DLL Color
 {
 public:
 
-    typedef boost::uint16_t value_type;
+    typedef uint16_t value_type;
 
     /// Default constructor.
     /// Initializes with black color using RGB {0, 0, 0}.
@@ -65,7 +65,7 @@ public:
     /// User-defined constructor.
     /// Initializes object with given RGB values.
     /// \exception std::invalid_argument if color component value is out of range of unsigned 8-bit integer.
-    Color(boost::uint32_t red, boost::uint32_t green, boost::uint32_t blue);
+    Color(uint32_t red, uint32_t green, uint32_t blue);
 
     /// User-defined constructor.
     /// Initializes colour components based on values of 3-element array.
diff --git a/include/liblas/compatibility.hpp b/include/liblas/compatibility.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/detail/binary.hpp b/include/liblas/detail/binary.hpp
old mode 100644
new mode 100755
index 841676a..3dd8a6f
--- a/include/liblas/detail/binary.hpp
+++ b/include/liblas/detail/binary.hpp
@@ -24,7 +24,6 @@
 #include <iterator>
 
 #include <boost/config.hpp>
-#include <boost/cstdint.hpp>
 #include <boost/static_assert.hpp>
 #include <boost/detail/endian.hpp>
 #include <boost/type_traits/is_signed.hpp>
@@ -227,7 +226,7 @@ struct endian_value<double, 8> : public endian_value_base<double>
     template <typename E, typename Iterator>
     void load(Iterator bytes)
     {
-        endian_value<boost::uint64_t, 8> raw;
+        endian_value<uint64_t, 8> raw;
         raw.load<E>(bytes);
 
         double& target_value = base::value;
@@ -237,14 +236,14 @@ struct endian_value<double, 8> : public endian_value_base<double>
     template <typename E, typename Iterator>
     void store(Iterator bytes)
     {
-        boost::uint64_t raw;
+        uint64_t raw;
         double const& source_value = base::value;
-        std::memcpy(&raw, &source_value, sizeof(boost::uint64_t));
+        std::memcpy(&raw, &source_value, sizeof(uint64_t));
 
         store_dispatch
             <
-            boost::uint64_t,
-            sizeof(boost::uint64_t)
+            uint64_t,
+            sizeof(uint64_t)
             >(bytes, raw, typename base::endian_type(), E());
     }
 };
diff --git a/include/liblas/detail/endian.hpp b/include/liblas/detail/endian.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/detail/file_ptr_stream.hpp b/include/liblas/detail/file_ptr_stream.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/detail/fwd.hpp b/include/liblas/detail/fwd.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/detail/index/indexcell.hpp b/include/liblas/detail/index/indexcell.hpp
old mode 100644
new mode 100755
index 3c0b532..08be4cc
--- a/include/liblas/detail/index/indexcell.hpp
+++ b/include/liblas/detail/index/indexcell.hpp
@@ -43,19 +43,17 @@
 #ifndef LIBLAS_DETAIL_INDEXCELL_HPP_INCLUDED
 #define LIBLAS_DETAIL_INDEXCELL_HPP_INCLUDED
 
-// boost
-#include <boost/cstdint.hpp>
-
 #include <map>
+#include <stdint.h>
 
 namespace liblas { namespace detail {
 
-typedef boost::int16_t ElevExtrema;
-typedef boost::uint32_t ElevRange;
-typedef boost::uint8_t	ConsecPtAccumulator;
-typedef std::map<boost::uint32_t, ConsecPtAccumulator> IndexCellData;
-typedef std::map<boost::uint32_t, IndexCellData> IndexSubCellData;
-typedef boost::uint64_t	TempFileOffsetType;
+typedef int16_t ElevExtrema;
+typedef uint32_t ElevRange;
+typedef uint8_t	ConsecPtAccumulator;
+typedef std::map<uint32_t, ConsecPtAccumulator> IndexCellData;
+typedef std::map<uint32_t, IndexCellData> IndexSubCellData;
+typedef uint64_t	TempFileOffsetType;
 
 class IndexCell
 {
@@ -64,7 +62,7 @@ public:
 	
 private:
 	TempFileOffsetType m_FileOffset;
-	boost::uint32_t m_NumPoints;
+	uint32_t m_NumPoints;
 	ElevExtrema m_MinZ, m_MaxZ;
 	IndexCellData m_PtRecords;
 	IndexSubCellData m_ZCellRecords;
@@ -72,27 +70,27 @@ private:
 
 public:
 	void SetFileOffset(TempFileOffsetType fos);
-	void SetNumPoints(boost::uint32_t nmp);
+	void SetNumPoints(uint32_t nmp);
 	TempFileOffsetType GetFileOffset(void) const;
-	boost::uint32_t GetNumRecords(void) const;
-	boost::uint32_t GetNumPoints(void) const;
-	boost::uint32_t GetNumSubCellRecords(void) const;
-	boost::uint32_t GetNumZCellRecords(void) const;
+	uint32_t GetNumRecords(void) const;
+	uint32_t GetNumPoints(void) const;
+	uint32_t GetNumSubCellRecords(void) const;
+	uint32_t GetNumZCellRecords(void) const;
 	ElevExtrema GetMinZ(void) const {return m_MinZ;}
 	ElevExtrema GetMaxZ(void) const {return m_MaxZ;}
-	bool RoomToAdd(boost::uint32_t a);
-	void AddPointRecord(boost::uint32_t a);
-	void AddPointRecord(boost::uint32_t a, boost::uint8_t b);
-	bool IncrementPointRecord(boost::uint32_t a);
+	bool RoomToAdd(uint32_t a);
+	void AddPointRecord(uint32_t a);
+	void AddPointRecord(uint32_t a, uint8_t b);
+	bool IncrementPointRecord(uint32_t a);
 	void RemoveMainRecords(void);
 	void RemoveAllRecords(void);
 	void UpdateZBounds(double TestZ);
 	ElevRange GetZRange(void) const;
-	void AddZCell(boost::uint32_t a, boost::uint32_t b);
-	bool IncrementZCell(boost::uint32_t a, boost::uint32_t b);
-	void AddSubCell(boost::uint32_t a, boost::uint32_t b);
-	bool IncrementSubCell(boost::uint32_t a, boost::uint32_t b);
-	boost::uint8_t GetPointRecordCount(boost::uint32_t a);
+	void AddZCell(uint32_t a, uint32_t b);
+	bool IncrementZCell(uint32_t a, uint32_t b);
+	void AddSubCell(uint32_t a, uint32_t b);
+	bool IncrementSubCell(uint32_t a, uint32_t b);
+	uint8_t GetPointRecordCount(uint32_t a);
 	const IndexCellData::iterator GetFirstRecord(void);
 	const IndexCellData::iterator GetEnd(void);
 	const IndexSubCellData::iterator GetFirstSubCellRecord(void);
diff --git a/include/liblas/detail/index/indexoutput.hpp b/include/liblas/detail/index/indexoutput.hpp
old mode 100644
new mode 100755
index 5bcdd10..067faae
--- a/include/liblas/detail/index/indexoutput.hpp
+++ b/include/liblas/detail/index/indexoutput.hpp
@@ -58,14 +58,14 @@ private:
     liblas::Index *m_index;
     liblas::VariableRecord m_indexVLRHeaderRecord, m_indexVLRCellRecord;
     IndexVLRData m_indexVLRHeaderData, m_indexVLRCellPointData, m_indexVLRTempData;
-    boost::uint32_t m_VLRCommonDataSize, m_VLRDataSizeLocation, m_FirstCellLocation, m_LastCellLocation, m_VLRPointCountLocation;
-    boost::uint32_t  m_DataRecordSize, m_TempWritePos, m_DataPointsThisVLR;
+    uint32_t m_VLRCommonDataSize, m_VLRDataSizeLocation, m_FirstCellLocation, m_LastCellLocation, m_VLRPointCountLocation;
+    uint32_t  m_DataRecordSize, m_TempWritePos, m_DataPointsThisVLR;
     bool m_FirstCellInVLR, m_SomeDataReadyToWrite;
     
 protected:
     bool InitiateOutput(void);
-    bool OutputCell(liblas::detail::IndexCell *CellBlock, boost::uint32_t CurCellX, boost::uint32_t CurCellY);
-    bool InitializeVLRData(boost::uint32_t CurCellX, boost::uint32_t CurCellY);
+    bool OutputCell(liblas::detail::IndexCell *CellBlock, uint32_t CurCellX, uint32_t CurCellY);
+    bool InitializeVLRData(uint32_t CurCellX, uint32_t CurCellY);
     bool FinalizeOutput(void);
     
 };
diff --git a/include/liblas/detail/opt_allocator.hpp b/include/liblas/detail/opt_allocator.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/detail/pointrecord.hpp b/include/liblas/detail/pointrecord.hpp
old mode 100644
new mode 100755
index fe537c5..4c6cf79
--- a/include/liblas/detail/pointrecord.hpp
+++ b/include/liblas/detail/pointrecord.hpp
@@ -42,8 +42,7 @@
 #ifndef LIBLAS_DETAIL_POINTRECORD_HPP_INCLUDED
 #define LIBLAS_DETAIL_POINTRECORD_HPP_INCLUDED
 
-// boost
-#include <boost/cstdint.hpp>
+#include <stdint.h>
 
 namespace liblas { namespace detail {
 
@@ -61,15 +60,15 @@ struct PointRecord
         , point_source_id(0)
     {}
 
-    boost::int32_t x;
-    boost::int32_t y;
-    boost::int32_t z;
-    boost::uint16_t intensity;
-    boost::uint8_t flags; // TODO: Replace with portable std::bitset<8>
-    boost::uint8_t classification;
-    boost::int8_t scan_angle_rank;
-    boost::uint8_t user_data; // 1.0: File Marker / 1.1: User Data
-    boost::uint16_t point_source_id; // 1.0: User Bit field / 1.1: Point Source ID
+    int32_t x;
+    int32_t y;
+    int32_t z;
+    uint16_t intensity;
+    uint8_t flags; // TODO: Replace with portable std::bitset<8>
+    uint8_t classification;
+    int8_t scan_angle_rank;
+    uint8_t user_data; // 1.0: File Marker / 1.1: User Data
+    uint16_t point_source_id; // 1.0: User Bit field / 1.1: Point Source ID
 };
 
 }} // namespace liblas::detail
diff --git a/include/liblas/detail/private_utility.hpp b/include/liblas/detail/private_utility.hpp
old mode 100644
new mode 100755
index 600b024..a63c849
--- a/include/liblas/detail/private_utility.hpp
+++ b/include/liblas/detail/private_utility.hpp
@@ -47,7 +47,6 @@
 #include <liblas/detail/binary.hpp>
 // boost
 #include <boost/concept_check.hpp>
-#include <boost/cstdint.hpp>
 // std
 #include <cassert>
 #include <cstddef>
@@ -149,10 +148,10 @@ private:
 /// Definition of variable-length record header.
 struct VLRHeader
 {
-  boost::uint16_t reserved;
+  uint16_t reserved;
   char userId[16]; // TODO: replace wtih boost::array --mloskot
-  boost::uint16_t recordId;
-  boost::uint16_t recordLengthAfterHeader;
+  uint16_t recordId;
+  uint16_t recordLengthAfterHeader;
   char description[32]; // TODO: replace wtih boost::array --mloskot
 };
 
@@ -360,7 +359,7 @@ inline void read_n<std::string>(std::string& dest, std::istream& src, std::strea
 // adapted from http://www.cplusplus.com/forum/beginner/3076/
 template <typename IntegerType>
 inline IntegerType bitsToInt(IntegerType& output,
-                             std::vector<boost::uint8_t> const& data, 
+                             std::vector<uint8_t> const& data, 
                              std::size_t index)
 {
     binary::endian_value<IntegerType> value;
@@ -371,7 +370,7 @@ inline IntegerType bitsToInt(IntegerType& output,
 
 template <typename IntegerType>
 inline void intToBits(IntegerType input, 
-                      std::vector<boost::uint8_t>& data, 
+                      std::vector<uint8_t>& data, 
                       std::size_t index)
 {
     binary::endian_value<IntegerType> value(input);
diff --git a/include/liblas/detail/reader/cachedreader.hpp b/include/liblas/detail/reader/cachedreader.hpp
old mode 100644
new mode 100755
index 04e58f2..b8a050a
--- a/include/liblas/detail/reader/cachedreader.hpp
+++ b/include/liblas/detail/reader/cachedreader.hpp
@@ -45,8 +45,7 @@
 #include <liblas/detail/fwd.hpp>
 #include <liblas/detail/reader/header.hpp>
 #include <liblas/liblas.hpp>
-// boost
-#include <boost/cstdint.hpp>
+
 // std
 #include <iosfwd>
 #include <boost/shared_ptr.hpp>
@@ -79,19 +78,19 @@ private:
     // Blocked copying operations, declared but not defined.
     CachedReaderImpl(CachedReaderImpl const& other);
     CachedReaderImpl& operator=(CachedReaderImpl const& rhs);
-    void ReadCachedPoint(boost::uint32_t position);
+    void ReadCachedPoint(uint32_t position);
     
-    void CacheData(boost::uint32_t position);
+    void CacheData(uint32_t position);
     void ReadNextUncachedPoint();
     
-    typedef std::vector<boost::uint8_t> cache_mask_type;
+    typedef std::vector<uint8_t> cache_mask_type;
 
     cache_mask_type m_mask;
     cache_mask_type::size_type m_cache_size;    
     cache_mask_type::size_type m_cache_start_position;
     cache_mask_type::size_type m_cache_read_position;
 
-    typedef std::vector<liblas::Point> cache_type;
+    typedef std::vector<liblas::Point*> cache_type;
     cache_type m_cache;
     bool m_cache_initialized;
 };
diff --git a/include/liblas/detail/reader/header.hpp b/include/liblas/detail/reader/header.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/detail/reader/reader.hpp b/include/liblas/detail/reader/reader.hpp
old mode 100644
new mode 100755
index 2471637..d352c65
--- a/include/liblas/detail/reader/reader.hpp
+++ b/include/liblas/detail/reader/reader.hpp
@@ -45,8 +45,6 @@
 #include <liblas/detail/fwd.hpp>
 #include <liblas/detail/reader/header.hpp>
 #include <liblas/liblas.hpp>
-// boost
-#include <boost/cstdint.hpp>
 // std
 #include <iosfwd>
 #include <boost/shared_ptr.hpp>
@@ -89,8 +87,8 @@ protected:
     typedef std::istream::pos_type pos_type;
     
     std::istream& m_ifs;
-    boost::uint32_t m_size;
-    boost::uint32_t m_current;
+    uint32_t m_size;
+    uint32_t m_current;
     
     // PointReaderPtr m_point_reader;
     HeaderReaderPtr m_header_reader;
@@ -101,7 +99,7 @@ protected:
 
     std::vector<liblas::FilterPtr> m_filters;
     std::vector<liblas::TransformPtr> m_transforms;
-    std::vector<boost::uint8_t>::size_type m_record_size;
+    std::vector<uint8_t>::size_type m_record_size;
     bool bNeedHeaderCheck;
     
 private:
diff --git a/include/liblas/detail/reader/zipreader.hpp b/include/liblas/detail/reader/zipreader.hpp
old mode 100644
new mode 100755
index 4c7cc43..4e14231
--- a/include/liblas/detail/reader/zipreader.hpp
+++ b/include/liblas/detail/reader/zipreader.hpp
@@ -45,8 +45,6 @@
 
 #include <liblas/detail/fwd.hpp>
 #include <liblas/detail/reader/header.hpp>
-// boost
-#include <boost/cstdint.hpp>
 // std
 #include <iosfwd>
 #include <boost/shared_ptr.hpp>
@@ -95,8 +93,8 @@ protected:
     typedef std::istream::pos_type pos_type;
     
     std::istream& m_ifs;
-    boost::uint32_t m_size;
-    boost::uint32_t m_current;
+    uint32_t m_size;
+    uint32_t m_current;
     
     HeaderReaderPtr m_header_reader;
     
diff --git a/include/liblas/detail/sha1.hpp b/include/liblas/detail/sha1.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/detail/singleton.hpp b/include/liblas/detail/singleton.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/detail/timer.hpp b/include/liblas/detail/timer.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/detail/writer/header.hpp b/include/liblas/detail/writer/header.hpp
old mode 100644
new mode 100755
index 4e93088..1fe4da7
--- a/include/liblas/detail/writer/header.hpp
+++ b/include/liblas/detail/writer/header.hpp
@@ -45,8 +45,6 @@
 #include <liblas/header.hpp>
 #include <liblas/detail/fwd.hpp>
 #include <liblas/detail/private_utility.hpp>
-// boost
-#include <boost/cstdint.hpp>
 // std
 #include <iosfwd>
 
@@ -57,7 +55,7 @@ class Header
     
 public:
 
-    Header(std::ostream& ofs, boost::uint32_t& count, liblas::Header const& header );
+    Header(std::ostream& ofs, uint32_t& count, liblas::Header const& header );
 
     liblas::Header const& GetHeader() const { return m_header; }
     void write();
@@ -66,13 +64,13 @@ private:
     
     void WriteVLRs();
     void WriteLAS10PadSignature();
-    boost::int32_t GetRequiredHeaderSize() const;
+    int32_t GetRequiredHeaderSize() const;
 
     Header& operator=(Header const& rhs);
     Header(Header const& other);
     std::ostream& m_ofs;    
     liblas::Header m_header;
-    boost::uint32_t& m_pointCount;
+    uint32_t& m_pointCount;
 };
 
 }}} // namespace liblas::detail::writer
diff --git a/include/liblas/detail/writer/point.hpp b/include/liblas/detail/writer/point.hpp
old mode 100644
new mode 100755
index 8fb97fb..095672f
--- a/include/liblas/detail/writer/point.hpp
+++ b/include/liblas/detail/writer/point.hpp
@@ -47,8 +47,6 @@
 #include <liblas/header.hpp>
 #include <liblas/detail/private_utility.hpp>
 #include <liblas/detail/fwd.hpp>
-// boost
-#include <boost/cstdint.hpp>
 
 // std
 #include <iosfwd>
@@ -60,7 +58,7 @@ class Point
 {
 public:
     
-    Point(std::ostream& ofs, boost::uint32_t& count, HeaderPtr header);
+    Point(std::ostream& ofs, uint32_t& count, HeaderPtr header);
     virtual ~Point();
 
     // const liblas::Point& GetPoint() const { return m_point; }
@@ -82,10 +80,10 @@ private:
     
     Schema m_format;
     
-    std::vector<boost::uint8_t> m_blanks; 
+    std::vector<uint8_t> m_blanks; 
 
     void setup();
-    boost::uint32_t& m_pointCount;
+    uint32_t& m_pointCount;
     // void fill();
 };
 
diff --git a/include/liblas/detail/writer/writer.hpp b/include/liblas/detail/writer/writer.hpp
old mode 100644
new mode 100755
index c76cfe3..39a7817
--- a/include/liblas/detail/writer/writer.hpp
+++ b/include/liblas/detail/writer/writer.hpp
@@ -46,8 +46,7 @@
 #include <liblas/liblas.hpp>
 #include <liblas/detail/writer/point.hpp>
 #include <liblas/detail/writer/header.hpp>
-// boost
-#include <boost/cstdint.hpp>
+
 #include <boost/shared_ptr.hpp>
 
 namespace liblas { namespace detail { 
@@ -67,7 +66,7 @@ public:
     liblas::Header& GetHeader() const;
     void WriteHeader();
 
-    void UpdatePointCount(boost::uint32_t count);
+    void UpdatePointCount(uint32_t count);
     void SetHeader(liblas::Header const& header);
     
     void SetFilters(std::vector<liblas::FilterPtr> const& filters);
@@ -90,7 +89,7 @@ protected:
 
 private:
 
-    boost::uint32_t m_pointCount;
+    uint32_t m_pointCount;
 
     // block copying operations
     WriterImpl(WriterImpl const& other);
diff --git a/include/liblas/detail/writer/zipwriter.hpp b/include/liblas/detail/writer/zipwriter.hpp
old mode 100644
new mode 100755
index 5eea802..749e62b
--- a/include/liblas/detail/writer/zipwriter.hpp
+++ b/include/liblas/detail/writer/zipwriter.hpp
@@ -47,8 +47,7 @@
 #include <liblas/liblas.hpp>
 #include <liblas/detail/writer/point.hpp>
 #include <liblas/detail/writer/header.hpp>
-// boost
-#include <boost/cstdint.hpp>
+
 #include <boost/shared_ptr.hpp>
 #include <boost/scoped_ptr.hpp>
 
@@ -74,7 +73,7 @@ public:
     liblas::Header& GetHeader() const;
     void WriteHeader();
 
-    void UpdatePointCount(boost::uint32_t count);
+    void UpdatePointCount(uint32_t count);
     void SetHeader(liblas::Header const& header);
     
     void SetFilters(std::vector<liblas::FilterPtr> const& filters);
@@ -96,7 +95,7 @@ protected:
     HeaderPtr m_header;
 
 private:
-    boost::uint32_t m_pointCount;
+    uint32_t m_pointCount;
 
     boost::scoped_ptr<LASzipper> m_zipper;
     boost::scoped_ptr<ZipPoint> m_zipPoint;
diff --git a/include/liblas/detail/zippoint.hpp b/include/liblas/detail/zippoint.hpp
old mode 100644
new mode 100755
index 6e06bd9..0d2dc20
--- a/include/liblas/detail/zippoint.hpp
+++ b/include/liblas/detail/zippoint.hpp
@@ -47,7 +47,6 @@
 #include <liblas/liblas.hpp>
 
 // boost
-#include <boost/cstdint.hpp>
 #include <boost/shared_ptr.hpp>
 #include <boost/scoped_ptr.hpp>
 #include <boost/scoped_array.hpp>
@@ -87,7 +86,7 @@ public: // for now
     boost::scoped_ptr<LASzip> m_zip;
 
     unsigned char** m_lz_point;
-    boost::scoped_array<boost::uint8_t> m_lz_point_data;
+    boost::scoped_array<uint8_t> m_lz_point_data;
     unsigned int m_lz_point_size;
 };
 
diff --git a/include/liblas/dimension.hpp b/include/liblas/dimension.hpp
old mode 100644
new mode 100755
index adda5d8..d05593c
--- a/include/liblas/dimension.hpp
+++ b/include/liblas/dimension.hpp
@@ -48,7 +48,6 @@
 #include <liblas/version.hpp>
 #include <liblas/export.hpp>
 // boost
-#include <boost/cstdint.hpp>
 #include <boost/any.hpp>
 #include <boost/shared_ptr.hpp>
 #include <boost/foreach.hpp>
@@ -163,8 +162,8 @@ public:
     /// The index position of the index.  In a standard ePointFormat0 
     /// data record, the X dimension would have a position of 0, while 
     /// the Y dimension would have a position of 1, for example.
-    inline boost::uint32_t GetPosition() const { return m_position; }
-    inline void SetPosition(boost::uint32_t v) { m_position = v; }
+    inline uint32_t GetPosition() const { return m_position; }
+    inline void SetPosition(uint32_t v) { m_position = v; }
     
     /// The scaling value for this dimension as a double.  This should 
     /// be positive or negative powers of ten.
@@ -203,7 +202,7 @@ private:
     bool m_numeric;
     bool m_signed;
     bool m_integer;
-    boost::uint32_t m_position;
+    uint32_t m_position;
     double m_scale;
     bool m_precise;
     double m_offset;
diff --git a/include/liblas/error.hpp b/include/liblas/error.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/exception.hpp b/include/liblas/exception.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/export.hpp b/include/liblas/export.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/exception_implementation.hpp b/include/liblas/external/property_tree/detail/exception_implementation.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/file_parser_error.hpp b/include/liblas/external/property_tree/detail/file_parser_error.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/info_parser_error.hpp b/include/liblas/external/property_tree/detail/info_parser_error.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/info_parser_read.hpp b/include/liblas/external/property_tree/detail/info_parser_read.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/info_parser_utils.hpp b/include/liblas/external/property_tree/detail/info_parser_utils.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/info_parser_write.hpp b/include/liblas/external/property_tree/detail/info_parser_write.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/info_parser_writer_settings.hpp b/include/liblas/external/property_tree/detail/info_parser_writer_settings.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/json_parser_error.hpp b/include/liblas/external/property_tree/detail/json_parser_error.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/json_parser_read.hpp b/include/liblas/external/property_tree/detail/json_parser_read.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/json_parser_write.hpp b/include/liblas/external/property_tree/detail/json_parser_write.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/ptree_implementation.hpp b/include/liblas/external/property_tree/detail/ptree_implementation.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/ptree_utils.hpp b/include/liblas/external/property_tree/detail/ptree_utils.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/rapidxml.hpp b/include/liblas/external/property_tree/detail/rapidxml.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/xml_parser_error.hpp b/include/liblas/external/property_tree/detail/xml_parser_error.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/xml_parser_flags.hpp b/include/liblas/external/property_tree/detail/xml_parser_flags.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/xml_parser_read_rapidxml.hpp b/include/liblas/external/property_tree/detail/xml_parser_read_rapidxml.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/xml_parser_utils.hpp b/include/liblas/external/property_tree/detail/xml_parser_utils.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/xml_parser_write.hpp b/include/liblas/external/property_tree/detail/xml_parser_write.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/detail/xml_parser_writer_settings.hpp b/include/liblas/external/property_tree/detail/xml_parser_writer_settings.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/exceptions.hpp b/include/liblas/external/property_tree/exceptions.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/id_translator.hpp b/include/liblas/external/property_tree/id_translator.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/info_parser.hpp b/include/liblas/external/property_tree/info_parser.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/ini_parser.hpp b/include/liblas/external/property_tree/ini_parser.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/json_parser.hpp b/include/liblas/external/property_tree/json_parser.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/ptree.hpp b/include/liblas/external/property_tree/ptree.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/ptree_fwd.hpp b/include/liblas/external/property_tree/ptree_fwd.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/ptree_serialization.hpp b/include/liblas/external/property_tree/ptree_serialization.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/stream_translator.hpp b/include/liblas/external/property_tree/stream_translator.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/string_path.hpp b/include/liblas/external/property_tree/string_path.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/external/property_tree/xml_parser.hpp b/include/liblas/external/property_tree/xml_parser.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/factory.hpp b/include/liblas/factory.hpp
old mode 100644
new mode 100755
index 7075fed..66d237e
--- a/include/liblas/factory.hpp
+++ b/include/liblas/factory.hpp
@@ -46,9 +46,6 @@
 #include <liblas/reader.hpp>
 #include <liblas/writer.hpp>
 #include <liblas/export.hpp>
-// boost
-#include <boost/cstdint.hpp>
-// std
 
 
 namespace liblas {
@@ -66,7 +63,7 @@ public:
 
     Reader CreateWithImpl(ReaderIPtr r);
     
-    Reader CreateCached(std::istream& stream, boost::uint32_t cache_size);
+    Reader CreateCached(std::istream& stream, uint32_t cache_size);
     Reader CreateWithStream(std::istream& stream);
     
     // help function to create an input stream
diff --git a/include/liblas/filter.hpp b/include/liblas/filter.hpp
old mode 100644
new mode 100755
index 42b8b14..418145f
--- a/include/liblas/filter.hpp
+++ b/include/liblas/filter.hpp
@@ -48,7 +48,6 @@
 #include <liblas/detail/fwd.hpp>
 #include <liblas/export.hpp>
 // boost
-#include <boost/cstdint.hpp>
 #include <boost/function.hpp>
 #include <boost/lexical_cast.hpp>
 #include <boost/shared_ptr.hpp>
@@ -142,7 +141,7 @@ class LAS_DLL ThinFilter: public liblas::FilterI
 public:
     
     /// Default constructor.  Keep every thin'th point.
-    ThinFilter(boost::uint32_t thin);
+    ThinFilter(uint32_t thin);
     bool filter(const liblas::Point& point);
 
 
@@ -151,8 +150,8 @@ private:
     ThinFilter(ThinFilter const& other);
     ThinFilter& operator=(ThinFilter const& rhs);
     
-    boost::uint32_t thin_amount;
-    boost::uint32_t thin_count;
+    uint32_t thin_amount;
+    uint32_t thin_count;
 };
 
 
@@ -161,7 +160,7 @@ class LAS_DLL ReturnFilter: public FilterI
 {
 public:
     
-    typedef std::vector<boost::uint16_t> return_list_type;
+    typedef std::vector<uint16_t> return_list_type;
 
     ReturnFilter(return_list_type returns, bool last_only);
     bool filter(const Point& point);
diff --git a/include/liblas/guid.hpp b/include/liblas/guid.hpp
deleted file mode 100644
index c43220f..0000000
--- a/include/liblas/guid.hpp
+++ /dev/null
@@ -1,623 +0,0 @@
-/******************************************************************************
- * $Id$
- *
- * Project:  libLAS - http://liblas.org - A BSD library for LAS format data.
- * Purpose:  GUID implementation
- * Author:   Andy Tompkins (modified by Mateusz Loskot)
- *
- * This file has been stolen from the Boost Vault and
- * modified for libLAS purposes. Here is the original code posted:
- * http://lists.boost.org/boost-users/2007/04/27397.php
- * 
- * (C) Copyright 2006 Andy Tompkins.
- * (C) Copyright 2008 Mateusz Loskot, mateusz at loskot.net.
- * Distributed under the Boost  Software License, Version 1.0.
- * (See accompanying file LICENSE_1_0.txt or copy at
- * http://www.boost.org/LICENSE_1_0.txt)
- * 
- * Revision History
- * 06 Feb 2006 - Initial Revision
- * 09 Nov 2006 - fixed variant and version bits for v4 guids
- * 13 Nov 2006 - added serialization
- * 17 Nov 2006 - added name-based guid creation
- * 20 Nov 2006 - add fixes for gcc (from Tim Blechmann)
- * 07 Mar 2007 - converted to header only
- * 20 Jan 2008 - removed dependency of Boost and modified for libLAS (by Mateusz Loskot)
- ******************************************************************************
- *
- * All rights reserved.
- * 
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following 
- * conditions are met:
- * 
- *     * Redistributions of source code must retain the above copyright 
- *       notice, this list of conditions and the following disclaimer.
- *     * Redistributions in binary form must reproduce the above copyright 
- *       notice, this list of conditions and the following disclaimer in 
- *       the documentation and/or other materials provided 
- *       with the distribution.
- *     * Neither the name of the Martin Isenburg or Iowa Department 
- *       of Natural Resources nor the names of its contributors may be 
- *       used to endorse or promote products derived from this software 
- *       without specific prior written permission.
- * 
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS 
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY 
- * OF SUCH DAMAGE.
- ****************************************************************************/
-
-#ifndef LIBLAS_GUID_HPP_INCLUDED
-#define LIBLAS_GUID_HPP_INCLUDED
-
-#include <liblas/detail/sha1.hpp>
-#include <liblas/detail/private_utility.hpp>
-#include <liblas/export.hpp>
-// boost
-#include <boost/array.hpp>
-#include <boost/cstdint.hpp>
-#include <boost/random.hpp>
-// std
-#include <iosfwd>
-#include <iomanip>
-#include <algorithm>
-#include <limits>
-#include <stdexcept>
-#include <sstream>
-#include <string>
-#include <cstdlib>
-#include <cstring>
-#include <ctime>
-#include <cassert>
-
-namespace liblas {
-
-namespace detail {
-
-	inline boost::uint8_t random_byte()
-    {
-        // Change seed to something better?
-
-        typedef boost::mt19937 engine_t;
-        typedef boost::uniform_int<unsigned long> distribution_t;
-        typedef boost::variate_generator<engine_t, distribution_t> generator_t;
-
-        static generator_t generator(
-            engine_t(static_cast<engine_t::result_type>( std::time(0) )),
-            // this line should work and does, but it produces lots of warnings
-            // thus we will use unsigned long and cast it to a uint8_t
-            //distribution_t((std::numeric_limits<uint8_t>::min)(), (std::numeric_limits<uint8_t>::max)()));
-            distribution_t((std::numeric_limits<unsigned long>::min)(), (std::numeric_limits<unsigned long>::max)()));
-
-		return static_cast<boost::uint8_t>(generator() & 0xFF);
-    }
-
-} // namespace detail
-
-/// Definition of Globally Unique Identifier type.
-/// The GUID is a 16-byte (128-bit) number.
-/// This class is used to represent value stored as Project Identifier
-/// in public header block (see Header) of a LAS file.
-/// All files in a unique project should have the same value of
-/// the Project Identifier. It is used together with File Source ID to
-/// uniquely identify every LAS, globally.
-///
-/// \see About GUID in Wikipedia http://en.wikipedia.org/wiki/Globally_Unique_Identifier 
-class LAS_DLL guid
-{
-public:
-
-    /// Default constructor initializes GUID as null.
-    /// \exception nothrow
-    /// \post guid::is_null() == true.
-    guid() /* throw() */
-    {
-        data_.assign(0);
-    }
-
-    /// Initializes from textual representation of valid GUID.
-    /// \param str - non-null pointer to string with GUID text.
-    /// \exception std::invalid_argument if construction failed.
-    /// \post guid::is_null() == false.
-    explicit guid(char const* const str)
-    {
-        if (0 == str)
-            throw_invalid_argument();
-        construct(std::string(str));
-    }
-
-    /// Initializes from textual representation of valid GUID.
-    /// \param str - string with GUID text.
-    /// \exception std::invalid_argument if construction failed.
-    /// \post guid::is_null() == false.
-    template <typename ch, typename char_traits, typename alloc>
-    explicit guid(std::basic_string<ch, char_traits, alloc> const& str)
-    {
-        construct(str);
-    }
-
-    /// Initializes from 4-fields structure.
-    /// \param d1 - field of first 32 bits of GUID number.
-    /// \param d2 - field of subsequent 16 bits of GUID number.
-    /// \param d3 - third field of 16 bits of GUID number.
-    /// \param d4 - last 64 bits of GUID number.
-    /// \exception std::invalid_argument if construction failed.
-    /// \post guid::is_null() == false.
-    guid(boost::uint32_t const& d1, boost::uint16_t const& d2, boost::uint16_t const& d3, boost::uint8_t const (&d4)[8])
-    {
-        construct(d1, d2, d3, d4);
-    }
-
-    /// Copy constructor.
-    /// \exception nothrow
-    guid(guid const& rhs) /* throw() */
-    {
-        data_ = rhs.data_;
-    }
-
-    /// Destructor.
-    /// \exception nothrow
-    ~guid() /* throw() */
-    {}
-
-    /// Assignment operator.
-    /// \exception nothrow
-    guid& operator=(guid const& rhs) /* throw() */
-    {
-        if (&rhs != this)
-        {
-             data_ = rhs.data_;
-        }
-        return *this;
-    }
-
-    /// Equality operator.
-    /// \exception nothrow
-    bool operator==(guid const& rhs) const /* throw() */
-    {
-        return data_ == rhs.data_;
-    }
-
-    /// Inequality operator.
-    /// \exception nothrow
-    bool operator!=(guid const& rhs) const /* throw() */
-    {
-        return (!(*this == rhs));
-    }
-
-    /// Less-than operator.
-    /// \param rhs - GUID object on the right-hand side of the comparison.
-    /// \return true if the GUID on the left-hand side is lexicographically less
-    /// than GUID on the right side; false otherwise.
-    /// \exception nothrow
-    bool operator<(guid const& rhs) const /* throw() */
-    {
-        return data_ < rhs.data_;
-    }
-    
-    /// More-than operator.
-    /// \param rhs - GUID object on the right-hand side of the comparison.
-    /// \return true if the GUID on the left-hand side is not lexicographically less
-    /// than GUID on the right side; false otherwise.
-    /// \exception nothrow
-    bool operator>(guid const& rhs) const /* throw() */
-    {
-        return data_ > rhs.data_;
-    }
-
-    /// Less-than-or-equal-to operator.
-    /// \param rhs - GUID object on the right-hand side of the comparison.
-    /// \exception nothrow
-    bool operator<=(guid const& rhs) const /* throw() */
-    {
-        return data_ <= rhs.data_;
-    }
-
-    /// More-than-or-equal-to operator.
-    /// \param rhs - GUID object on the right-hand side of the comparison.
-    /// \exception nothrow
-    bool operator>=(guid const& rhs) const /* throw() */
-    {
-        return data_ >= rhs.data_;
-    }
-
-    /// Test if the GUID object is null GUID or not.
-    /// Null means GUID number value is Zero.
-    /// \return true if the GUID is null; false otherwise
-    /// \exception nothrow
-    bool is_null() const /* throw() */
-    {
-        return ((*this) == null());
-    }
-
-    /// Generate textual representation of the GUID number.
-    /// Specialization for std::string type.
-    /// \return string with textual representation of GUID
-    /// \exception std::runtime_error - thrown on GUID to string conversion failure
-    /// \post guid::to_string().empty() == false.
-    std::string to_string() const
-    {
-        return to_basic_string<std::string::value_type, std::string::traits_type, std::string::allocator_type>();
-    }
-    
-    /// Generic generator of textual representation of the GUID number.
-    /// \exception std::runtime_error - thrown on GUID to string conversion failure
-    /// \post guid::to_basic_string().empty() == false.
-    template <typename ch, typename char_traits, typename alloc>
-    std::basic_string<ch, char_traits, alloc> to_basic_string() const
-    {
-        std::basic_string<ch, char_traits, alloc> s;
-        std::basic_stringstream<ch, char_traits, alloc> ss;
-        liblas::guid const& g = *this;
-        ss << g;
-        if (!ss || !(ss >> s))
-        {
-            throw std::runtime_error("failed to convert guid to string");
-        }
-
-        assert(!s.empty());
-        return s;
-    }
-
-    /// Size of the GUID number in bytes.
-    /// \return The number of bytes is constant for all GUID objects
-    /// and equal to 16 bytes (128-bit number).
-    size_t byte_count() const /* throw() */
-    {
-        return data_.size();
-    }
-
-    size_t size() const /* throw() */
-    {
-        return byte_count();
-    }
-
-    /// Send bytes of GUID data to sequenec of bytes using given output iterator.
-    /// \exception nothrow
-    template <typename ByteOutputIterator>
-    void output_bytes(ByteOutputIterator out) const
-    {
-        std::copy(data_.begin(), data_.end(), out);
-    }
-
-    /// Separate bytes of GUID data to distinct buffers.
-    /// \param d1 - buffer for first 32 bits of GUID number.
-    /// \param d2 - buffer for 16 bits of second chunk of GUID number.
-    /// \param d3 - buffer for 16 bits of third chunk of GUID number.
-    /// \param d4 - buffer for last 64 bits of GUID number.
-    /// \exception nothrow
-    void output_data(boost::uint32_t& d1, boost::uint16_t& d2, boost::uint16_t& d3, boost::uint8_t (&d4)[8]) const
-    {
-        d1 = d2 = d3 = 0;
-        std::size_t pos = 0;
-        int const charbit = std::numeric_limits<boost::uint8_t>::digits;
-        
-        for (; pos < 4; ++pos)
-        {
-            
-            d1 <<= charbit;
-            d1 |= static_cast<unsigned char>(data_[pos]);
-        }
-
-        for (; pos < 6; ++pos)
-        {
-            d2 <<= charbit;
-            d2 |= static_cast<unsigned char>(data_[pos]);
-        }
-
-        for (; pos < 8; ++pos)
-        {
-            d3 <<= charbit;
-            d3 |= static_cast<unsigned char>(data_[pos]);
-        }
-
-        for (std::size_t j = 0; j < sizeof(d4); ++j)
-        {
-            d4[j] = data_[j + 8];
-        }
-    }
-
-    /// Null GUID number generator.
-    /// \return null-initialized instance of GUID number.
-    /// \exception nothrow
-    static guid const& null() /* throw() */
-    {
-        static const guid n;
-        return n;
-    }
-
-    /// Random GUID number generator.
-    /// \return random-initialized instance of GUID number.
-    /// \exception nothrow
-    static guid create()
-    {
-        return create_random_based();
-    }
-    
-    /// Create GUID number based on calculation of SHA1 has for given name.
-    /// \exception std::runtime_error on GUID creation failure.
-    static guid create(guid const& namespace_guid, char const* name, int name_length)
-    {
-        return create_name_based(namespace_guid, name, name_length);
-    }
-
-    /// Return flag indicating if bracket text form of GUID on output is set.
-    /// \exception nothrow
-    static inline bool get_showbraces(std::ios_base & iosbase)
-    {
-        return (iosbase.iword(get_showbraces_index()) != 0);
-    }
-
-    /// Request to bracket text form of GUID on output.
-    /// \exception nothrow
-    static inline void set_showbraces(std::ios_base & iosbase, bool showbraces)
-    {
-        iosbase.iword(get_showbraces_index()) = showbraces;
-    }
-
-    /// Request to bracket text form of GUID on output.
-    /// \exception nothrow
-    static inline std::ios_base& showbraces(std::ios_base& iosbase)
-    {
-        set_showbraces(iosbase, true);
-        return iosbase;
-    }
-    static inline std::ios_base& noshowbraces(std::ios_base& iosbase)
-    {
-        set_showbraces(iosbase, false);
-        return iosbase;
-    }
-    
-    /// Overloaded output stream operator for guid type.
-    friend std::ostream& operator<<(std::ostream& os, guid const& g);
-
-    /// Overloaded input stream operator for guid type.
-    friend std::istream& operator>>(std::istream& is, guid &g);
-
-private:
-
-    void throw_invalid_argument() const
-    {
-        throw std::invalid_argument("invalid guid string");
-    }
-
-    template <typename ch, typename char_traits, typename alloc>
-    void construct(std::basic_string<ch, char_traits, alloc> const& str)
-    {
-        std::basic_stringstream <ch, char_traits, alloc > ss;
-        if (!(ss << str) || !(ss >> *this))
-        {
-            throw_invalid_argument();
-        }
-    }
-
-    void construct(boost::uint32_t const& d1, boost::uint16_t const& d2, boost::uint16_t const& d3, boost::uint8_t const (&d4)[8])
-    {
-        std::ostringstream ss;
-        ss.flags(std::ios::hex);        
-        ss.fill('0');
-
-        ss.width(8);
-        ss << d1;
-        ss << '-';
-
-        ss.width(4);
-        ss << d2;
-        ss << '-';
-
-        ss.width(4);
-        ss << d3;
-        ss << '-';
-
-        for (std::size_t i = 0; i < sizeof(d4); ++i)
-        {
-            ss.width(2);
-            ss << static_cast<boost::uint32_t>(d4[i]);
-            if (1 == i)
-                ss << '-';
-        }
-
-        construct(ss.str());
-    }
-
-    //random number based
-    static guid create_random_based() // throw()
-    {
-        guid result;
-        static bool init_rand = true;
-        if (init_rand)
-        {
-            std::srand(static_cast<unsigned int>(std::time(0)));
-            init_rand = false;
-        }
-        
-        for (size_t i = 0; i < result.data_.size(); i++)
-        {
-            result.data_[i] = detail::random_byte();
-        }
-    
-        // set variant
-        // should be 0b10xxxxxx
-        result.data_[8] &= 0xBF;
-        result.data_[8] |= 0x80;
-        
-       // set version
-        // should be 0b0100xxxx
-        result.data_[6] &= 0x4F; //0b01001111
-        result.data_[6] |= 0x40; //0b01000000
-    
-        return result;
-    }
-    
-    // name based
-    static guid create_name_based(guid const& namespace_guid, char const* name, int name_length)
-    {
-        using boost::uint8_t;
-        
-        detail::SHA1 sha1;
-
-        sha1.addBytes(name, name_length);
-        
-        unsigned char* digest = sha1.getDigest();
-        if (!digest)
-        {
-            throw std::runtime_error("create_name_based sha error");
-        }
-        
-        guid result;
-        for (int i = 0; i < 4; ++i)
-        {
-            
-            result.data_[i*4+0] = static_cast<uint8_t>((digest[i] >> 24) & 0xFF);
-            result.data_[i*4+1] = static_cast<uint8_t>((digest[i] >> 16) & 0xFF);
-            result.data_[i*4+2] = static_cast<uint8_t>((digest[i] >> 8) & 0xFF);
-            result.data_[i*4+3] = static_cast<uint8_t>((digest[i] >> 0) & 0xFF);
-        }
-        
-        // set variant
-        // should be 0b10xxxxxx
-        result.data_[8] &= 0xBF;
-        result.data_[8] |= 0x80;
-        
-        // set version
-        // should be 0b0101xxxx
-        result.data_[6] &= 0x5F; //0b01011111
-        result.data_[6] |= 0x50; //0b01010000
-    
-        return result;
-    }
-
-    static int get_showbraces_index()
-    {
-        static int index = std::ios_base::xalloc();
-        return index;
-    }
-    
-private:
-
-    ::boost::array<boost::uint8_t, 16> data_;
-};
-
-inline std::ostream& operator<<(std::ostream& os, guid const& g)
-{
-    using namespace std;
-
-    // TODO: If optional support of Boost is added,
-    // use Boost I/O State Savers for safe RAII.
-    std::ios_base::fmtflags flags_saver(os.flags());
-    std::streamsize width_saver(os.width());
-    std::ostream::char_type fill_saver(os.fill());
-
-    const std::ostream::sentry ok(os);
-    if (ok)
-    {
-        bool showbraces = guid::get_showbraces(os);
-        if (showbraces)
-        {
-            os << '{';
-        }
-        os << hex;
-        os.fill('0');
-        for (size_t i = 0; i < g.size(); ++i)
-        {
-            os.width(2);
-            os << static_cast<unsigned int>(g.data_[i]);
-            if (i == 3 || i == 5 || i == 7 || i == 9)
-            {
-                os << '-';
-            }
-        }
-        if (showbraces)
-        {
-            os << '}';
-        }
-    }
-
-    os.flags(flags_saver);
-    os.width(width_saver);
-    os.fill(fill_saver);
-
-    return os;
-}
-
-inline std::istream& operator>>(std::istream& is, guid &g)
-{
-    using namespace std;
-
-    typedef std::istream::char_type char_type;
-    guid temp_guid;
-    const std::istream::sentry ok(is);
-    if (ok)
-    {
-        char_type c;
-        c = static_cast<char_type>(is.peek());
-        bool bHaveBraces = false;
-        if (c == '{')
-        {
-            bHaveBraces = true;
-            is >> c; // read brace
-        }
-
-        for (size_t i = 0; i < temp_guid.size() && is; ++i)
-        {
-            std::stringstream ss;
-
-            // read 2 characters into stringstream
-            is >> c; ss << c;
-            is >> c; ss << c;
-
-            // extract 2 characters from stringstream as a hex number
-            unsigned int val = 0;
-            ss >> hex >> val;
-            if (!ss)
-            {
-                is.setstate(ios_base::failbit);
-            }
-
-            // check that val is within valid range
-            if (val > 255)
-            {
-                is.setstate(ios_base::badbit);
-            }
-
-            temp_guid.data_[i] = static_cast<boost::uint8_t>(val);
-
-            if (is)
-            {
-                if (i == 3 || i == 5 || i == 7 || i == 9)
-                {
-                    is >> c;
-                    if (c != '-')
-                        is.setstate(ios_base::failbit);
-                }
-            }
-        }
-
-        if (bHaveBraces && is)
-        {
-            is >> c;
-            if (c != '}')
-                is.setstate(ios_base::failbit);
-        }
-        
-        if (is)
-        {
-            g = temp_guid;
-        }
-    }
-
-    return is;
-}
-
-} //namespace liblas
-
-#endif // LIBLAS_GUID_HPP_INCLUDED
diff --git a/include/liblas/header.hpp b/include/liblas/header.hpp
old mode 100644
new mode 100755
index 291630b..52db1f2
--- a/include/liblas/header.hpp
+++ b/include/liblas/header.hpp
@@ -43,7 +43,7 @@
 #ifndef LIBLAS_LASHEADER_HPP_INCLUDED
 #define LIBLAS_LASHEADER_HPP_INCLUDED
 
-#include <liblas/guid.hpp>
+#include <boost/uuid/uuid.hpp>
 #include <liblas/bounds.hpp>
 #include <liblas/schema.hpp>
 #include <liblas/spatialreference.hpp>
@@ -53,8 +53,10 @@
 #include <liblas/export.hpp>
 #include <liblas/detail/singleton.hpp>
 // boost
-#include <boost/cstdint.hpp>
 #include <boost/foreach.hpp>
+#include <boost/uuid/uuid.hpp>
+#include <boost/uuid/uuid_generators.hpp>
+#include <boost/uuid/uuid_io.hpp>
 
 //std
 #include <cstddef>
@@ -88,7 +90,7 @@ public:
 
     /// Array of 5 elements - numbers of points recorded by each return.
     /// \todo TODO: Consider replacing with {boost|std::tr1}::array<T, 5> --mloskot
-    typedef std::vector<boost::uint32_t> RecordsByReturnArray;
+    typedef std::vector<uint32_t> RecordsByReturnArray;
 
     /// Default constructor.
     /// The default constructed header is configured according to the ASPRS
@@ -119,50 +121,50 @@ public:
 
     /// Get file source identifier.
     /// \exception No throw
-    boost::uint16_t GetFileSourceId() const;
+    uint16_t GetFileSourceId() const;
 
     /// Set file source identifier.
     /// \param v - should be set to a value between 1 and 65535.
     /// \exception No throw
     ///
     /// \todo TODO: Should we warn or throw about type overflow when user passes 65535 + 1 = 0
-    void SetFileSourceId(boost::uint16_t v);
+    void SetFileSourceId(uint16_t v);
 
     /// Get value field reserved by the ASPRS LAS Specification.
     /// \note This field is always filled with 0.
     ///
     /// \todo TODO: Should we warn or throw about type overflow when user passes 65535 + 1 = 0
-    boost::uint16_t GetReserved() const;
+    uint16_t GetReserved() const;
 
     /// Set reserved value for the header identifier.
     /// \param v - should be set to a value between 1 and 65535.
     /// \exception No throw
-    void SetReserved(boost::uint16_t v);
+    void SetReserved(uint16_t v);
 
     /// Get project identifier.
-    /// \return Global Unique Identifier as an instance of liblas::guid class.
-    guid GetProjectId() const;
+    /// \return Global Unique Identifier as an instance of boost::uuid::uuid class.
+    boost::uuids::uuid GetProjectId() const;
 
     /// Set project identifier.
-    void SetProjectId(guid const& v);
+    void SetProjectId(boost::uuids::uuid const& v);
 
     /// Get major component of version of LAS format.
     /// \return Always 1 is returned as the only valid value.
-    boost::uint8_t GetVersionMajor() const;
+    uint8_t GetVersionMajor() const;
 
     /// Set major component of version of LAS format.
     /// \exception std::out_of_range - invalid value given.
     /// \param v - value between eVersionMajorMin and eVersionMajorMax.
-    void SetVersionMajor(boost::uint8_t v);
+    void SetVersionMajor(uint8_t v);
 
     /// Get minor component of version of LAS format.
     /// \return Valid values are 0, 1, 2, 3.
-    boost::uint8_t GetVersionMinor() const;
+    uint8_t GetVersionMinor() const;
 
     /// Set minor component of version of LAS format.
     /// \exception std::out_of_range - invalid value given.
     /// \param v - value between eVersionMinorMin and eVersionMinorMax.
-    void SetVersionMinor(boost::uint8_t v);
+    void SetVersionMinor(uint8_t v);
 
     /// Get system identifier.
     /// Default value is \b "libLAS" specified as the SystemIdentifier constant.
@@ -191,52 +193,52 @@ public:
 
     /// Get day of year of file creation date.
     /// \todo TODO: Use full date structure instead of Julian date number.
-    boost::uint16_t GetCreationDOY() const;
+    uint16_t GetCreationDOY() const;
 
     /// Set day of year of file creation date.
     /// \exception std::out_of_range - given value is higher than number 366.
     /// \todo TODO: Use full date structure instead of Julian date number.
-    void SetCreationDOY(boost::uint16_t v);
+    void SetCreationDOY(uint16_t v);
 
     /// Set year of file creation date.
     /// \todo TODO: Remove if full date structure is used.
-    boost::uint16_t GetCreationYear() const;
+    uint16_t GetCreationYear() const;
 
     /// Get year of file creation date.
     /// \exception std::out_of_range - given value is higher than number 9999.
     /// \todo TODO: Remove if full date structure is used.
-    void SetCreationYear(boost::uint16_t v);
+    void SetCreationYear(uint16_t v);
 
     /// Get number of bytes of generic verion of public header block storage.
     /// Standard version of the public header block is 227 bytes long.
-    boost::uint16_t GetHeaderSize() const;
+    uint16_t GetHeaderSize() const;
 
     /// Sets the header size.  Note that this is not the same as the offset to 
     /// point data. 
-    void SetHeaderSize(boost::uint16_t v);
+    void SetHeaderSize(uint16_t v);
     
     /// Get number of bytes from the beginning to the first point record.
-    boost::uint32_t GetDataOffset() const;
+    uint32_t GetDataOffset() const;
 
     /// Set number of bytes from the beginning to the first point record.
     /// \exception std::out_of_range - if given offset is bigger than 227+2 bytes
     /// for the LAS 1.0 format and 227 bytes for the LAS 1.1 format.
-    void SetDataOffset(boost::uint32_t v);
+    void SetDataOffset(uint32_t v);
 
     /// Get number of bytes from the end of the VLRs to the GetDataOffset.
-    boost::uint32_t GetHeaderPadding() const;
+    uint32_t GetHeaderPadding() const;
 
     /// Set the number of bytes from the end of the VLRs in the header to the 
     /// beginning of point data.
     /// \exception std::out_of_range - if given offset is bigger than 227+2 bytes
     /// for the LAS 1.0 format and 227 bytes for the LAS 1.1 format.
-    void SetHeaderPadding(boost::uint32_t v);
+    void SetHeaderPadding(uint32_t v);
 
     /// Get number of variable-length records.
-    boost::uint32_t GetRecordsCount() const;
+    uint32_t GetRecordsCount() const;
 
     /// Set number of variable-length records.
-    void SetRecordsCount(boost::uint32_t v);
+    void SetRecordsCount(uint32_t v);
     
     /// Get identifier of point data (record) format.
     PointFormatName GetDataFormatId() const;
@@ -251,13 +253,13 @@ public:
     /// can be used for other, optional, dimensions.  If no schema is 
     /// available for the file in the form of a liblas.org VLR schema record,
     /// These extra bytes are available via liblas::Point::GetExtraData().
-    boost::uint16_t GetDataRecordLength() const;
+    uint16_t GetDataRecordLength() const;
     
     /// Get total number of point records stored in the LAS file.
-    boost::uint32_t GetPointRecordsCount() const;
+    uint32_t GetPointRecordsCount() const;
 
     /// Set number of point records that will be stored in a new LAS file.
-    void SetPointRecordsCount(boost::uint32_t v);
+    void SetPointRecordsCount(uint32_t v);
     
     /// Get array of the total point records per return.
     RecordsByReturnArray const& GetPointRecordsByReturnCount() const;
@@ -266,7 +268,7 @@ public:
     /// \exception std::out_of_range - if index is bigger than 4.
     /// \param index - subscript (0-4) of array element being updated.
     /// \param v - new value to assign to array element identified by index.
-    void SetPointRecordsByReturnCount(std::size_t index, boost::uint32_t v);
+    void SetPointRecordsByReturnCount(std::size_t index, uint32_t v);
     
     /// Get scale factor for X coordinate.
     double GetScaleX() const;
@@ -320,14 +322,14 @@ public:
     void AddVLR(VariableRecord const& v);
     
     /// Returns a VLR 
-    VariableRecord const& GetVLR(boost::uint32_t index) const;
+    VariableRecord const& GetVLR(uint32_t index) const;
     
     /// Returns all of the VLRs
     const std::vector<VariableRecord>& GetVLRs() const;
 
     /// Removes a VLR from the the header.
-    void DeleteVLR(boost::uint32_t index);
-    void DeleteVLRs(std::string const& name, boost::uint16_t id);
+    void DeleteVLR(uint32_t index);
+    void DeleteVLRs(std::string const& name, uint16_t id);
 
     /// Rewrite variable-length record with georeference infomation, if available.
     void SetGeoreference();
@@ -366,7 +368,7 @@ public:
     /// Sets whether or not the points are compressed.
     void SetCompressed(bool b);
     
-    boost::uint32_t GetVLRBlockSize() const;
+    uint32_t GetVLRBlockSize() const;
 
     void to_rst(std::ostream& os) const;
     void to_xml(std::ostream& os) const;
@@ -403,20 +405,22 @@ private:
     char m_signature[eFileSignatureSize]; // TODO: replace with boost::array --mloskot
     boost::uint16_t m_sourceId;
     boost::uint16_t m_reserved;
-    boost::uint32_t m_projectId1;
-    boost::uint16_t m_projectId2;
-    boost::uint16_t m_projectId3;
-    boost::uint8_t m_projectId4[eProjectId4Size];
+    boost::uuids::uuid m_projectGuid;
+    // boost::uint32_t m_projectId1;
+    // boost::uint16_t m_projectId2;
+    // boost::uint16_t m_projectId3;
+    // boost::uint8_t m_projectId4[eProjectId4Size];
     boost::uint8_t m_versionMajor;
     boost::uint8_t m_versionMinor;
+
     char m_systemId[eSystemIdSize]; // TODO: replace with boost::array --mloskot
     char m_softwareId[eSoftwareIdSize];
-    boost::uint16_t m_createDOY;
-    boost::uint16_t m_createYear;
-    boost::uint16_t m_headerSize;
-    boost::uint32_t m_dataOffset;
-    boost::uint32_t m_recordsCount;
-    boost::uint32_t m_pointRecordsCount;
+    uint16_t m_createDOY;
+    uint16_t m_createYear;
+    uint16_t m_headerSize;
+    uint32_t m_dataOffset;
+    uint32_t m_recordsCount;
+    uint32_t m_pointRecordsCount;
     RecordsByReturnArray m_pointRecordsByReturn;
     PointScales m_scales;
     PointOffsets m_offsets;
@@ -425,7 +429,7 @@ private:
     SpatialReference m_srs;
     Schema m_schema;
     bool m_isCompressed;
-    boost::uint32_t m_headerPadding;
+    uint32_t m_headerPadding;
 };
 
 LAS_DLL std::ostream& operator<<(std::ostream& os, liblas::Header const&);
diff --git a/include/liblas/index.hpp b/include/liblas/index.hpp
old mode 100644
new mode 100755
index 39e770d..00b43ee
--- a/include/liblas/index.hpp
+++ b/include/liblas/index.hpp
@@ -72,7 +72,7 @@ namespace liblas {
 // when saved and reloaded from index or las file.
 #define LIBLAS_INDEX_PADLASTVLR
 
-typedef std::vector<boost::uint8_t> IndexVLRData;
+typedef std::vector<uint8_t> IndexVLRData;
 typedef std::vector<liblas::detail::IndexCell> IndexCellRow;
 typedef std::vector<IndexCellRow>	IndexCellDataBlock;
 
@@ -110,7 +110,7 @@ class LAS_DLL IndexIterator;
 //		the z dimension may be slower in that event but no less successful.
 
 // A filter operation is invoked with the command:
-//		const std::vector<boost::uint32_t>& Filter(IndexData const& ParamSrc);
+//		const std::vector<uint32_t>& Filter(IndexData const& ParamSrc);
 // The return value is a vector of point ID's. The points can be accessed from the LAS file in the standard way
 //		as the index in no way modifies them or their sequential order.
 // Currently only one, two or three dimensional spatial window filters are supported. See IndexData below for 
@@ -138,8 +138,8 @@ private:
 	Bounds<double> m_bounds;
 	bool m_indexBuilt, m_tempFileStarted, m_readerCreated, m_readOnly, m_writestandaloneindex, m_forceNewIndex;
 	int m_debugOutputLevel;
-	boost::uint8_t m_versionMajor, m_versionMinor;
-    boost::uint32_t m_pointRecordsCount, m_maxMemoryUsage, m_cellsX, m_cellsY, m_cellsZ, m_totalCells, 
+	uint8_t m_versionMajor, m_versionMinor;
+    uint32_t m_pointRecordsCount, m_maxMemoryUsage, m_cellsX, m_cellsY, m_cellsZ, m_totalCells, 
 		m_DataVLR_ID;
     liblas::detail::TempFileOffsetType m_tempFileWrittenBytes;
     double m_rangeX, m_rangeY, m_rangeZ, m_cellSizeZ, m_cellSizeX, m_cellSizeY;
@@ -147,7 +147,7 @@ private:
 	std::string m_indexAuthor;
 	std::string m_indexComment;
 	std::string m_indexDate;
-	std::vector<boost::uint32_t> m_filterResult;
+	std::vector<uint32_t> m_filterResult;
 	std::ostream *m_ofs;
     FILE *m_tempFile, *m_outputFile;
     FILE *m_debugger;
@@ -157,32 +157,32 @@ private:
     void ClearOldIndex(void);
 	bool BuildIndex(void);
 	bool Validate(void);
-	boost::uint32_t GetDefaultReserve(void);
+	uint32_t GetDefaultReserve(void);
 	bool LoadIndexVLR(VariableRecord const& vlr);
 	void SetCellFilterBounds(IndexData & ParamSrc);
-	bool FilterOneVLR(VariableRecord const& vlr, boost::uint32_t& i, IndexData & ParamSrc, bool & VLRDone);
-	bool FilterPointSeries(boost::uint32_t & PointID, boost::uint32_t & PointsScanned, 
-		boost::uint32_t const PointsToIgnore, boost::uint32_t const x, boost::uint32_t const y, boost::uint32_t const z, 
+	bool FilterOneVLR(VariableRecord const& vlr, uint32_t& i, IndexData & ParamSrc, bool & VLRDone);
+	bool FilterPointSeries(uint32_t & PointID, uint32_t & PointsScanned, 
+		uint32_t const PointsToIgnore, uint32_t const x, uint32_t const y, uint32_t const z, 
 		liblas::detail::ConsecPtAccumulator const ConsecutivePts, IndexIterator *Iterator, 
 		IndexData const& ParamSrc);
-	bool VLRInteresting(boost::int32_t MinCellX, boost::int32_t MinCellY, boost::int32_t MaxCellX, boost::int32_t MaxCellY, 
+	bool VLRInteresting(int32_t MinCellX, int32_t MinCellY, int32_t MaxCellX, int32_t MaxCellY, 
 		IndexData const& ParamSrc);
-	bool CellInteresting(boost::int32_t x, boost::int32_t y, IndexData const& ParamSrc);
-	bool SubCellInteresting(boost::int32_t SubCellID, boost::int32_t XCellID, boost::int32_t YCellID, IndexData const& ParamSrc);
-	bool ZCellInteresting(boost::int32_t ZCellID, IndexData const& ParamSrc);
-	bool FilterOnePoint(boost::int32_t x, boost::int32_t y, boost::int32_t z, boost::int32_t PointID, boost::int32_t LastPointID, bool &LastPtRead,
+	bool CellInteresting(int32_t x, int32_t y, IndexData const& ParamSrc);
+	bool SubCellInteresting(int32_t SubCellID, int32_t XCellID, int32_t YCellID, IndexData const& ParamSrc);
+	bool ZCellInteresting(int32_t ZCellID, IndexData const& ParamSrc);
+	bool FilterOnePoint(int32_t x, int32_t y, int32_t z, int32_t PointID, int32_t LastPointID, bool &LastPtRead,
 		IndexData const& ParamSrc);
 	// Determines what X/Y cell in the basic cell matrix a point falls in
-	bool IdentifyCell(Point const& CurPt, boost::uint32_t& CurCellX, boost::uint32_t& CurCellY) const;
+	bool IdentifyCell(Point const& CurPt, uint32_t& CurCellX, uint32_t& CurCellY) const;
 	// determines what Z cell a point falls in
-	bool IdentifyCellZ(Point const& CurPt, boost::uint32_t& CurCellZ) const;
+	bool IdentifyCellZ(Point const& CurPt, uint32_t& CurCellZ) const;
 	// Determines what quadrant sub-cell a point falls in
-	bool IdentifySubCell(Point const& CurPt, boost::uint32_t x, boost::uint32_t y, boost::uint32_t& CurSubCell) const;
+	bool IdentifySubCell(Point const& CurPt, uint32_t x, uint32_t y, uint32_t& CurSubCell) const;
 	// Offloads binned cell data while building Index when cell data in memory exceeds maximum set by user
 	bool PurgePointsToTempFile(IndexCellDataBlock& CellBlock);
 	// Reloads and examines one cell of data from temp file
 	bool LoadCellFromTempFile(liblas::detail::IndexCell *CellBlock, 
-		boost::uint32_t CurCellX, boost::uint32_t CurCellY);
+		uint32_t CurCellX, uint32_t CurCellY);
 	// temp file is used to store sorted data while building index
 	FILE *OpenTempFile(void);
 	// closes and removes the temp file
@@ -210,7 +210,7 @@ private:
 
 	// debugging
 	bool OutputCellStats(IndexCellDataBlock& CellBlock)  const;
-	bool OutputCellGraph(std::vector<boost::uint32_t> CellPopulation, boost::uint32_t MaxPointsPerCell)  const;
+	bool OutputCellGraph(std::vector<uint32_t> CellPopulation, uint32_t MaxPointsPerCell)  const;
 	
 public:
 	// IndexFailed and IndexReady can be used to tell if an Index is ready for a filter operation
@@ -219,11 +219,11 @@ public:
     // Prep takes the input data and initializes Index values and then either builds or examines the Index
     bool Prep(IndexData const& ParamSrc);
     // Filter performs a point filter using the bounds in ParamSrc
-    const std::vector<boost::uint32_t>& Filter(IndexData & ParamSrc);
-    IndexIterator* Filter(IndexData const& ParamSrc, boost::uint32_t ChunkSize);
+    const std::vector<uint32_t>& Filter(IndexData & ParamSrc);
+    IndexIterator* Filter(IndexData const& ParamSrc, uint32_t ChunkSize);
     IndexIterator* Filter(double LowFilterX, double HighFilterX, double LowFilterY, double HighFilterY, 
-		double LowFilterZ, double HighFilterZ, boost::uint32_t ChunkSize);
-    IndexIterator* Filter(Bounds<double> const& BoundsSrc, boost::uint32_t ChunkSize);
+		double LowFilterZ, double HighFilterZ, uint32_t ChunkSize);
+    IndexIterator* Filter(Bounds<double> const& BoundsSrc, uint32_t ChunkSize);
     
     // Return the bounds of the current Index
 	double GetMinX(void) const	{return (m_bounds.min)(0);}
@@ -238,15 +238,15 @@ public:
 	double GetRangeZ(void) const	{return m_rangeZ;}
 	Bounds<double> const& GetBounds(void) const	{return m_bounds;}
 	// Return the number of points used to build the Index
-	boost::uint32_t GetPointRecordsCount(void) const	{return m_pointRecordsCount;}
+	uint32_t GetPointRecordsCount(void) const	{return m_pointRecordsCount;}
 	// Return the number of cells in the Index
-	boost::uint32_t GetCellsX(void) const	{return m_cellsX;}
-	boost::uint32_t GetCellsY(void) const	{return m_cellsY;}
+	uint32_t GetCellsX(void) const	{return m_cellsX;}
+	uint32_t GetCellsY(void) const	{return m_cellsY;}
 	// Return the number of Z-dimension cells in the Index. Value is 1 if no Z-cells were created during Index building
-	boost::uint32_t GetCellsZ(void) const	{return m_cellsZ;}
+	uint32_t GetCellsZ(void) const	{return m_cellsZ;}
 	// 42 is the ID for the Index header VLR and 43 is the normal ID for the Index data VLR's
 	// For future expansion, multiple indexes could assign data VLR ID's of their own choosing
-	boost::uint32_t GetDataVLR_ID(void) const	{return m_DataVLR_ID;}
+	uint32_t GetDataVLR_ID(void) const	{return m_DataVLR_ID;}
 	// Since the user can define a Z cell size it is useful to examine that for an existing index
 	double GetCellSizeZ(void) const	{return m_cellSizeZ;}
 	// Return values used in building or examining index
@@ -254,7 +254,7 @@ public:
 	bool GetReadOnly(void) const	{return m_readOnly;}
 	bool GetStandaloneIndex(void) const	{return m_writestandaloneindex;}
 	bool GetForceNewIndex(void) const	{return m_forceNewIndex;}
-	boost::uint32_t GetMaxMemoryUsage(void) const	{return m_maxMemoryUsage;}
+	uint32_t GetMaxMemoryUsage(void) const	{return m_maxMemoryUsage;}
 	int GetDebugOutputLevel(void) const {return m_debugOutputLevel;}
 	// Not sure if these are more useful than dangerous
 	Header *GetPointHeader(void) {return &m_pointheader;}
@@ -266,11 +266,11 @@ public:
 	const char *GetIndexAuthorStr(void)  const;
 	const char *GetIndexCommentStr(void)  const;
 	const char *GetIndexDateStr(void)  const;
-	boost::uint8_t GetVersionMajor(void) const	{return m_versionMajor;}
-	boost::uint8_t GetVersionMinor(void) const	{return m_versionMinor;}
+	uint8_t GetVersionMajor(void) const	{return m_versionMajor;}
+	uint8_t GetVersionMinor(void) const	{return m_versionMinor;}
 	// Methods for setting values used when reading index from file to facilitate moving reading function into
 	// separate IndexInput object at a future time to provide symmetry with IndexOutput
-	void SetDataVLR_ID(boost::uint32_t DataVLR_ID)	{m_DataVLR_ID = DataVLR_ID;}
+	void SetDataVLR_ID(uint32_t DataVLR_ID)	{m_DataVLR_ID = DataVLR_ID;}
 	void SetIndexAuthorStr(const char *ias)	{m_indexAuthor = ias;}
 	void SetIndexCommentStr(const char *ics)	{m_indexComment = ics;}
 	void SetIndexDateStr(const char *ids)	{m_indexDate = ids;}
@@ -280,10 +280,10 @@ public:
 	void SetMaxY(double maxY)	{(m_bounds.max)(1, maxY);}
 	void SetMinZ(double minZ)	{(m_bounds.min)(2, minZ);}
 	void SetMaxZ(double maxZ)	{(m_bounds.max)(2, maxZ);}
-	void SetPointRecordsCount(boost::uint32_t prc)	{m_pointRecordsCount = prc;}
-	void SetCellsX(boost::uint32_t cellsX)	{m_cellsX = cellsX;}
-	void SetCellsY(boost::uint32_t cellsY)	{m_cellsY = cellsY;}
-	void SetCellsZ(boost::uint32_t cellsZ)	{m_cellsZ = cellsZ;}
+	void SetPointRecordsCount(uint32_t prc)	{m_pointRecordsCount = prc;}
+	void SetCellsX(uint32_t cellsX)	{m_cellsX = cellsX;}
+	void SetCellsY(uint32_t cellsY)	{m_cellsY = cellsY;}
+	void SetCellsZ(uint32_t cellsZ)	{m_cellsZ = cellsZ;}
 	
 }; 
 
@@ -358,18 +358,18 @@ public:
 	bool SetInitialValues(std::istream *ifs = 0, Reader *reader = 0, std::ostream *ofs = 0, Reader *idxreader = 0, 
 		const char *tmpfilenme = 0, const char *indexauthor = 0, 
 		const char *indexcomment = 0, const char *indexdate = 0, double zbinht = 0.0, 
-		boost::uint32_t maxmem = LIBLAS_INDEX_MAXMEMDEFAULT, int debugoutputlevel = 0, bool readonly = 0, 
+		uint32_t maxmem = LIBLAS_INDEX_MAXMEMDEFAULT, int debugoutputlevel = 0, bool readonly = 0, 
 		bool writestandaloneindex = 0, bool forcenewindex = 0, FILE *debugger = 0);
 
 	// set the values needed for building an index embedded in existing las file, overriding any existing index
 	bool SetBuildEmbedValues(Reader *reader, std::ostream *ofs, const char *tmpfilenme, const char *indexauthor = 0, 
 		const char *indexcomment = 0, const char *indexdate = 0, double zbinht = 0.0, 
-		boost::uint32_t maxmem = LIBLAS_INDEX_MAXMEMDEFAULT, int debugoutputlevel = 0, FILE *debugger = 0);
+		uint32_t maxmem = LIBLAS_INDEX_MAXMEMDEFAULT, int debugoutputlevel = 0, FILE *debugger = 0);
 
 	// set the values needed for building an index in a standalone file, overriding any existing index
 	bool SetBuildAloneValues(Reader *reader, std::ostream *ofs, const char *tmpfilenme, const char *indexauthor = 0, 
 		const char *indexcomment = 0, const char *indexdate = 0, double zbinht = 0.0, 
-		boost::uint32_t maxmem = LIBLAS_INDEX_MAXMEMDEFAULT, int debugoutputlevel = 0, FILE *debugger = 0);
+		uint32_t maxmem = LIBLAS_INDEX_MAXMEMDEFAULT, int debugoutputlevel = 0, FILE *debugger = 0);
 
 	// set the values needed for filtering with an existing index in an las file
 	bool SetReadEmbedValues(Reader *reader, int debugoutputlevel = 0, FILE *debugger = 0);
@@ -381,13 +381,13 @@ public:
 	// otherwise, prepare the existing index for filtering
 	bool SetReadOrBuildEmbedValues(Reader *reader, std::ostream *ofs, const char *tmpfilenme, const char *indexauthor = 0, 
 		const char *indexcomment = 0, const char *indexdate = 0, double zbinht = 0.0, 
-		boost::uint32_t maxmem = LIBLAS_INDEX_MAXMEMDEFAULT, int debugoutputlevel = 0, FILE *debugger = 0);
+		uint32_t maxmem = LIBLAS_INDEX_MAXMEMDEFAULT, int debugoutputlevel = 0, FILE *debugger = 0);
 
 	// set the values needed for building an index in a standalone file only if no index already exists in the las file
 	// otherwise, prepare the existing index for filtering
 	bool SetReadOrBuildAloneValues(Reader *reader, std::ostream *ofs, const char *tmpfilenme, const char *indexauthor = 0, 
 		const char *indexcomment = 0, const char *indexdate = 0, double zbinht = 0.0, 
-		boost::uint32_t maxmem = LIBLAS_INDEX_MAXMEMDEFAULT, int debugoutputlevel = 0, FILE *debugger = 0);
+		uint32_t maxmem = LIBLAS_INDEX_MAXMEMDEFAULT, int debugoutputlevel = 0, FILE *debugger = 0);
 	
 	// set the bounds for use in filtering
 	bool SetFilterValues(double LowFilterX, double HighFilterX, double LowFilterY, double HighFilterY, double LowFilterZ, double HighFilterZ, 
@@ -417,11 +417,11 @@ protected:
 	const char *m_indexDate;
 	double m_cellSizeZ;
 	double m_LowXBorderPartCell, m_HighXBorderPartCell, m_LowYBorderPartCell, m_HighYBorderPartCell;
-    boost::int32_t m_LowXCellCompletelyIn, m_HighXCellCompletelyIn, m_LowYCellCompletelyIn, m_HighYCellCompletelyIn,
+    int32_t m_LowXCellCompletelyIn, m_HighXCellCompletelyIn, m_LowYCellCompletelyIn, m_HighYCellCompletelyIn,
 		m_LowZCellCompletelyIn, m_HighZCellCompletelyIn;
-    boost::int32_t m_LowXBorderCell, m_HighXBorderCell, m_LowYBorderCell, m_HighYBorderCell,
+    int32_t m_LowXBorderCell, m_HighXBorderCell, m_LowYBorderCell, m_HighYBorderCell,
 		m_LowZBorderCell, m_HighZBorderCell;
-	boost::uint32_t m_maxMemoryUsage;
+	uint32_t m_maxMemoryUsage;
 	int m_debugOutputLevel;
 	bool m_noFilterX, m_noFilterY, m_noFilterZ, m_readOnly, m_writestandaloneindex, m_forceNewIndex, m_indexValid;
 	FILE *m_debugger;
@@ -435,7 +435,7 @@ public:
 	bool GetReadOnly(void) const	{return m_readOnly;}
 	bool GetStandaloneIndex(void) const	{return m_writestandaloneindex;}
 	bool GetForceNewIndex(void) const	{return m_forceNewIndex;}
-	boost::uint32_t GetMaxMemoryUsage(void) const	{return m_maxMemoryUsage;}
+	uint32_t GetMaxMemoryUsage(void) const	{return m_maxMemoryUsage;}
 	Reader *GetReader(void) const {return m_reader;}
 	int GetDebugOutputLevel(void) const {return m_debugOutputLevel;}
 	const char *GetTempFileName(void) const {return m_tempFileName;}
@@ -457,7 +457,7 @@ public:
 	void SetIndexComment(const char *indexcomment)	{m_indexComment = indexcomment;}
 	void SetIndexDate(const char *indexdate)	{m_indexDate = indexdate;}
 	void SetCellSizeZ(double cellsizez)	{m_cellSizeZ = cellsizez;}
-	void SetMaxMem(boost::uint32_t maxmem)	{m_maxMemoryUsage = maxmem;}
+	void SetMaxMem(uint32_t maxmem)	{m_maxMemoryUsage = maxmem;}
 	void SetDebugOutputLevel(int debugoutputlevel)	{m_debugOutputLevel = debugoutputlevel;}
 	void SetReadOnly(bool readonly)	{m_readOnly = readonly;}
 	void SetStandaloneIndex(bool writestandaloneindex)	{m_writestandaloneindex = writestandaloneindex;}
@@ -471,16 +471,16 @@ friend class Index;
 protected:
 	IndexData m_indexData;
 	Index *m_index;
-	boost::uint32_t m_chunkSize, m_advance;
-	boost::uint32_t m_curVLR, m_curCellStartPos, m_curCellX, m_curCellY, m_totalPointsScanned, m_ptsScannedCurCell,
+	uint32_t m_chunkSize, m_advance;
+	uint32_t m_curVLR, m_curCellStartPos, m_curCellX, m_curCellY, m_totalPointsScanned, m_ptsScannedCurCell,
 		m_ptsScannedCurVLR;
-	boost::uint32_t m_conformingPtsFound;
+	uint32_t m_conformingPtsFound;
 
 public:
 	IndexIterator(Index *IndexSrc, double LowFilterX, double HighFilterX, double LowFilterY, double HighFilterY, 
-		double LowFilterZ, double HighFilterZ, boost::uint32_t ChunkSize);
-	IndexIterator(Index *IndexSrc, IndexData const& IndexDataSrc, boost::uint32_t ChunkSize);
-	IndexIterator(Index *IndexSrc, Bounds<double> const& BoundsSrc, boost::uint32_t ChunkSize);
+		double LowFilterZ, double HighFilterZ, uint32_t ChunkSize);
+	IndexIterator(Index *IndexSrc, IndexData const& IndexDataSrc, uint32_t ChunkSize);
+	IndexIterator(Index *IndexSrc, Bounds<double> const& BoundsSrc, uint32_t ChunkSize);
     /// Copy constructor.
  	IndexIterator(IndexIterator const& other);
     /// Assignment operator.
@@ -488,34 +488,34 @@ public:
 private:
  	void Copy(IndexIterator const& other);
 	void ResetPosition(void);
-	boost::uint8_t MinMajorVersion(void)	{return(1);}
-	boost::uint8_t MinMinorVersion(void)	{return(2);}
+	uint8_t MinMajorVersion(void)	{return(1);}
+	uint8_t MinMinorVersion(void)	{return(2);}
 
 public:
 	/// n=0 or n=1 gives next sequence with no gap, n>1 skips n-1 filter-compliant points, n<0 jumps backwards n compliant points
-    const std::vector<boost::uint32_t>& advance(boost::int32_t n);
+    const std::vector<uint32_t>& advance(int32_t n);
     /// returns filter-compliant points as though the first point returned is element n in a zero-based array
-    const std::vector<boost::uint32_t>& operator()(boost::int32_t n);
+    const std::vector<uint32_t>& operator()(int32_t n);
 	/// returns next set of filter-compliant points with no skipped points
-	inline const std::vector<boost::uint32_t>& operator++()	{return (advance(1));}
+	inline const std::vector<uint32_t>& operator++()	{return (advance(1));}
 	/// returns next set of filter-compliant points with no skipped points
-	inline const std::vector<boost::uint32_t>& operator++(int)	{return (advance(1));}
+	inline const std::vector<uint32_t>& operator++(int)	{return (advance(1));}
 	/// returns set of filter-compliant points skipping backwards 1 from the end of the last set
-	inline const std::vector<boost::uint32_t>& operator--()	{return (advance(-1));}
+	inline const std::vector<uint32_t>& operator--()	{return (advance(-1));}
 	/// returns set of filter-compliant points skipping backwards 1 from the end of the last set
-	inline const std::vector<boost::uint32_t>& operator--(int)	{return (advance(-1));}
+	inline const std::vector<uint32_t>& operator--(int)	{return (advance(-1));}
 	/// returns next set of filter-compliant points with n-1 skipped points, for n<0 acts like -=()
-	inline const std::vector<boost::uint32_t>& operator+=(boost::int32_t n)	{return (advance(n));}
+	inline const std::vector<uint32_t>& operator+=(int32_t n)	{return (advance(n));}
 	/// returns next set of filter-compliant points with n-1 skipped points, for n<0 acts like -()
-	inline const std::vector<boost::uint32_t>& operator+(boost::int32_t n)	{return (advance(n));}
+	inline const std::vector<uint32_t>& operator+(int32_t n)	{return (advance(n));}
 	/// returns set of filter-compliant points beginning n points backwards from the end of the last set, for n<0 acts like +=()
-	inline const std::vector<boost::uint32_t>& operator-=(boost::int32_t n)	{return (advance(-n));}
+	inline const std::vector<uint32_t>& operator-=(int32_t n)	{return (advance(-n));}
 	/// returns set of filter-compliant points beginning n points backwards from the end of the last set, for n<0 acts like +()
-	inline const std::vector<boost::uint32_t>& operator-(boost::int32_t n)	{return (advance(-n));}
+	inline const std::vector<uint32_t>& operator-(int32_t n)	{return (advance(-n));}
     /// returns filter-compliant points as though the first point returned is element n in a zero-based array
-	inline const std::vector<boost::uint32_t>& operator[](boost::int32_t n)	{return ((*this)(n));}
+	inline const std::vector<uint32_t>& operator[](int32_t n)	{return ((*this)(n));}
 	/// tests viability of index for filtering with iterator
-	bool ValidateIndexVersion(boost::uint8_t VersionMajor, boost::uint8_t VersionMinor)	{return (VersionMajor > MinMajorVersion() || (VersionMajor == MinMajorVersion() && VersionMinor >= MinMinorVersion()));}
+	bool ValidateIndexVersion(uint8_t VersionMajor, uint8_t VersionMinor)	{return (VersionMajor > MinMajorVersion() || (VersionMajor == MinMajorVersion() && VersionMinor >= MinMinorVersion()));}
 };
 
 template <typename T, typename Q>
diff --git a/include/liblas/iterator.hpp b/include/liblas/iterator.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/liblas.hpp b/include/liblas/liblas.hpp
old mode 100644
new mode 100755
index ad14da8..f5ad44e
--- a/include/liblas/liblas.hpp
+++ b/include/liblas/liblas.hpp
@@ -47,7 +47,6 @@
 // liblas
 #include <liblas/version.hpp>
 #include <liblas/exception.hpp>
-#include <liblas/guid.hpp>
 #include <liblas/iterator.hpp>
 #include <liblas/bounds.hpp>
 #include <liblas/classification.hpp>
@@ -73,7 +72,7 @@
 // booost
 #include <boost/array.hpp>
 #include <boost/concept_check.hpp>
-#include <boost/cstdint.hpp>
+
 #include <boost/shared_ptr.hpp>
 
 //#define USE_BOOST_IO
@@ -90,6 +89,7 @@
 #include <fstream>
 #include <string>
 #include <vector>
+#include <stdint.h>
 
 /// Namespace grouping all elements of libLAS public interface.
 /// \note
@@ -244,7 +244,7 @@ public:
     virtual void WriteHeader() = 0;
     virtual void SetHeader(liblas::Header const& header) = 0;
     
-    virtual void UpdatePointCount(boost::uint32_t count) = 0;
+    virtual void UpdatePointCount(uint32_t count) = 0;
     virtual void WritePoint(const Point& point) = 0;
 
     virtual void SetFilters(std::vector<liblas::FilterPtr> const& filters) = 0;
diff --git a/include/liblas/point.hpp b/include/liblas/point.hpp
old mode 100644
new mode 100755
index 9c7f474..1f199b9
--- a/include/liblas/point.hpp
+++ b/include/liblas/point.hpp
@@ -53,7 +53,6 @@
 
 // boost
 #include <boost/array.hpp>
-#include <boost/cstdint.hpp>
 #include <boost/shared_ptr.hpp>
 #include <boost/any.hpp>
 // std
@@ -105,7 +104,7 @@ public:
         eScanAngleRankMax = 90
     };
 
-    Point();
+    // Point();
     ~Point() {}
     Point(Header const* header);
     Point(Point const& other);
@@ -115,9 +114,9 @@ public:
     double GetY() const;
     double GetZ() const;
     
-    boost::int32_t GetRawX() const;
-    boost::int32_t GetRawY() const;
-    boost::int32_t GetRawZ() const;
+    int32_t GetRawX() const;
+    int32_t GetRawY() const;
+    int32_t GetRawZ() const;
         
     void SetCoordinates(double const& x, double const& y, double const& z);
     
@@ -125,12 +124,12 @@ public:
     void SetY(double const& value);
     void SetZ(double const& value);
 
-    void SetRawX(boost::int32_t const& value);
-    void SetRawY(boost::int32_t const& value);
-    void SetRawZ(boost::int32_t const& value);
+    void SetRawX(int32_t const& value);
+    void SetRawY(int32_t const& value);
+    void SetRawZ(int32_t const& value);
     
-    boost::uint16_t GetIntensity() const;
-    void SetIntensity(boost::uint16_t const& intensity);
+    uint16_t GetIntensity() const;
+    void SetIntensity(uint16_t const& intensity);
 
     /// Gets all scanning flags encoded as single byte.
     /// The flags are (mandatory):
@@ -138,44 +137,44 @@ public:
     /// - Number of Returns - given pulse (bits 3, 4, 5);
     /// - Scan Direction Flag (bit 6);
     /// - Edge of Flight Line (bit 7).
-    boost::uint8_t GetScanFlags() const;
+    uint8_t GetScanFlags() const;
 
     /// Sets all scanning flags passed as a single byte.
     /// \sa Documentation of GetScanFlags method for flags details.
-    void SetScanFlags(boost::uint8_t const& flags);
+    void SetScanFlags(uint8_t const& flags);
     
-    boost::uint16_t GetReturnNumber() const;
-    void SetReturnNumber(boost::uint16_t const& num);
+    uint16_t GetReturnNumber() const;
+    void SetReturnNumber(uint16_t const& num);
 
-    boost::uint16_t GetNumberOfReturns() const;
-    void SetNumberOfReturns(boost::uint16_t const& num);
+    uint16_t GetNumberOfReturns() const;
+    void SetNumberOfReturns(uint16_t const& num);
 
-    boost::uint16_t GetScanDirection() const;
-    void SetScanDirection(boost::uint16_t const& dir);
+    uint16_t GetScanDirection() const;
+    void SetScanDirection(uint16_t const& dir);
     
-    boost::uint16_t GetFlightLineEdge() const;
-    void SetFlightLineEdge(boost::uint16_t const& edge);
+    uint16_t GetFlightLineEdge() const;
+    void SetFlightLineEdge(uint16_t const& edge);
 
     //Classification& GetClassification();
     Classification GetClassification() const;
     void SetClassification(Classification const& cls);
     void SetClassification(Classification::bitset_type const& flags);
-    void SetClassification(boost::uint8_t const& flags);
+    void SetClassification(uint8_t const& flags);
 
-    boost::int8_t GetScanAngleRank() const;
-    void SetScanAngleRank(boost::int8_t const& rank);
+    int8_t GetScanAngleRank() const;
+    void SetScanAngleRank(int8_t const& rank);
 
     /// Fetch value of File Marker (LAS 1.0) or User Data (LAS 1.1).
-    boost::uint8_t GetUserData() const;
+    uint8_t GetUserData() const;
 
     /// Set value of File Marker (LAS 1.0) or User Data (LAS 1.1).
-    void SetUserData(boost::uint8_t const& data);
+    void SetUserData(uint8_t const& data);
 
     /// Fetch value of User Bit Field (LAS 1.0) or Point Source ID (LAS 1.1).
-    boost::uint16_t GetPointSourceID() const;
+    uint16_t GetPointSourceID() const;
 
     /// Set value of User Bit Field (LAS 1.0) or Point Source ID (LAS 1.1).
-    void SetPointSourceID(boost::uint16_t const& id);
+    void SetPointSourceID(uint16_t const& id);
 
     /// Fetch color value associated with this point (LAS 1.2)
     Color GetColor() const;
@@ -198,9 +197,9 @@ public:
     bool IsValid() const;
 
 
-    std::vector<boost::uint8_t> const& GetData() const {return m_data; }
-    std::vector<boost::uint8_t> & GetData() {return m_data; }
-    void SetData(std::vector<boost::uint8_t> const& v) { m_data = v;}
+    std::vector<uint8_t> const& GetData() const {return m_data; }
+    std::vector<uint8_t> & GetData() {return m_data; }
+    void SetData(std::vector<uint8_t> const& v) { m_data = v;}
     
     void SetHeader(Header const* header); 
     Header const* GetHeader() const;
@@ -209,9 +208,9 @@ public:
 
 private:
 
-    std::vector<boost::uint8_t> m_data;
+    std::vector<uint8_t> m_data;
     
-    std::vector<boost::uint8_t>::size_type GetDimensionBytePosition(std::size_t dim_pos) const;
+    std::vector<uint8_t>::size_type GetDimensionBytePosition(std::size_t dim_pos) const;
     Header const* m_header;
     Header const& m_default_header;
 
diff --git a/include/liblas/reader.hpp b/include/liblas/reader.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/schema.hpp b/include/liblas/schema.hpp
old mode 100644
new mode 100755
index cc34dfb..d32a324
--- a/include/liblas/schema.hpp
+++ b/include/liblas/schema.hpp
@@ -49,7 +49,6 @@
 #include <liblas/export.hpp>
 
 // boost
-#include <boost/cstdint.hpp>
 #include <boost/any.hpp>
 #include <boost/shared_ptr.hpp>
 #include <boost/foreach.hpp>
@@ -141,8 +140,8 @@ public:
     IndexMap const& GetDimensions() const { return m_index; }
     liblas::property_tree::ptree GetPTree() const;
     
-    boost::uint16_t GetSchemaVersion() const { return m_schemaversion; }
-    void SetSchemaVersion(boost::uint16_t v) { m_schemaversion = v; }
+    uint16_t GetSchemaVersion() const { return m_schemaversion; }
+    void SetSchemaVersion(uint16_t v) { m_schemaversion = v; }
     
     bool IsCustom() const;
     VariableRecord GetVLR() const;
@@ -150,10 +149,10 @@ public:
 protected:
     
     PointFormatName m_data_format_id;
-    boost::uint32_t m_nextpos;
+    uint32_t m_nextpos;
     std::size_t m_bit_size;
     std::size_t m_base_bit_size;
-    boost::uint16_t m_schemaversion;
+    uint16_t m_schemaversion;
     
 private:
 
diff --git a/include/liblas/spatialreference.hpp b/include/liblas/spatialreference.hpp
old mode 100644
new mode 100755
index 52b9696..3a31865
--- a/include/liblas/spatialreference.hpp
+++ b/include/liblas/spatialreference.hpp
@@ -134,10 +134,10 @@ public:
     /// range 5100 to 5299 - implied by verticalCSType if that is provided, or 
     /// -1 if no value is available.
     /// \param verticalUnits - the EPSG vertical units code, often 9001 for Metre.
-    void SetVerticalCS(boost::int32_t verticalCSType, 
+    void SetVerticalCS(int32_t verticalCSType, 
                        std::string const& citation = std::string(0),
-                       boost::int32_t verticalDatum = -1,
-                       boost::int32_t verticalUnits = 9001);
+                       int32_t verticalDatum = -1,
+                       int32_t verticalUnits = 9001);
 
     /// Sets the SRS using GDAL's SetFromUserInput function. If GDAL is not linked, this 
     /// operation has no effect.
diff --git a/include/liblas/transform.hpp b/include/liblas/transform.hpp
old mode 100644
new mode 100755
index 949c4cc..f19f1cb
--- a/include/liblas/transform.hpp
+++ b/include/liblas/transform.hpp
@@ -146,13 +146,13 @@ class LAS_DLL ColorFetchingTransform: public TransformI
 public:
     
     ColorFetchingTransform( std::string const& datasource, 
-                            std::vector<boost::uint32_t> bands
+                            std::vector<uint32_t> bands
                             );
     ColorFetchingTransform( std::string const& datasource, 
-                            std::vector<boost::uint32_t> bands,
+                            std::vector<uint32_t> bands,
                             Header const* header);
     
-    void SetScaleFactor(boost::uint32_t v) {m_scale = v; }
+    void SetScaleFactor(uint32_t v) {m_scale = v; }
     ~ColorFetchingTransform();
 
     bool transform(Point& point);
@@ -167,7 +167,7 @@ private:
     
     DataSourcePtr m_ds;
     std::string m_datasource;
-    std::vector<boost::uint32_t> m_bands;
+    std::vector<uint32_t> m_bands;
     boost::array<double, 6> m_forward_transform;
     boost::array<double, 6> m_inverse_transform;
     boost::uint32_t m_scale;
diff --git a/include/liblas/utility.hpp b/include/liblas/utility.hpp
old mode 100644
new mode 100755
index 1aad584..9721631
--- a/include/liblas/utility.hpp
+++ b/include/liblas/utility.hpp
@@ -49,15 +49,15 @@
 #include <liblas/export.hpp>
 #include <liblas/filter.hpp>
 // boost
-#include <boost/cstdint.hpp>
 #include <boost/foreach.hpp>
 // std
 #include <vector>
 #include <functional>
 #include <string>
+#include <memory>
 
 using liblas::property_tree::ptree;
-typedef boost::array<boost::uint32_t, 32> classes_type;
+typedef boost::array<uint32_t, 32> classes_type;
 
 namespace liblas {
 
@@ -79,15 +79,15 @@ public:
 private:
 
     classes_type classes;
-    boost::uint32_t synthetic;
-    boost::uint32_t withheld;
-    boost::uint32_t keypoint;
-    boost::uint32_t count;
-    boost::array<boost::uint32_t, 8> points_by_return; 
-    boost::array<boost::uint32_t, 8> returns_of_given_pulse;
+    uint32_t synthetic;
+    uint32_t withheld;
+    uint32_t keypoint;
+    uint32_t count;
+    boost::array<uint32_t, 8> points_by_return; 
+    boost::array<uint32_t, 8> returns_of_given_pulse;
     bool first;
-    liblas::Point minimum;
-    liblas::Point maximum;
+    boost::shared_ptr<liblas::Point> minimum;
+    boost::shared_ptr<liblas::Point> maximum;
     liblas::Header m_header;
     bool bHaveHeader; 
     bool bHaveColor;
@@ -111,12 +111,12 @@ public:
     
 private:
 
-    boost::uint32_t count;
-    boost::array<boost::uint32_t, 8> points_by_return; 
-    boost::array<boost::uint32_t, 8> returns_of_given_pulse;
+    uint32_t count;
+    boost::array<uint32_t, 8> points_by_return; 
+    boost::array<uint32_t, 8> returns_of_given_pulse;
     bool first;
-    liblas::Point minimum;
-    liblas::Point maximum;
+    boost::shared_ptr<liblas::Point> minimum;
+    boost::shared_ptr<liblas::Point> maximum;
     liblas::Header m_header;
     bool bHaveHeader; 
     bool bHaveColor;
@@ -125,7 +125,7 @@ private:
 
 LAS_DLL std::ostream& operator<<(std::ostream& os, liblas::Summary const& s);
 
-LAS_DLL boost::uint32_t GetStreamPrecision(double scale);
+LAS_DLL uint32_t GetStreamPrecision(double scale);
 
 } // namespace liblas
 
diff --git a/include/liblas/variablerecord.hpp b/include/liblas/variablerecord.hpp
old mode 100644
new mode 100755
index a71c046..2c77503
--- a/include/liblas/variablerecord.hpp
+++ b/include/liblas/variablerecord.hpp
@@ -48,7 +48,6 @@
 #include <liblas/export.hpp>
 // boost
 #include <boost/array.hpp>
-#include <boost/cstdint.hpp>
 // std
 #include <string>
 #include <vector>
@@ -81,9 +80,9 @@ public:
 
     /// Get record signature (LAS 1.0) or reserved bytes (LAS 1.1).
     /// \exception No throw
-    boost::uint16_t GetReserved() const;
+    uint16_t GetReserved() const;
     
-    void SetReserved(boost::uint16_t data);
+    void SetReserved(uint16_t data);
 
     /// Get identifier of user which created the record.
     /// The character data is up to 16 bytes long.
@@ -95,15 +94,15 @@ public:
     /// Get identifier of record.
     /// The record ID is closely related to the user ID.
     /// \exception No throw
-    boost::uint16_t GetRecordId() const;
+    uint16_t GetRecordId() const;
     
-    void SetRecordId(boost::uint16_t id);
+    void SetRecordId(uint16_t id);
 
     /// Get record length after the header.
     /// \exception No throw
-    boost::uint16_t GetRecordLength() const;
+    uint16_t GetRecordLength() const;
     
-    void SetRecordLength(boost::uint16_t length);
+    void SetRecordLength(uint16_t length);
 
     /// Get text description of data in the record.
     /// The character data is up to 32 bytes long.
@@ -113,9 +112,9 @@ public:
     void SetDescription(std::string const& text);
 
     /// Get the data for this VLR
-    std::vector<boost::uint8_t> const& GetData() const;
+    std::vector<uint8_t> const& GetData() const;
     
-    void SetData(std::vector<boost::uint8_t> const& data);
+    void SetData(std::vector<uint8_t> const& data);
 
     /// Compare actual header object against the other.
     /// \exception No throw
@@ -134,12 +133,12 @@ public:
 
 private:
 
-    std::vector<boost::uint8_t> m_data;
+    std::vector<uint8_t> m_data;
     boost::array<char, 32> m_description;
     boost::array<char, 16> m_user_id;    
-    boost::uint16_t m_reserved;
-    boost::uint16_t m_record_id;
-    boost::uint16_t m_record_size; // length after header
+    uint16_t m_reserved;
+    uint16_t m_record_id;
+    uint16_t m_record_size; // length after header
 };
 
 /// Equality operator.
diff --git a/include/liblas/version.hpp b/include/liblas/version.hpp
old mode 100644
new mode 100755
diff --git a/include/liblas/writer.hpp b/include/liblas/writer.hpp
old mode 100644
new mode 100755
diff --git a/python/examples/add_vlr.py b/python/examples/add_vlr.py
old mode 100644
new mode 100755
diff --git a/python/examples/grab_classes.py b/python/examples/grab_classes.py
old mode 100644
new mode 100755
diff --git a/python/examples/oci_pc.py b/python/examples/oci_pc.py
old mode 100644
new mode 100755
diff --git a/python/liblas/__init__.py b/python/liblas/__init__.py
old mode 100644
new mode 100755
index 97b8e7a..509c8ad
--- a/python/liblas/__init__.py
+++ b/python/liblas/__init__.py
@@ -1,6 +1,6 @@
 #from .core import *
-from core import get_version
-from core import las
+from .core import get_version
+from .core import las
 version = get_version()
 HAVE_GDAL = bool(las.LAS_IsGDALEnabled())
 HAVE_LIBGEOTIFF = bool(las.LAS_IsLibGeoTIFFEnabled())
@@ -9,9 +9,9 @@ import sys
 
 version = sys.version_info[:3]
 
-import file
-import point
-import header
-import vlr
-import color
-import srs
+from . import file
+from . import point
+from . import header
+from . import vlr
+from . import color
+from . import srs
diff --git a/python/liblas/color.py b/python/liblas/color.py
old mode 100644
new mode 100755
index 25f6991..756b943
--- a/python/liblas/color.py
+++ b/python/liblas/color.py
@@ -40,7 +40,7 @@
  * OF SUCH DAMAGE.
  ****************************************************************************/
  """
-import core
+from . import core
 import ctypes
 
 
diff --git a/python/liblas/core.py b/python/liblas/core.py
old mode 100644
new mode 100755
index 29c916f..a7c08da
--- a/python/liblas/core.py
+++ b/python/liblas/core.py
@@ -330,10 +330,10 @@ las.LASPoint_SetUserData.restype = ctypes.c_int
 las.LASPoint_SetUserData.argtypes = [ctypes.c_void_p, ctypes.c_ubyte]
 las.LASPoint_SetUserData.errcheck = check_return
 
-las.LASPoint_SetPointSourceId.restype = ctypes.c_short
+las.LASPoint_SetPointSourceId.restype = ctypes.c_uint16
 las.LASPoint_SetPointSourceId.argtypes = [ctypes.c_void_p]
 las.LASPoint_SetPointSourceId.errcheck = check_value
-las.LASPoint_GetPointSourceId.restype = ctypes.c_short
+las.LASPoint_GetPointSourceId.restype = ctypes.c_uint16
 las.LASPoint_GetPointSourceId.argtypes = [ctypes.c_void_p]
 las.LASPoint_GetPointSourceId.errcheck = check_value
 
diff --git a/python/liblas/file.py b/python/liblas/file.py
old mode 100644
new mode 100755
index 2a10126..f160ecf
--- a/python/liblas/file.py
+++ b/python/liblas/file.py
@@ -41,9 +41,9 @@
  ****************************************************************************/
  """
 
-import core
-import header as lasheader
-import point
+from . import core
+from . import header as lasheader
+from . import point
 
 import os
 import types
@@ -93,16 +93,19 @@ class File(object):
         ...     f2.write(p)
         >>> f2.close()
         """
-        self.filename = os.path.abspath(filename)
+        if sys.version_info.major == 3:
+            self.filename = bytes(os.path.abspath(filename), "ascii")
+        else:
+            self.filename = filename
         self._header = None
         self.ownheader = True
 
         # import pdb;pdb.set_trace()
         if header != None:
-            
+
             self.ownheader = False
             self._header = header.handle
-        
+
         self.handle = None
         self._mode = mode.lower()
         self.in_srs = in_srs
@@ -119,7 +122,7 @@ class File(object):
         else:
             # we're in some kind of write mode, and if we already have the
             # file open, complain to the user.
-            for f in files['read'].keys() + files['append'] + files['write']:
+            for f in list(files['read'].keys()) + files['append'] + files['write']:
                 if f == self.filename:
                     raise core.LASException("File %s is already open. "
                                             "Close the file or delete the "
diff --git a/python/liblas/guid.py b/python/liblas/guid.py
old mode 100644
new mode 100755
index e4bba1e..3b2b988
--- a/python/liblas/guid.py
+++ b/python/liblas/guid.py
@@ -41,7 +41,7 @@
  ****************************************************************************/
  """
 
-import core
+from . import core
 
 
 class GUID(object):
@@ -89,7 +89,7 @@ class GUID(object):
 
     def __str__(self):
         """String representation of the GUID"""
-        return core.las.LASGuid_AsString(self.handle)
+        return core.las.LASGuid_AsString(self.handle).decode()
 
     def __eq__(self, other):
         """Test GUID for equality against another :obj:`liblas.guid.GUID`
diff --git a/python/liblas/header.py b/python/liblas/header.py
old mode 100644
new mode 100755
index 0134b00..b26bc7f
--- a/python/liblas/header.py
+++ b/python/liblas/header.py
@@ -42,12 +42,12 @@
  ****************************************************************************/
  """
 
-import core
+from . import core
 import datetime
-import guid
-import vlr
-import srs
-import schema
+from . import guid
+from . import vlr
+from . import srs
+from . import schema
 
 
 def leap_year(year):
@@ -237,12 +237,12 @@ class Header(object):
 
     def get_systemid(self):
         """Returns the system identifier specified in the file"""
-        return core.las.LASHeader_GetSystemId(self.handle)
+        return str(core.las.LASHeader_GetSystemId(self.handle).decode())
 
     def set_systemid(self, value):
         """Sets the system identifier. The value is truncated to 31
         characters"""
-        return core.las.LASHeader_SetSystemId(self.handle, value[0:31])
+        return core.las.LASHeader_SetSystemId(self.handle, value[0:31].encode())
     doc = """The system identifier. The value is truncated to 31 characters and
             defaults to 'libLAS'
 
@@ -275,12 +275,12 @@ class Header(object):
 
     def get_softwareid(self):
         """Returns the software identifier specified in the file"""
-        return core.las.LASHeader_GetSoftwareId(self.handle)
+        return str(core.las.LASHeader_GetSoftwareId(self.handle).decode())
 
     def set_softwareid(self, value):
         """Sets the software identifier.
         """
-        return core.las.LASHeader_SetSoftwareId(self.handle, value[0:31])
+        return core.las.LASHeader_SetSoftwareId(self.handle, value[0:31].encode())
     doc = """The software identifier. The value is truncated to 31 characters
     and defaults to 'libLAS 1.LASVERSION' (ie, libLAS 1.6 for the 1.6
     release)
@@ -389,7 +389,7 @@ class Header(object):
     data_offset = property(get_dataoffset, set_dataoffset, None, doc)
 
     def get_padding(self):
-        """Returns number of bytes between the end of the VLRs and the 
+        """Returns number of bytes between the end of the VLRs and the
            beginning of the point data."""
         return core.las.LASHeader_GetHeaderPadding(self.handle)
 
@@ -398,7 +398,7 @@ class Header(object):
 
         """
         return core.las.LASHeader_SetHeaderPadding(self.handle, value)
-    doc = """The number of bytes between the end of the VLRs and the 
+    doc = """The number of bytes between the end of the VLRs and the
     beginning of the point data.
     """
     padding = property(get_padding, set_padding, None, doc)
@@ -794,5 +794,5 @@ class Header(object):
 
     def get_xml(self):
         return core.las.LASHeader_GetXML(self.handle)
-        
-    xml = property(get_xml, None, None, None)
\ No newline at end of file
+
+    xml = property(get_xml, None, None, None)
diff --git a/python/liblas/point.py b/python/liblas/point.py
old mode 100644
new mode 100755
index d8ab438..268cf2e
--- a/python/liblas/point.py
+++ b/python/liblas/point.py
@@ -41,14 +41,14 @@
  ****************************************************************************/
  """
 
-import core
+from . import core
 import datetime
 import time
 import math
-import color
+from . import color
 import ctypes
 
-import header
+from . import header
 
 class Point(object):
     def __init__(self, owned=True, handle=None, copy=False):
@@ -94,10 +94,10 @@ class Point(object):
 
     def set_x(self, value):
         """Sets the X coordinate of the LAS point to a floating point
-        value. 
-        
-        ..note:: 
-            The point will be descaled according to the :obj:`liblas.point.Point.header`'s  
+        value.
+
+        ..note::
+            The point will be descaled according to the :obj:`liblas.point.Point.header`'s
             scale value for the X dimension.
         """
 
@@ -114,10 +114,10 @@ class Point(object):
 
     def set_raw_x(self, value):
         """Sets the X coordinate of the LAS point to an integer value
-        value. 
-        
-        ..note:: 
-            The point will be scaled according to the obj:`liblas.point.Point.header`'s 
+        value.
+
+        ..note::
+            The point will be scaled according to the obj:`liblas.point.Point.header`'s
             scale value for the X dimension when returned as a double obj:`liblas.point.Point.x`.
         """
         return core.las.LASPoint_SetRawX(self.handle, value)
@@ -137,10 +137,10 @@ class Point(object):
 
     def set_y(self, value):
         """Sets the Y coordinate of the LAS point to a floating point
-        value. 
-        
-        ..note:: 
-            The point will be descaled according to the :obj:`liblas.point.Point.header`'s 
+        value.
+
+        ..note::
+            The point will be descaled according to the :obj:`liblas.point.Point.header`'s
             scale value for the Y dimension.
         """
         return core.las.LASPoint_SetY(self.handle, value)
@@ -158,10 +158,10 @@ class Point(object):
 
     def set_raw_y(self, value):
         """Sets the Y coordinate of the LAS point to an integer value
-        value. 
-        
-        ..note:: 
-            The point will be scaled according to the obj:`liblas.point.Point.header`'s 
+        value.
+
+        ..note::
+            The point will be scaled according to the obj:`liblas.point.Point.header`'s
             scale value for the Y dimension when returned as a double obj:`liblas.point.Point.y`.
         """
         return core.las.LASPoint_SetRawY(self.handle, value)
@@ -179,10 +179,10 @@ class Point(object):
 
     def set_z(self, value):
         """Sets the Z coordinate of the LAS point to a floating point
-        value. 
-        
-        ..note:: 
-            The point will be descaled according to the obj:`liblas.point.Point.header`'s 
+        value.
+
+        ..note::
+            The point will be descaled according to the obj:`liblas.point.Point.header`'s
             scale value for the Z dimension.
         """
         return core.las.LASPoint_SetZ(self.handle, value)
@@ -199,10 +199,10 @@ class Point(object):
 
     def set_raw_z(self, value):
         """Sets the Z coordinate of the LAS point to an integer value
-        value. 
-        
-        ..note:: 
-            The point will be scaled according to the obj:`liblas.point.Point.header`'s 
+        value.
+
+        ..note::
+            The point will be scaled according to the obj:`liblas.point.Point.header`'s
             scale value for the Z dimension when returned as a double obj:`liblas.point.Point.y`.
         """
         return core.las.LASPoint_SetRawZ(self.handle, value)
@@ -214,7 +214,7 @@ class Point(object):
         Use obj:`liblas.point.Point.z` if you want the scaled ``z`` data.
     """
     raw_z = property(get_raw_z, set_raw_z, None, doc)
-    
+
     def get_return_number(self):
         """Returns the return number of the point"""
         return core.las.LASPoint_GetReturnNumber(self.handle)
@@ -432,7 +432,7 @@ class Point(object):
         return core.las.LASPoint_GetPointSourceId(self.handle)
 
     def set_point_source_id(self, value):
-        core.las.LASPoint_SetUserData(self.handle, value)
+        core.las.LASPoint_SetPointSourceId(self.handle, value)
     doc = """Point Source ID for the point.
 
     From the specification_:
@@ -447,7 +447,7 @@ class Point(object):
         Source ID of the file containing this point at some time during
         processing.
         """
-    point_source_id = property(get_user_data, set_user_data, None, doc)
+    point_source_id = property(get_point_source_id, set_point_source_id, None, doc)
 
     def get_intensity(self):
         return core.las.LASPoint_GetIntensity(self.handle)
@@ -544,15 +544,15 @@ class Point(object):
 
     def get_header(self):
         return header.Header(handle=core.las.LASPoint_GetHeader(self.handle))
-    
+
     def set_header(self, value):
         return core.las.LASPoint_SetHeader(self.handle, value.handle)
     header = property(get_header, set_header, None, None)
 
 
     def get_xml(self):
-        return core.las.LASPoint_GetXML(self.handle)
-        
+        return str(core.las.LASPoint_GetXML(self.handle).decode())
+
     xml = property(get_xml, None, None, None)
 
 
@@ -562,12 +562,12 @@ class Point(object):
         d2 = ctypes.cast(d, ctypes.POINTER(ctypes.c_ubyte))
         core.las.LASPoint_GetData(self.handle, d2)
         return d
-    
+
     def set_data(self, data):
         d = ctypes.cast(data, ctypes.POINTER(ctypes.c_ubyte))
-    
+
         core.las.LASPoint_SetData(self.handle, d, len(data))
-    
+
     doc = """Raw data for the point. Shoot yourself in the foot if you must!
     """
     data = property(get_data, set_data, None, doc)
diff --git a/python/liblas/schema.py b/python/liblas/schema.py
old mode 100644
new mode 100755
index cdce346..48e8f77
--- a/python/liblas/schema.py
+++ b/python/liblas/schema.py
@@ -41,7 +41,7 @@
  ****************************************************************************/
  """
 
-import core
+from . import core
 
 
 class Schema(object):
diff --git a/python/liblas/srs.py b/python/liblas/srs.py
old mode 100644
new mode 100755
index 3606309..22c5f4c
--- a/python/liblas/srs.py
+++ b/python/liblas/srs.py
@@ -41,9 +41,9 @@
  ****************************************************************************/
  """
 
-import core
+from . import core
 import ctypes
-import vlr
+from . import vlr
 
 
 class SRS(object):
@@ -115,7 +115,7 @@ class SRS(object):
 
     def get_proj4(self):
         """Returns a Proj.4_ string that describes the SRS"""
-        return core.las.LASSRS_GetProj4(self.handle)
+        return str(core.las.LASSRS_GetProj4(self.handle).decode())
 
     def set_proj4(self, value):
         """Sets the SRS description with a given Proj.4_ string"""
diff --git a/python/liblas/vlr.py b/python/liblas/vlr.py
old mode 100644
new mode 100755
index 09d0b82..6a46ebc
--- a/python/liblas/vlr.py
+++ b/python/liblas/vlr.py
@@ -41,7 +41,7 @@
  ****************************************************************************/
  """
 
-import core
+from . import core
 import ctypes
 
 
diff --git a/python/scripts/las2tindex.py b/python/scripts/las2tindex.py
new file mode 100755
index 0000000..6ff47bd
--- /dev/null
+++ b/python/scripts/las2tindex.py
@@ -0,0 +1,175 @@
+#!/usr/bin/env python
+##############################################################################
+#                                                                             #
+# las2tindex.py                                                               #
+#                                                                             #
+# begin : 2012-03-14                                                          #
+# authors: Luca Delucchi                                                      #
+# copyright : (C) 2012 by luca delucchi, Fondazione Edmund Mach               #
+# email : lucadelucchi at fmach dot it                                        #
+#                                                                             #
+# All rights reserved.                                                        #
+#                                                                             #
+# Permission is hereby granted, free of charge, to any person obtaining a     #
+# copy of this software and associated documentation files (the "Software"),  #
+# to deal in the Software without restriction, including without limitation   #
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,    #
+# and/or sell copies of the Software, and to permit persons to whom the       #
+# Software is furnished to do so, subject to the following conditions:        #
+#                                                                             #
+# The above copyright notice and this permission notice shall be included     #
+# in all copies or substantial portions of the Software.                      #
+#                                                                             #
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR  #
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,    #
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL     #
+# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER  #
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING     #
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER         #
+##############################################################################
+
+import sys, os
+import optparse
+import subprocess
+import re
+
+try:
+    import osgeo.ogr as ogr
+    import osgeo.osr as osr
+except ImportError:
+    try:
+        import osgeo.ogr as ogr
+        import osgeo.osr as osr
+    except ImportError:
+        print "GDAL Python is missing"
+        sys.exit( 1 )
+        
+try:
+    import liblas
+    llas = True
+except:
+    print "libLas python is missing, using script"
+    llas = False
+
+#classes for required options
+strREQUIRED = 'required'
+
+class OptionWithDefault(optparse.Option):
+    ATTRS = optparse.Option.ATTRS + [strREQUIRED]
+    
+    def __init__(self, *opts, **attrs):
+        if attrs.get(strREQUIRED, False):
+            attrs['help'] = '(Required) ' + attrs.get('help', "")
+        optparse.Option.__init__(self, *opts, **attrs)
+
+class OptionParser(optparse.OptionParser):
+    def __init__(self, **kwargs):
+        kwargs['option_class'] = OptionWithDefault
+        optparse.OptionParser.__init__(self, **kwargs)
+    
+    def check_values(self, values, args):
+        for option in self.option_list:
+            if hasattr(option, strREQUIRED) and option.required:
+                if not getattr(values, option.dest):
+                    self.error("option %s is required" % (str(option)))
+        return optparse.OptionParser.check_values(self, values, args)
+
+def main():
+    """Main function"""
+    #usage
+    usage = "usage: %prog [options] las_files"
+    parser = OptionParser(usage=usage)
+    #output filename
+    parser.add_option("-o", "--output", dest="name", required=True,
+                      help="output file")        
+    #ogr format
+    parser.add_option("-f", "--format", dest="ogr", default='ESRI Shapefile',
+                      metavar="OGR", help="OGR format for output file" \
+                      + " [default=%default]")
+    #epsg code
+    parser.add_option("-e", "--epsg", dest="epsg", default=4326,
+                      metavar="EPSG", help="EPSG code of input and output file" \
+                      + " [default=%default]")
+                      
+    #return options and argument
+    (options, args) = parser.parse_args()
+    #test if args[0] it is set
+    if len(args) == 0:
+        parser.error("You have to pass the las files to create the tile index")
+    
+    #create the SpatialReference from epsg code
+    outSpatial = osr.SpatialReference()
+    outSpatial.ImportFromEPSG(int(options.epsg))
+    #create the output driver
+    outDriver = ogr.GetDriverByName(options.ogr)
+    if outDriver is None:
+        print "%s driver not available.\n" % options.ogr
+        sys.exit( 1 )
+    outputDSN = options.name
+    #search if the file already exist
+    if os.path.exists(outputDSN):
+        outDriver.DeleteDataSource(outputDSN)
+    #create output datasource
+    outDatasource = outDriver.CreateDataSource(outputDSN)
+    if outDatasource is None:
+        print "Creation of output file failed.\n"
+        sys.exit( 1 )    
+    #create output layer
+    outLayer = outDatasource.CreateLayer('las2tindex', srs=outSpatial, geom_type=ogr.wkbPolygon)
+    if outLayer is None:
+        print "Layer creation failed.\n"
+        sys.exit( 1 )    
+    #output field definition
+    outField = ogr.FieldDefn("location", ogr.OFTString)
+    outField.SetWidth( 32 )
+    if outLayer.CreateField ( outField ) != 0:
+        print "Creating 'location' field failed.\n"
+        sys.exit( 1 )
+    #for each file create the polygon of bounding box
+    for i in args:
+        # if python liblas it is present use it
+        if llas:
+            lasfile = liblas.file.File(i,mode='r')
+            header = lasfile.header
+            minimum = header.get_min()
+            maximum = header.get_max()
+        # else use lasinfo command
+        elif not llas:
+            command = "lasinfo %s" % i
+            lasout = subprocess.Popen(command, shell=True,stdout=subprocess.PIPE).stdout
+            bbox = []
+            # for each line of output check min and max values
+            for line in lasout.readlines():
+                if re.search(r'Min X Y Z:', line) is not None or \
+                re.search(r'Max X Y Z:', line) is not None:
+                    values=line.split(':')[1].lstrip().split()
+                    del values[0]
+                    bbox.append(values)
+                if len(bbox) == 2:
+                    break
+            minimum = bbox[0]
+            maximum = bbox[1]
+        #create the points of polygon
+        ld = "%s %s" % (minimum[0],minimum[1])
+        lu = "%s %s" % (minimum[0],maximum[1])
+        ru = "%s %s" % (maximum[0],maximum[1])
+        rd = "%s %s" % (maximum[0],minimum[1])
+        # create the feature
+        feat = ogr.Feature( outLayer.GetLayerDefn())
+        feat.SetField( "location", i )
+        wkt = 'POLYGON((%s,%s,%s,%s,%s))' % (ld, lu, ru, rd, ld)
+        poly = ogr.CreateGeometryFromWkt(wkt, outSpatial)
+        feat.SetGeometry(poly)
+        #load the feature into vector layer
+        if outLayer.CreateFeature(feat) != 0:
+            print "Failed to create feature in vector file.\n"
+            sys.exit( 1 )
+        feat.Destroy()        
+
+    outDatasource = None
+    print "%s created" % outputDSN
+    
+#add options
+if __name__ == "__main__":
+    main()
+
diff --git a/python/setup.py b/python/setup.py
old mode 100644
new mode 100755
index f056ef2..5c5dd1e
--- a/python/setup.py
+++ b/python/setup.py
@@ -18,7 +18,7 @@ install_requires = ['setuptools']
 
 import os
 
-version = '1.7.0'
+version = '1.8.0'
 
 import socket
 
diff --git a/python/tests/Color.txt b/python/tests/Color.txt
old mode 100644
new mode 100755
index 1bd695f..1fbacb0
--- a/python/tests/Color.txt
+++ b/python/tests/Color.txt
@@ -6,7 +6,7 @@
   0
   >>> c.blue
   0
-  
+
   >>> c = color.Color(red = 123, blue = 125, green = 124)
   >>> c.red
   123
@@ -17,10 +17,10 @@
 
 
   >>> for i in c:
-  ...     print i
+  ...     print(i)
   123
   124
   125
-  
+
   >>> list(c)
-  [123, 124, 125]
\ No newline at end of file
+  [123, 124, 125]
diff --git a/python/tests/File.txt b/python/tests/File.txt
old mode 100644
new mode 100755
index 94acd82..7d440b4
--- a/python/tests/File.txt
+++ b/python/tests/File.txt
@@ -3,26 +3,26 @@
   Traceback (most recent call last):
   ...
   OSError: missing file
-  
+
   >>> f = file.File('../test/data/TO_core_last_clip.las')
-  
+
   >>> f.header # doctest: +ELLIPSIS
   <liblas.header.Header object at ...>
-  
-  >>> f.header.point_records_count
-  8L
-  
+
+  >>> int(f.header.point_records_count)
+  8
+
   >>> h = f.header
-  >>> h.data_offset
-  229L
+  >>> int(h.data_offset)
+  229
   >>> p = f.read(0)
-  >>> p.x, p.y, p.z
-  (630262.30000000005, 4834500.0, 51.530000000000001)
-  
+  >>> "{:.2f}, {:.2f}, {:.2f}".format(p.x, p.y, p.z)
+  '630262.30, 4834500.00, 51.53'
+
   >>> p = f.read(6)
-  >>> p.x, p.y, p.z
-  (630320.95999999996, 4834500.0, 55.009999999999998)
-  
+  >>> "{:.2f}, {:.2f}, {:.2f}".format(p.x, p.y, p.z)
+  '630320.96, 4834500.00, 55.01'
+
   >>> f.seek(5)
   True
 
@@ -30,9 +30,9 @@
   ...   p = i
   ...   break
 
-  >>> p.x, p.y, p.z
-  (630323.57000000007, 4834500.0, 55.020000000000003)
-  
+  >>> "{:.2f}, {:.2f}, {:.2f}".format(p.x, p.y, p.z)
+  '630323.57, 4834500.00, 55.02'
+
   >>> f.seek(4)
   True
 
@@ -40,8 +40,8 @@
   ...   p = i
   ...   break
 
-  >>> p.x, p.y, p.z
-  (630327.58999999997, 4834500.0, 54.730000000000004)
+  >>> "{:.2f}, {:.2f}, {:.2f}".format(p.x, p.y, p.z)
+  '630327.59, 4834500.00, 54.73'
 
   >>> f.seek(1)
   True
@@ -50,9 +50,9 @@
   ...   p = i
   ...   break
 
-  >>> p.x, p.y, p.z
-  (630282.45000000007, 4834500.0, 51.630000000000003)
-  
+  >>> "{:.2f}, {:.2f}, {:.2f}".format(p.x, p.y, p.z)
+  '630282.45, 4834500.00, 51.63'
+
   >>> f.close()
   >>> f.open()
 
@@ -60,11 +60,11 @@
 Test Reading different locations and proper internal overwriting of the file
 
   >>> f2 = file.File('../test/data/TO_core_last_clip.las')
-  >>> f2.header.data_offset
-  229L  
+  >>> int(f2.header.data_offset)
+  229
   >>> p2 = f2.read(6)
-  >>> p2.x, p2.y, p2.z
-  (630320.95999999996, 4834500.0, 55.009999999999998)
+  >>> "{:.2f}, {:.2f}, {:.2f}".format(p2.x, p2.y, p2.z)
+  '630320.96, 4834500.00, 55.01'
 
   >>> p2 == f2.read(3)
   False
@@ -74,11 +74,11 @@ Test Reading different locations and proper internal overwriting of the file
 
   >>> f2.close()
   >>> del f2
-  
+
   >>> points = []
   >>> for i in f:
   ...   points.append(i)
-  ...   print i # doctest: +ELLIPSIS
+  ...   print(i) # doctest: +ELLIPSIS
   <liblas.point.Point object at ...>
   <liblas.point.Point object at ...>
   <liblas.point.Point object at ...>
@@ -101,22 +101,22 @@ Test Reading different locations and proper internal overwriting of the file
   8
 
   >>> for p in points:
-  ...   print p.x, p.y
-  630262.3 4834500.0
-  630282.45 4834500.0
-  630300.08 4834500.0
-  630346.83 4834500.0
-  630327.59 4834500.0
-  630323.57 4834500.0
-  630320.96 4834500.0
-  630280.89 4834500.0
+  ...   "{:.2f} {:.2f}".format(p.x, p.y)
+  '630262.30 4834500.00'
+  '630282.45 4834500.00'
+  '630300.08 4834500.00'
+  '630346.83 4834500.00'
+  '630327.59 4834500.00'
+  '630323.57 4834500.00'
+  '630320.96 4834500.00'
+  '630280.89 4834500.00'
 
   >>> points = []
   >>> f.seek(0)
-  True  
+  True
   >>> for i in f:
   ...   points.append(i)
-  ...   print i # doctest: +ELLIPSIS
+  ...   print(i) # doctest: +ELLIPSIS
   <liblas.point.Point object at ...>
   <liblas.point.Point object at ...>
   <liblas.point.Point object at ...>
@@ -128,89 +128,84 @@ Test Reading different locations and proper internal overwriting of the file
 
 
   >>> len(points)
-  8  
+  8
 
   >>> del f
-  
+
   >>> f = file.File('junk.las', mode="w", header=h)
-  >>> f.header.data_offset
-  229L    
+  >>> int(f.header.data_offset)
+  229
   >>> sum(h.offset)
   0.0
-  >>> h.min
-  [630262.30000000005, 4834500.0, 50.899999999999999]
+  >>> ["{:.2f}".format(x) for x in h.min]
+  ['630262.30', '4834500.00', '50.90']
 
   >>> for i in points:
   ...    f.write(i)
-  
-  >>> pts = file.File('junk.las')
-  Traceback (most recent call last):
-  ...
-  LASException: File junk.las is already open for write.  Close the file or delete the reference to it
-  
+
   >>> f.close()
   >>> f.header
 
   >>> del f
-  
-Go read the new header we've written.  It might be out of date because what 
+
+Go read the new header we've written.  It might be out of date because what
 was written in mode='w' might not equal what was passed in as the header= paramete
 
   >>> f2 = file.File('junk.las')
   >>> h = f2.header
-  >>> h.data_offset
-  229L    
+  >>> int(h.data_offset)
+  229
   >>> f2.close()
-  
+
   >>> f = file.File('junk.las', mode='w+', header=h)
-  
+
   >>> for i in points:
   ...    f.write(i)
-  
+
   >>> f.close()
-  
+
   >>> f = file.File('junk.las')
   >>> cnt = 0
   >>> for i in f:
   ...     cnt += 1
-  
+
   >>> cnt
   16
 
   >>> buffered_header = f.header
-  >>> del f 
+  >>> del f
 
   >>> buffered_header.padding = 1024 - buffered_header.data_offset
-  >>> buffered_header.padding
-  795L
+  >>> int(buffered_header.padding)
+  795
 
-  >>> buffered_header.data_offset
-  229L
+  >>> int(buffered_header.data_offset)
+  229
 
   >>> f3 = file.File('junk2.las',mode='w',header=buffered_header)
 
   >>> for i in points:
   ...    f3.write(i)
-    
+
   >>> f3.close()
 
   >>> del f3
 
   >>> f4 = file.File('junk2.las')
 
-  >>> f4.header.data_offset
-  1024L
+  >>> int(f4.header.data_offset)
+  1024
   >>> del f4
 
-  
+
   >>> f = file.File('junk2.las')
-  >>> f.header.data_offset
-  1024L
-  
+  >>> int(f.header.data_offset)
+  1024
+
   >>> points = []
   >>> for i in f:
   ...   points.append(i)
-  ...   print i # doctest: +ELLIPSIS
+  ...   print(i) # doctest: +ELLIPSIS
   <liblas.point.Point object at ...>
   <liblas.point.Point object at ...>
   <liblas.point.Point object at ...>
@@ -221,7 +216,7 @@ was written in mode='w' might not equal what was passed in as the header= parame
   <liblas.point.Point object at ...>
 
   >>> for g in points:
-  ...   print round(g.x, 6)
+  ...   print(round(g.x, 6))
   630262.3
   630282.45
   630300.08
@@ -238,24 +233,24 @@ the data_offset *doesn't* change at all
   >>> buffered_header.minor_version = 2
   >>> f3 = file.File('junk3.las',mode='w',header=buffered_header)
 
-  >>> f3.header.data_offset
-  1024L
+  >>> int(f3.header.data_offset)
+  1024
 
   >>> for i in points:
   ...    f3.write(i)
-    
+
   >>> f3.close()
 
   >>> del f3
 
   >>> f = file.File('junk3.las')
-  >>> f.header.data_offset
-  1024L
-  
+  >>> int(f.header.data_offset)
+  1024
+
   >>> points = []
   >>> for i in f:
   ...   points.append(i)
-  ...   print i # doctest: +ELLIPSIS
+  ...   print(i) # doctest: +ELLIPSIS
   <liblas.point.Point object at ...>
   <liblas.point.Point object at ...>
   <liblas.point.Point object at ...>
@@ -266,7 +261,7 @@ the data_offset *doesn't* change at all
   <liblas.point.Point object at ...>
 
   >>> for g in points:
-  ...   print round(g.x, 6)
+  ...   print(round(g.x, 6))
   630262.3
   630282.45
   630300.08
@@ -277,7 +272,7 @@ the data_offset *doesn't* change at all
   630280.89
 
 
-The header's offset will change +=2 if there isn't enough room in the 
+The header's offset will change +=2 if there isn't enough room in the
 header after you subtract the VLRs
 
   >>> from liblas import header
@@ -287,25 +282,25 @@ header after you subtract the VLRs
   >>> h2.scale = [0.01, 0.01, 0.01]
   >>> f4 = file.File('junk4.las',mode='w',header=h2)
 
-  >>> f4.header.data_offset
-  229L
+  >>> int(f4.header.data_offset)
+  229
 
   >>> for i in points:
   ...    f4.write(i)
-    
+
   >>> f4.close()
 
   >>> del f4
 
 
   >>> f = file.File('junk4.las')
-  >>> f.header.data_offset
-  229L
-  
+  >>> int(f.header.data_offset)
+  229
+
   >>> points = []
   >>> for i in f:
   ...   points.append(i)
-  ...   print i # doctest: +ELLIPSIS
+  ...   print(i) # doctest: +ELLIPSIS
   <liblas.point.Point object at ...>
   <liblas.point.Point object at ...>
   <liblas.point.Point object at ...>
@@ -316,7 +311,7 @@ header after you subtract the VLRs
   <liblas.point.Point object at ...>
 
   >>> for g in points:
-  ...   print round(g.x, 6)
+  ...   print(round(g.x, 6))
   630262.3
   630282.45
   630300.08
@@ -329,7 +324,7 @@ header after you subtract the VLRs
   >>> comp_header = header.Header()
   >>> comp_header.minor_version = 2
   >>> comp_header.compressed = True
-  >>> comp_header.scale = [0.01, 0.01, 0.01]  
+  >>> comp_header.scale = [0.01, 0.01, 0.01]
   >>> compressed = file.File('output.laz', mode='w', header=comp_header)
 
   >>> comp_header.compressed
@@ -337,7 +332,7 @@ header after you subtract the VLRs
 
   >>> for i in points:
   ...    compressed.write(i)
-  
+
   >>> compressed.close()
   >>> del compressed
 
@@ -347,7 +342,7 @@ header after you subtract the VLRs
   True
 
   >>> for i in read_compressed:
-  ...   print round(i.x, 6)
+  ...   print(round(i.x, 6))
   630262.3
   630282.45
   630300.08
@@ -357,18 +352,18 @@ header after you subtract the VLRs
   630320.96
   630280.89
 
-  
+
   >>> read_compressed.close()
-  >>> del read_compressed    
+  >>> del read_compressed
 
-# The following tests writing out point data that are larger in size than 
-# the base point format, allowing you to store extra data.  
-# 
+# The following tests writing out point data that are larger in size than
+# the base point format, allowing you to store extra data.
+#
 #   >>> f6 = file.File('../test/data/TO_core_last_clip.las')
 #   >>> p2 = f6.read(6)
 #   >>> p2.x, p2.y, p2.z
 #   (630320.95999999996, 4834500.0, 55.009999999999998)
-# 
+#
 #   >>> h6 = f6.header
 #   >>> f = h6.schema
 #   >>> f.time = True
@@ -377,20 +372,20 @@ header after you subtract the VLRs
 #   >>> h6.schema = f
 #   >>> h6.data_record_length
 #   52
-# 
-#   
+#
+#
 # f.size - f.base_size will be 16 bytes of space (h6.data_record_length - 34 bytes for point format 3)
-# 
+#
 # >>> import ctypes
-#  
-#   >>> d = (ctypes.c_ubyte * (f.size - f.base_size))() 
+#
+#   >>> d = (ctypes.c_ubyte * (f.size - f.base_size))()
 #   >>> d[10]
 #   0
 #   >>> d[0] = 13
-# 
-#   >>> d2 = (ctypes.c_ubyte * 6)() 
+#
+#   >>> d2 = (ctypes.c_ubyte * 6)()
 #   >>> d2[0] = 11
-#     
+#
 #   >>> f7 = file.File('junk5.las',mode='w', header=h6)
 #   >>> i = 0
 #   >>> for p in points:
@@ -402,22 +397,22 @@ header after you subtract the VLRs
 #   ...     f7.write(p)
 #   >>> f7.close()
 #   >>> del f7
-#   
+#
 #   >>> f8 = file.File('junk5.las')
 #   >>> f8.header.data_record_length
 #   52
-# 
+#
 #   >>> p = f8[0].data[0]
 #   >>> p
 #   13
 #   >>> p = f8[0].data[15]
 #   >>> p
 #   0
-#   
+#
 #   >>> p = f8[1].data[0]
 #   >>> p
 #   11
-  
+
   >>> import os
   >>> os.remove('junk.las')
   >>> os.remove('junk2.las')
@@ -425,21 +420,13 @@ header after you subtract the VLRs
   >>> os.remove('junk4.las')
 
 #  >>> os.remove('junk5.las')
-       
+
   >>> f = file.File('junk.las', mode="w", header=h)
   >>> import liblas.core
   >>> liblas.core.las.LASWriter_Destroy(f.handle)
-  >>> print 'destroyed once'
+  >>> print('destroyed once')
   destroyed once
   >>> f.handle = None
-  >>> liblas.core.las.LASWriter_Destroy(f.handle)
-  Traceback (most recent call last):
-  ...
-  LASException: LASError in "LASWriter_Destroy": Pointer 'hWriter' is NULL in 'LASWriter_Destroy'.
 
   >>> import os
   >>> os.remove('junk.las')
-  
-  
-
-
diff --git a/python/tests/GUID.txt b/python/tests/GUID.txt
old mode 100644
new mode 100755
index b827ffb..3b9b5b3
--- a/python/tests/GUID.txt
+++ b/python/tests/GUID.txt
@@ -1,23 +1,23 @@
   >>> from liblas import guid
   >>> from liblas import header
 
-  >>> g2 = guid.GUID(key='8388f1b8-aa1b-4108-bca3-6bc68e7b062e')
+  >>> g2 = guid.GUID(key=b'8388f1b8-aa1b-4108-bca3-6bc68e7b062e')
   >>> g2
   8388f1b8-aa1b-4108-bca3-6bc68e7b062e
-  
+
   >>> header = header.Header()
   >>> header.guid = g2
   >>> header.guid
   8388f1b8-aa1b-4108-bca3-6bc68e7b062e
-  >>> header.project_id
+  >>> str(header.project_id.decode())
   '8388f1b8-aa1b-4108-bca3-6bc68e7b062e'
-  
-  >>> g3 = guid.GUID(key='8388f1b8-aa1b-4108-bca3-6bc68e7b062e')
+
+  >>> g3 = guid.GUID(key=b'8388f1b8-aa1b-4108-bca3-6bc68e7b062e')
   >>> g2 == g3
   True
-  
+
   >>> try:
   ...     import uuid
-  ...     g4 = guid.GUID(key=str(uuid.uuid1()))
+  ...     g4 = guid.GUID(key=str(uuid.uuid1()).encode())
   ... except ImportError:
-  ...    pass
\ No newline at end of file
+  ...    pass
diff --git a/python/tests/Header.txt b/python/tests/Header.txt
old mode 100644
new mode 100755
index 0c5c408..9b98645
--- a/python/tests/Header.txt
+++ b/python/tests/Header.txt
@@ -1,9 +1,9 @@
-  
+
   >>> from liblas import header
   >>> import liblas
 
   >>> h = header.Header()
-  
+
   >>> h.dataformat_id
   3
 
@@ -28,8 +28,8 @@
   >>> import datetime
   >>> td = datetime.timedelta(hours=5) # my timezone is GMT-5
   >>> now = datetime.datetime.now()
-  >>> today = datetime.datetime(now.year, now.month,now.day) 
-  
+  >>> today = datetime.datetime(now.year, now.month,now.day)
+
   >>> if now.hour > 19:
   ...     x = h.date - td
   ... else:
@@ -48,14 +48,14 @@
   datetime.datetime(2008, 3, 19, 0, 0)
 
   >>> h.software_id
-  'libLAS 1.7.0'
+  'libLAS 1.8.0'
   >>> h.software_id = 'hobu'
   >>> h.software_id
   'hobu'
   >>> h.software_id = 'hobu'*9
   >>> h.software_id
   'hobuhobuhobuhobuhobuhobuhobuhob'
-  
+
   >>> h.system_id
   'libLAS'
   >>> h.system_id = 'Python'
@@ -63,38 +63,38 @@
   'Python'
 
   >>> h.max = [33452344.2333, 523442.344, -90.993]
-  >>> h.max
-  [33452344.2333, 523442.34399999998, -90.992999999999995]
+  >>> ["{:.2f}".format(x) for x in h.max]
+  ['33452344.23', '523442.34', '-90.99']
 
   >>> h.min = [33452344.2333, 523442.344, -90.993]
-  >>> h.min
-  [33452344.2333, 523442.34399999998, -90.992999999999995]
+  >>> ["{:.2f}".format(x) for x in h.min]
+  ['33452344.23', '523442.34', '-90.99']
 
   >>> h.offset = [32, 32, 256]
   >>> h.offset
   [32.0, 32.0, 256.0]
-  
+
   >>> h.scale = [0.5, 0.5, 0.001]
   >>> h.scale
   [0.5, 0.5, 0.001]
-  
-  >>> h.point_return_count
-  [0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L]
-  
-  >>> h.point_return_count = [1341235L, 3412341222L, 0L, 0L, 4321L, 0L, 0L, 0L]
-  >>> h.point_return_count 
-  [1341235L, 3412341222L, 0L, 0L, 4321L, 0L, 0L, 0L]
-  
-  >>> h.point_records_count
-  0L
-  
+
+  >>> list(map(int, h.point_return_count))
+  [0, 0, 0, 0, 0, 0, 0, 0]
+
+  >>> h.point_return_count = [1341235, 3412341222, 0, 0, 4321, 0, 0, 0]
+  >>> list(map(int, h.point_return_count))
+  [1341235, 3412341222, 0, 0, 4321, 0, 0, 0]
+
+  >>> int(h.point_records_count)
+  0
+
   >>> h.point_records_count = 42
-  >>> h.point_records_count
-  42L
-  
-  >>> h.records_count
-  0L
-  
+  >>> int(h.point_records_count)
+  42
+
+  >>> int(h.records_count)
+  0
+
   >>> h.header_size
   227
 
@@ -102,16 +102,16 @@
   ...     s = h.srs
   ...     return s.proj4 == ''
 
-  
+
   >>> test_srs()
   True
-  
-  >>> h.data_offset
-  227L
-  
+
+  >>> int(h.data_offset)
+  227
+
   >>> h.data_offset = 742
-  >>> h.data_offset
-  742L
+  >>> int(h.data_offset)
+  742
 
   >>> h.data_record_length
   34
@@ -121,4 +121,4 @@
 
 ## too fragile
 ##  >>> h.xml
-##  '<?xml version="1.0" encoding="utf-8"?>\n<filesignature>LASF</filesignature><projectdid>00000000-0000-0000-0000-000000000000</projectdid><systemid>Python</systemid><softwareid>hobuhobuhobuhobuhobuhobuhobuhob</softwareid><version>1.2</version><filesourceid>0</filesourceid><reserved>0</reserved><srs><proj4/><prettywkt/><wkt/><compoundwkt/><prettycompoundwkt/><gtiff>Geotiff_Information:\n   Version: 1\n   Key_Revision: 1.0\n   Tagged_Information:\n      End_Of_Tags.\n   Keyed_Informatio [...]
\ No newline at end of file
+##  '<?xml version="1.0" encoding="utf-8"?>\n<filesignature>LASF</filesignature><projectdid>00000000-0000-0000-0000-000000000000</projectdid><systemid>Python</systemid><softwareid>hobuhobuhobuhobuhobuhobuhobuhob</softwareid><version>1.2</version><filesourceid>0</filesourceid><reserved>0</reserved><srs><proj4/><prettywkt/><wkt/><compoundwkt/><prettycompoundwkt/><gtiff>Geotiff_Information:\n   Version: 1\n   Key_Revision: 1.0\n   Tagged_Information:\n      End_Of_Tags.\n   Keyed_Informatio [...]
diff --git a/python/tests/Point.txt b/python/tests/Point.txt
old mode 100644
new mode 100755
index 9b55009..1428171
--- a/python/tests/Point.txt
+++ b/python/tests/Point.txt
@@ -1,7 +1,7 @@
 
   >>> from liblas import point
   >>> p = point.Point()
-  
+
   >>> p.x
   0.0
   >>> p.x = 1.0
@@ -31,40 +31,40 @@
   >>> p.return_number = 3
   >>> p.return_number
   3
-  
+
   >>> p.number_of_returns
   0
   >>> p.number_of_returns = 4
   >>> p.number_of_returns
   4
-  
+
   >>> p.flightline_edge
   0
   >>> p.flightline_edge = 1
   >>> p.flightline_edge
   1
-  
+
   >>> p.scan_flags
   163
-  
+
   >>> p.classification
   0
   >>> p.classification = 3
   >>> p.classification
   3
-  
+
   >>> p.user_data
   0
   >>> p.user_data = 163
   >>> p.user_data
   163
-  
+
   >>> p.scan_angle
   0
   >>> p.scan_angle = 45
   >>> p.scan_angle
   45
-  
+
   >>> import datetime
   >>> import math
   >>> import time
@@ -76,53 +76,52 @@
   ...         return int(math.floor(td.seconds/3600.0))
   ...     else:
   ...         return int(math.floor(td.seconds/3600.0)) - 1
-  >>> td = datetime.timedelta(hours=get_td()) 
-  >>> p.time = datetime.datetime(2008,3,19,23,45,45,13434) 
+  >>> td = datetime.timedelta(hours=get_td())
+  >>> p.time = datetime.datetime(2008,3,19,23,45,45,13434)
   >>> delta = p.time - datetime.datetime(2008,3,19,23,45,45,13434)
   >>> int(math.floor(delta.seconds/3600.0)) == get_td() or int(math.floor(delta.seconds/3600.0)) == get_td() + 1
   True
   >>> p.time.microsecond
   13434
-  
+
   >>> p.intensity
   0
   >>> p.intensity = 120
   >>> p.intensity
   120
-  
+
   >>> c = p.color
   >>> c.red
   0
   >>> c.red = 124
   >>> c.red
   124
-  
+
   >>> p.color = c
   >>> p.color.red
   124
 
   >>> p.xml
   '<?xml version="1.0" encoding="utf-8"?>\n<x>1</x><y>2</y><z>3</z><rawx>1</rawx><rawy>2</rawy><rawz>3</rawz><time>1205988345.013434</time><intensity>120</intensity><returnnumber>3</returnnumber><numberofreturns>4</numberofreturns><scandirection>0</scandirection><scanangle>45</scanangle><flightlineedge>1</flightlineedge><userdata>163</userdata><pointsourceid>0</pointsourceid><classification><name>Low Vegetation</name><id>3</id><withheld>false</withheld><keypoint>false</keypoint><syntheti [...]
-  
 
 
 
-#   
+
+#
 #   >>> import ctypes
 #   >>> data = (ctypes.c_ubyte * 256)()
 #   >>> data[10]
 #   0
-#   
+#
 #   >>> for i in range(256):
 #   ...     data[i] = 2+i
-#   
+#
 #   >>> data[10]
 #   12
 #   >>> p.data = data
-#   
+#
 # # Ensure we can round trip the data
 #   >>> [data[i] for i in range(10)]
 #   [2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
 #   >>> [p.data[i] for i in range(10)]
 #   [2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
-
diff --git a/python/tests/SRS-GDAL.txt b/python/tests/SRS-GDAL.txt
old mode 100644
new mode 100755
index 722a38a..e827a8d
--- a/python/tests/SRS-GDAL.txt
+++ b/python/tests/SRS-GDAL.txt
@@ -1,29 +1,32 @@
   >>> from liblas import srs
   >>> from liblas import point
   >>> from liblas import header
-  
+
   >>> import liblas
   >>> s = srs.SRS()
   >>> s.proj4
   ''
-  >>> s.proj4 = '+proj=utm +zone=15 +datum=WGS84 +units=m +no_defs'
-  >>> s.proj4 == '+proj=utm +zone=15 +ellps=WGS84 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs '
+  >>> s.set_proj4(b'+proj=utm +zone=15 +datum=WGS84 +units=m +no_defs')
+  True
+  >>> print s.proj4
+  +proj=utm +zone=15 +datum=WGS84 +units=m +no_defs 
+  >>> s.proj4 == '+proj=utm +zone=15 +datum=WGS84 +units=m +no_defs '
   True
-  
+
   >>> s = srs.SRS()
-  >>> s.set_userinput('EPSG:4326')
+  >>> s.set_userinput(b'EPSG:4326')
   True
   >>> s.proj4 == '+proj=longlat +datum=WGS84 +no_defs '
   True
-  
+
   >>> from liblas import file
   >>> f = file.File('../test/data/1.2_3.las',mode='r')
   >>> s = f.header.srs
-  >>> s.wkt == """PROJCS["NAD83 / UTM zone 15N",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.2572221010002,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6269"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433],AUTHORITY["EPSG","4269"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-93],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,A [...]
+  >>> s.wkt == b"""PROJCS["NAD83 / UTM zone 15N",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.2572221010002,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6269"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433],AUTHORITY["EPSG","4269"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-93],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1, [...]
   True
-  
+
   >>> s2 = srs.SRS()
-  >>> s2.wkt = """GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]"""
+  >>> s2.wkt = b"""GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]"""
   >>> p = f.read(0)
   >>> p.x
   470692.44
@@ -46,10 +49,10 @@
 
   >>> def new_offset(old_scale, new_scale, old_offset, x):
   ...       return (new_scale*(x - old_offset) - old_scale*x)/(-1.0*old_scale)
-  
-  >>> utm_wkt = """PROJCS["NAD83 / UTM zone 15N",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.2572221010002,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6269"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433],AUTHORITY["EPSG","4269"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-93],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1, [...]
 
-  >>> dd_wkt = """GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]"""
+  >>> utm_wkt = b"""PROJCS["NAD83 / UTM zone 15N",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.2572221010002,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6269"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433],AUTHORITY["EPSG","4269"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-93],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1 [...]
+
+  >>> dd_wkt = b"""GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]"""
   >>> s_dd = srs.SRS()
   >>> s_dd.wkt = dd_wkt
   >>> s_utm = srs.SRS()
@@ -64,46 +67,46 @@
   [0.0, 0.0, 0.0]
   >>> utm_header.scale
   [0.01, 0.01, 0.01]
-  
+
 #  >>> new_offset(0.01, 0.0001, 0.0, 470692.44)
 #  >>> utm_header.offset = [offset+1.0/0.000001 for offset in utm_header.offset]
 #  >>> utm_header.offset
   [1000000.0, 1000000.0, 1000000.0]
 #  >>> utm_header.scale = [0.000001,0.000001,0.000001]
   >>> utm_header.srs = s_utm
-  
+
 #  >>> dd_header.scale = [0.000001,0.000001,0.000001]
   >>> dd_header.srs = s_dd
-  
+
   >>> f = file.File('../test/data/1.2_3.las',mode='r', header = utm_header)
-  >>> f.header.data_offset
-  438L
+  >>> int(f.header.data_offset)
+  438
   >>> f.header.scale
   [0.01, 0.01, 0.01]
   >>> p = f.read(0)
   >>> origx, origy = p.x, p.y
-  >>> origx, origy
-  (470692.44, 4602888.9000000004)
+  >>> "{:.2f}, {:.2f}".format(origx, origy)
+  '470692.44, 4602888.90'
   >>> f.set_srs(s_dd)
   True
   >>> p = f.read(0)
 
-We only get truncated values because our header scale 
+We only get truncated values because our header scale
 values are 0.01
 
-  >>> p.x, p.y
-  (-93.350000000000009, 41.579999999999998)
+  >>> "{:.2f}, {:.2f}".format(p.x, p.y)
+  '-93.35, 41.58'
 
 #real values
 #  (-93.351562590199833, 41.577148395415108)
-  
-  
+
+
 
   >>> f_project = file.File('junk_srs_project.las',mode='w',header=dd_header)
- 
+
   >>> p.header = dd_header
-  >>> p.x, p.y
-  (-93.350000000000009, 41.579999999999998)
+  >>> "{:.2f}, {:.2f}".format(p.x, p.y)
+  '-93.35, 41.58'
 
   >>> dd_header.srs.proj4
   '+proj=longlat +datum=WGS84 +no_defs '
@@ -111,8 +114,8 @@ values are 0.01
   >>> f_project.close()
   >>> del f_project
   >>> f3 = file.File('junk_srs_project.las')
-  >>> f3.header.data_offset
-  789L
+  >>> int(f3.header.data_offset)
+  789
 
   >>> s_utm = srs.SRS()
   >>> s_utm.wkt = utm_wkt
@@ -129,12 +132,12 @@ values are 0.01
 
   >>> f = file.File('../test/data/srs_vertcs.las',mode='r')
   >>> s = f.header.srs
-  >>> s.get_wkt_compoundok() == """COMPD_CS["unknown",PROJCS["WGS 84 / UTM zone 17N",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],U [...]
-  True
+  >>> str(s.get_wkt_compoundok().decode())
+  'COMPD_CS["unknown",PROJCS["WGS 84 / UTM zone 17N",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG"," [...]
 
   >>> s2 = srs.SRS()
-  >>> s2.wkt = """PROJCS["WGS 84 / UTM zone 17N",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001 [...]
-  >>> s2.set_verticalcs( 5703, 'abc', 5103, 9001 )
+  >>> s2.wkt = b"""PROJCS["WGS 84 / UTM zone 17N",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","900 [...]
+  >>> s2.set_verticalcs( 5703, b'abc', 5103, 9001 )
   True
-  >>> s2.get_wkt_compoundok()
-  'COMPD_CS["unknown",PROJCS["WGS 84 / UTM zone 17N",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG"," [...]
+  >>> str(s2.get_wkt_compoundok().decode())
+  'COMPD_CS["unknown",PROJCS["WGS 84 / UTM zone 17N",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG"," [...]
diff --git a/python/tests/SRS-GeoTIFF.txt b/python/tests/SRS-GeoTIFF.txt
old mode 100644
new mode 100755
diff --git a/python/tests/SRS.txt b/python/tests/SRS.txt
old mode 100644
new mode 100755
diff --git a/python/tests/Schema.txt b/python/tests/Schema.txt
old mode 100644
new mode 100755
diff --git a/python/tests/VLR.txt b/python/tests/VLR.txt
old mode 100644
new mode 100755
index 20d312e..d038ed3
--- a/python/tests/VLR.txt
+++ b/python/tests/VLR.txt
@@ -7,34 +7,34 @@
   >>> v.recordid = 2
   >>> v.recordid
   2
-  >>> v.userid
+  >>> str(v.userid.decode())
   ''
-  >>> v.userid = 'liblas.org'
-  >>> v.userid
+  >>> v.userid = b'liblas.org'
+  >>> str(v.userid.decode())
   'liblas.org'
-  
-  >>> v.description
+
+  >>> str(v.description.decode())
   ''
-  >>> v.description = 'libLAS'
-  >>> v.description
+  >>> v.description = b'libLAS'
+  >>> str(v.description.decode())
   'libLAS'
-  
+
   >>> v.recordlength = 256
-  >>> v.recordlength 
+  >>> v.recordlength
   256
-  
+
   >>> import ctypes
   >>> data = (ctypes.c_ubyte * 256)()
   >>> data[10]
   0
-  
+
   >>> for i in range(256):
   ...     data[i] = 2+i
-  
+
   >>> data[10]
   12
   >>> v.data = data
-  
+
 # Ensure we can round trip the data
   >>> [data[i] for i in range(10)]
   [2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
@@ -49,10 +49,10 @@
   32
   >>> data[1]
   3
-  
+
   >>> [v.data[i] for i in range(10)]
   [2, 32, 4, 5, 6, 7, 8, 9, 10, 11]
-  
+
   >>> import liblas
 
 #  >>> liblas.HAVE_GDAL
@@ -61,29 +61,29 @@
   >>> from liblas import file
   >>> f = file.File('../test/data/srs.las')
   >>> h = f.header
-  >>> h.records_count
-  3L
- 
+  >>> int(h.records_count)
+  3
+
   >>> def test_srs():
   ...     s = h.srs
   ...     if not liblas.HAVE_LIBGEOTIFF:
   ...         return True
-  ...     if not liblas.HAVE_GDAL: 
+  ...     if not liblas.HAVE_GDAL:
   ...         return s.proj4 == '+proj=utm +zone=17 +ellps=WGS84 +units=m '
   ...     if liblas.HAVE_GDAL:
   ...         return s.proj4 == '+proj=utm +zone=17 +datum=WGS84 +units=m +no_defs '
   ...     return False
-  
+
   >>> test_srs()
   True
-  
-  
+
+
   >>> v = h.GetVLR(0)
   >>> v.recordid
   34735
-  >>> v.userid
+  >>> str(v.userid.decode())
   'LASF_Projection'
-  
+
   >>> data = v.data
   >>> len(data)
   72
@@ -91,30 +91,29 @@
   8
 
   # Deleting a VLR shouldn't change the offset
-  >>> h.data_offset
-  759L
+  >>> int(h.data_offset)
+  759
   >>> h.DeleteVLR(0)
-  >>> h.data_offset
-  759L
-  
+  >>> int(h.data_offset)
+  759
+
   >>> del f
-  
+
   >>> f = file.File('../test/data/srs.las')
   >>> h = f.header
-  >>> f.header.data_offset
-  759L
+  >>> int(f.header.data_offset)
+  759
   >>> f2 = file.File('junk_srs.las',mode='w',header=h)
   >>> for p in f:
   ...     f2.write(p)
-  
+
   >>> f2.close()
   >>> del f2
-  
+
   >>> f3 = file.File('junk_srs.las')
-  >>> f3.header.records_count
-  3L
-  >>> f3.header.data_offset
-  759L
+  >>> int(f3.header.records_count)
+  3
+  >>> int(f3.header.data_offset)
+  759
   >>> import os
   >>> os.remove('junk_srs.las')
-
diff --git a/python/tests/__init__.py b/python/tests/__init__.py
old mode 100644
new mode 100755
diff --git a/python/tests/test_doctests.py b/python/tests/test_doctests.py
old mode 100644
new mode 100755
index d8f4367..fabbbed
--- a/python/tests/test_doctests.py
+++ b/python/tests/test_doctests.py
@@ -13,10 +13,10 @@
  *
  * Copyright (c) 2007, Sean C. Gillies
  * All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  *       notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above copyright
@@ -25,7 +25,7 @@
  *     * Neither the name of Sean C. Gillies nor the names of
  *       its contributors may be used to endorse or promote products derived from
  *       this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
@@ -51,13 +51,13 @@ optionflags = (doctest.REPORT_ONLY_FIRST_FAILURE |
                doctest.ELLIPSIS)
 
 def list_doctests():
-    
+
     files = glob.glob(os.path.join(os.path.dirname(__file__), '*.txt'))
     import liblas
-    
+
     for f in copy.copy(files):
         if liblas.HAVE_LIBGEOTIFF and liblas.HAVE_GDAL:
-            
+
             # run GDAL's tests only
             if 'GeoTIFF' in f:
                 files.remove(f)
@@ -68,7 +68,7 @@ def list_doctests():
                 files.remove(f)
             if 'SRS.txt' in f:
                 files.remove(f)
-        
+
         if not liblas.HAVE_LIBGEOTIFF and not liblas.HAVE_GDAL:
             if 'GDAL' in f:
                 files.remove(f)
diff --git a/rpm/libLAS.spec b/rpm/libLAS.spec
old mode 100644
new mode 100755
diff --git a/src/CMakeFiles/CMakeDirectoryInformation.cmake b/src/CMakeFiles/CMakeDirectoryInformation.cmake
deleted file mode 100644
index 964a551..0000000
--- a/src/CMakeFiles/CMakeDirectoryInformation.cmake
+++ /dev/null
@@ -1,23 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# Relative path conversion top directories.
-SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/hobu/foo/clean")
-SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/hobu/foo/clean")
-
-# Force unix paths in dependencies.
-SET(CMAKE_FORCE_UNIX_PATHS 1)
-
-# The C and CXX include file search paths:
-SET(CMAKE_C_INCLUDE_PATH
-  "src/../include"
-  "/usr/local/include"
-  )
-SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
-SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
-
-# The C and CXX include file regular expressions for this directory.
-SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
-SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
-SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
-SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/src/CMakeFiles/las.dir/DependInfo.cmake b/src/CMakeFiles/las.dir/DependInfo.cmake
deleted file mode 100644
index 9cba396..0000000
--- a/src/CMakeFiles/las.dir/DependInfo.cmake
+++ /dev/null
@@ -1,48 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "CXX"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_CXX
-  "/Users/hobu/foo/clean/src/chipper.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/chipper.cpp.o"
-  "/Users/hobu/foo/clean/src/classification.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/classification.cpp.o"
-  "/Users/hobu/foo/clean/src/color.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/color.cpp.o"
-  "/Users/hobu/foo/clean/src/detail/index/indexcell.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o"
-  "/Users/hobu/foo/clean/src/detail/index/indexoutput.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o"
-  "/Users/hobu/foo/clean/src/detail/reader/cachedreader.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o"
-  "/Users/hobu/foo/clean/src/detail/reader/header.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/detail/reader/header.cpp.o"
-  "/Users/hobu/foo/clean/src/detail/reader/reader.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/detail/reader/reader.cpp.o"
-  "/Users/hobu/foo/clean/src/detail/reader/zipreader.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o"
-  "/Users/hobu/foo/clean/src/detail/utility.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/detail/utility.cpp.o"
-  "/Users/hobu/foo/clean/src/detail/writer/header.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/detail/writer/header.cpp.o"
-  "/Users/hobu/foo/clean/src/detail/writer/point.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/detail/writer/point.cpp.o"
-  "/Users/hobu/foo/clean/src/detail/writer/writer.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/detail/writer/writer.cpp.o"
-  "/Users/hobu/foo/clean/src/detail/writer/zipwriter.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o"
-  "/Users/hobu/foo/clean/src/detail/zippoint.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/detail/zippoint.cpp.o"
-  "/Users/hobu/foo/clean/src/dimension.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/dimension.cpp.o"
-  "/Users/hobu/foo/clean/src/error.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/error.cpp.o"
-  "/Users/hobu/foo/clean/src/factory.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/factory.cpp.o"
-  "/Users/hobu/foo/clean/src/filter.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/filter.cpp.o"
-  "/Users/hobu/foo/clean/src/header.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/header.cpp.o"
-  "/Users/hobu/foo/clean/src/index.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/index.cpp.o"
-  "/Users/hobu/foo/clean/src/point.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/point.cpp.o"
-  "/Users/hobu/foo/clean/src/reader.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/reader.cpp.o"
-  "/Users/hobu/foo/clean/src/schema.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/schema.cpp.o"
-  "/Users/hobu/foo/clean/src/spatialreference.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/spatialreference.cpp.o"
-  "/Users/hobu/foo/clean/src/transform.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/transform.cpp.o"
-  "/Users/hobu/foo/clean/src/utility.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/utility.cpp.o"
-  "/Users/hobu/foo/clean/src/variablerecord.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/variablerecord.cpp.o"
-  "/Users/hobu/foo/clean/src/version.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/version.cpp.o"
-  "/Users/hobu/foo/clean/src/writer.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/writer.cpp.o"
-  )
-SET(CMAKE_CXX_COMPILER_ID "GNU")
-
-# Pairs of files generated by the same build rule.
-SET(CMAKE_MULTIPLE_OUTPUT_PAIRS
-  "/Users/hobu/foo/clean/bin/Release/liblas.dylib" "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib"
-  )
-
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  )
diff --git a/src/CMakeFiles/las.dir/build.make b/src/CMakeFiles/las.dir/build.make
deleted file mode 100644
index 83a980b..0000000
--- a/src/CMakeFiles/las.dir/build.make
+++ /dev/null
@@ -1,861 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include src/CMakeFiles/las.dir/depend.make
-
-# Include the progress variables for this target.
-include src/CMakeFiles/las.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include src/CMakeFiles/las.dir/flags.make
-
-src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o: src/detail/index/indexcell.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/detail/index/indexcell.cpp.o -c /Users/hobu/foo/clean/src/detail/index/indexcell.cpp
-
-src/CMakeFiles/las.dir/detail/index/indexcell.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/detail/index/indexcell.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/detail/index/indexcell.cpp > CMakeFiles/las.dir/detail/index/indexcell.cpp.i
-
-src/CMakeFiles/las.dir/detail/index/indexcell.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/detail/index/indexcell.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/detail/index/indexcell.cpp -o CMakeFiles/las.dir/detail/index/indexcell.cpp.s
-
-src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o.requires
-
-src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o.provides: src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o.provides
-
-src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o.provides.build: src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o
-
-src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o: src/detail/index/indexoutput.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_2)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/detail/index/indexoutput.cpp.o -c /Users/hobu/foo/clean/src/detail/index/indexoutput.cpp
-
-src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/detail/index/indexoutput.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/detail/index/indexoutput.cpp > CMakeFiles/las.dir/detail/index/indexoutput.cpp.i
-
-src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/detail/index/indexoutput.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/detail/index/indexoutput.cpp -o CMakeFiles/las.dir/detail/index/indexoutput.cpp.s
-
-src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o.requires
-
-src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o.provides: src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o.provides
-
-src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o.provides.build: src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o
-
-src/CMakeFiles/las.dir/chipper.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/chipper.cpp.o: src/chipper.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_3)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/chipper.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/chipper.cpp.o -c /Users/hobu/foo/clean/src/chipper.cpp
-
-src/CMakeFiles/las.dir/chipper.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/chipper.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/chipper.cpp > CMakeFiles/las.dir/chipper.cpp.i
-
-src/CMakeFiles/las.dir/chipper.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/chipper.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/chipper.cpp -o CMakeFiles/las.dir/chipper.cpp.s
-
-src/CMakeFiles/las.dir/chipper.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/chipper.cpp.o.requires
-
-src/CMakeFiles/las.dir/chipper.cpp.o.provides: src/CMakeFiles/las.dir/chipper.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/chipper.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/chipper.cpp.o.provides
-
-src/CMakeFiles/las.dir/chipper.cpp.o.provides.build: src/CMakeFiles/las.dir/chipper.cpp.o
-
-src/CMakeFiles/las.dir/factory.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/factory.cpp.o: src/factory.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_4)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/factory.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/factory.cpp.o -c /Users/hobu/foo/clean/src/factory.cpp
-
-src/CMakeFiles/las.dir/factory.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/factory.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/factory.cpp > CMakeFiles/las.dir/factory.cpp.i
-
-src/CMakeFiles/las.dir/factory.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/factory.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/factory.cpp -o CMakeFiles/las.dir/factory.cpp.s
-
-src/CMakeFiles/las.dir/factory.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/factory.cpp.o.requires
-
-src/CMakeFiles/las.dir/factory.cpp.o.provides: src/CMakeFiles/las.dir/factory.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/factory.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/factory.cpp.o.provides
-
-src/CMakeFiles/las.dir/factory.cpp.o.provides.build: src/CMakeFiles/las.dir/factory.cpp.o
-
-src/CMakeFiles/las.dir/classification.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/classification.cpp.o: src/classification.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_5)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/classification.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/classification.cpp.o -c /Users/hobu/foo/clean/src/classification.cpp
-
-src/CMakeFiles/las.dir/classification.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/classification.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/classification.cpp > CMakeFiles/las.dir/classification.cpp.i
-
-src/CMakeFiles/las.dir/classification.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/classification.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/classification.cpp -o CMakeFiles/las.dir/classification.cpp.s
-
-src/CMakeFiles/las.dir/classification.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/classification.cpp.o.requires
-
-src/CMakeFiles/las.dir/classification.cpp.o.provides: src/CMakeFiles/las.dir/classification.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/classification.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/classification.cpp.o.provides
-
-src/CMakeFiles/las.dir/classification.cpp.o.provides.build: src/CMakeFiles/las.dir/classification.cpp.o
-
-src/CMakeFiles/las.dir/color.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/color.cpp.o: src/color.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_6)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/color.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/color.cpp.o -c /Users/hobu/foo/clean/src/color.cpp
-
-src/CMakeFiles/las.dir/color.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/color.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/color.cpp > CMakeFiles/las.dir/color.cpp.i
-
-src/CMakeFiles/las.dir/color.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/color.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/color.cpp -o CMakeFiles/las.dir/color.cpp.s
-
-src/CMakeFiles/las.dir/color.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/color.cpp.o.requires
-
-src/CMakeFiles/las.dir/color.cpp.o.provides: src/CMakeFiles/las.dir/color.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/color.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/color.cpp.o.provides
-
-src/CMakeFiles/las.dir/color.cpp.o.provides.build: src/CMakeFiles/las.dir/color.cpp.o
-
-src/CMakeFiles/las.dir/dimension.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/dimension.cpp.o: src/dimension.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_7)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/dimension.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/dimension.cpp.o -c /Users/hobu/foo/clean/src/dimension.cpp
-
-src/CMakeFiles/las.dir/dimension.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/dimension.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/dimension.cpp > CMakeFiles/las.dir/dimension.cpp.i
-
-src/CMakeFiles/las.dir/dimension.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/dimension.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/dimension.cpp -o CMakeFiles/las.dir/dimension.cpp.s
-
-src/CMakeFiles/las.dir/dimension.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/dimension.cpp.o.requires
-
-src/CMakeFiles/las.dir/dimension.cpp.o.provides: src/CMakeFiles/las.dir/dimension.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/dimension.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/dimension.cpp.o.provides
-
-src/CMakeFiles/las.dir/dimension.cpp.o.provides.build: src/CMakeFiles/las.dir/dimension.cpp.o
-
-src/CMakeFiles/las.dir/error.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/error.cpp.o: src/error.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_8)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/error.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/error.cpp.o -c /Users/hobu/foo/clean/src/error.cpp
-
-src/CMakeFiles/las.dir/error.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/error.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/error.cpp > CMakeFiles/las.dir/error.cpp.i
-
-src/CMakeFiles/las.dir/error.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/error.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/error.cpp -o CMakeFiles/las.dir/error.cpp.s
-
-src/CMakeFiles/las.dir/error.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/error.cpp.o.requires
-
-src/CMakeFiles/las.dir/error.cpp.o.provides: src/CMakeFiles/las.dir/error.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/error.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/error.cpp.o.provides
-
-src/CMakeFiles/las.dir/error.cpp.o.provides.build: src/CMakeFiles/las.dir/error.cpp.o
-
-src/CMakeFiles/las.dir/filter.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/filter.cpp.o: src/filter.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_9)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/filter.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/filter.cpp.o -c /Users/hobu/foo/clean/src/filter.cpp
-
-src/CMakeFiles/las.dir/filter.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/filter.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/filter.cpp > CMakeFiles/las.dir/filter.cpp.i
-
-src/CMakeFiles/las.dir/filter.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/filter.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/filter.cpp -o CMakeFiles/las.dir/filter.cpp.s
-
-src/CMakeFiles/las.dir/filter.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/filter.cpp.o.requires
-
-src/CMakeFiles/las.dir/filter.cpp.o.provides: src/CMakeFiles/las.dir/filter.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/filter.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/filter.cpp.o.provides
-
-src/CMakeFiles/las.dir/filter.cpp.o.provides.build: src/CMakeFiles/las.dir/filter.cpp.o
-
-src/CMakeFiles/las.dir/header.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/header.cpp.o: src/header.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_10)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/header.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/header.cpp.o -c /Users/hobu/foo/clean/src/header.cpp
-
-src/CMakeFiles/las.dir/header.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/header.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/header.cpp > CMakeFiles/las.dir/header.cpp.i
-
-src/CMakeFiles/las.dir/header.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/header.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/header.cpp -o CMakeFiles/las.dir/header.cpp.s
-
-src/CMakeFiles/las.dir/header.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/header.cpp.o.requires
-
-src/CMakeFiles/las.dir/header.cpp.o.provides: src/CMakeFiles/las.dir/header.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/header.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/header.cpp.o.provides
-
-src/CMakeFiles/las.dir/header.cpp.o.provides.build: src/CMakeFiles/las.dir/header.cpp.o
-
-src/CMakeFiles/las.dir/index.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/index.cpp.o: src/index.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_11)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/index.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/index.cpp.o -c /Users/hobu/foo/clean/src/index.cpp
-
-src/CMakeFiles/las.dir/index.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/index.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/index.cpp > CMakeFiles/las.dir/index.cpp.i
-
-src/CMakeFiles/las.dir/index.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/index.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/index.cpp -o CMakeFiles/las.dir/index.cpp.s
-
-src/CMakeFiles/las.dir/index.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/index.cpp.o.requires
-
-src/CMakeFiles/las.dir/index.cpp.o.provides: src/CMakeFiles/las.dir/index.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/index.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/index.cpp.o.provides
-
-src/CMakeFiles/las.dir/index.cpp.o.provides.build: src/CMakeFiles/las.dir/index.cpp.o
-
-src/CMakeFiles/las.dir/point.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/point.cpp.o: src/point.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_12)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/point.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/point.cpp.o -c /Users/hobu/foo/clean/src/point.cpp
-
-src/CMakeFiles/las.dir/point.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/point.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/point.cpp > CMakeFiles/las.dir/point.cpp.i
-
-src/CMakeFiles/las.dir/point.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/point.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/point.cpp -o CMakeFiles/las.dir/point.cpp.s
-
-src/CMakeFiles/las.dir/point.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/point.cpp.o.requires
-
-src/CMakeFiles/las.dir/point.cpp.o.provides: src/CMakeFiles/las.dir/point.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/point.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/point.cpp.o.provides
-
-src/CMakeFiles/las.dir/point.cpp.o.provides.build: src/CMakeFiles/las.dir/point.cpp.o
-
-src/CMakeFiles/las.dir/reader.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/reader.cpp.o: src/reader.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_13)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/reader.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/reader.cpp.o -c /Users/hobu/foo/clean/src/reader.cpp
-
-src/CMakeFiles/las.dir/reader.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/reader.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/reader.cpp > CMakeFiles/las.dir/reader.cpp.i
-
-src/CMakeFiles/las.dir/reader.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/reader.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/reader.cpp -o CMakeFiles/las.dir/reader.cpp.s
-
-src/CMakeFiles/las.dir/reader.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/reader.cpp.o.requires
-
-src/CMakeFiles/las.dir/reader.cpp.o.provides: src/CMakeFiles/las.dir/reader.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/reader.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/reader.cpp.o.provides
-
-src/CMakeFiles/las.dir/reader.cpp.o.provides.build: src/CMakeFiles/las.dir/reader.cpp.o
-
-src/CMakeFiles/las.dir/spatialreference.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/spatialreference.cpp.o: src/spatialreference.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_14)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/spatialreference.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/spatialreference.cpp.o -c /Users/hobu/foo/clean/src/spatialreference.cpp
-
-src/CMakeFiles/las.dir/spatialreference.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/spatialreference.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/spatialreference.cpp > CMakeFiles/las.dir/spatialreference.cpp.i
-
-src/CMakeFiles/las.dir/spatialreference.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/spatialreference.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/spatialreference.cpp -o CMakeFiles/las.dir/spatialreference.cpp.s
-
-src/CMakeFiles/las.dir/spatialreference.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/spatialreference.cpp.o.requires
-
-src/CMakeFiles/las.dir/spatialreference.cpp.o.provides: src/CMakeFiles/las.dir/spatialreference.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/spatialreference.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/spatialreference.cpp.o.provides
-
-src/CMakeFiles/las.dir/spatialreference.cpp.o.provides.build: src/CMakeFiles/las.dir/spatialreference.cpp.o
-
-src/CMakeFiles/las.dir/schema.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/schema.cpp.o: src/schema.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_15)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/schema.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/schema.cpp.o -c /Users/hobu/foo/clean/src/schema.cpp
-
-src/CMakeFiles/las.dir/schema.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/schema.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/schema.cpp > CMakeFiles/las.dir/schema.cpp.i
-
-src/CMakeFiles/las.dir/schema.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/schema.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/schema.cpp -o CMakeFiles/las.dir/schema.cpp.s
-
-src/CMakeFiles/las.dir/schema.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/schema.cpp.o.requires
-
-src/CMakeFiles/las.dir/schema.cpp.o.provides: src/CMakeFiles/las.dir/schema.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/schema.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/schema.cpp.o.provides
-
-src/CMakeFiles/las.dir/schema.cpp.o.provides.build: src/CMakeFiles/las.dir/schema.cpp.o
-
-src/CMakeFiles/las.dir/transform.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/transform.cpp.o: src/transform.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_16)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/transform.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/transform.cpp.o -c /Users/hobu/foo/clean/src/transform.cpp
-
-src/CMakeFiles/las.dir/transform.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/transform.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/transform.cpp > CMakeFiles/las.dir/transform.cpp.i
-
-src/CMakeFiles/las.dir/transform.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/transform.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/transform.cpp -o CMakeFiles/las.dir/transform.cpp.s
-
-src/CMakeFiles/las.dir/transform.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/transform.cpp.o.requires
-
-src/CMakeFiles/las.dir/transform.cpp.o.provides: src/CMakeFiles/las.dir/transform.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/transform.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/transform.cpp.o.provides
-
-src/CMakeFiles/las.dir/transform.cpp.o.provides.build: src/CMakeFiles/las.dir/transform.cpp.o
-
-src/CMakeFiles/las.dir/utility.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/utility.cpp.o: src/utility.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_17)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/utility.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/utility.cpp.o -c /Users/hobu/foo/clean/src/utility.cpp
-
-src/CMakeFiles/las.dir/utility.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/utility.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/utility.cpp > CMakeFiles/las.dir/utility.cpp.i
-
-src/CMakeFiles/las.dir/utility.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/utility.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/utility.cpp -o CMakeFiles/las.dir/utility.cpp.s
-
-src/CMakeFiles/las.dir/utility.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/utility.cpp.o.requires
-
-src/CMakeFiles/las.dir/utility.cpp.o.provides: src/CMakeFiles/las.dir/utility.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/utility.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/utility.cpp.o.provides
-
-src/CMakeFiles/las.dir/utility.cpp.o.provides.build: src/CMakeFiles/las.dir/utility.cpp.o
-
-src/CMakeFiles/las.dir/variablerecord.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/variablerecord.cpp.o: src/variablerecord.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_18)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/variablerecord.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/variablerecord.cpp.o -c /Users/hobu/foo/clean/src/variablerecord.cpp
-
-src/CMakeFiles/las.dir/variablerecord.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/variablerecord.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/variablerecord.cpp > CMakeFiles/las.dir/variablerecord.cpp.i
-
-src/CMakeFiles/las.dir/variablerecord.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/variablerecord.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/variablerecord.cpp -o CMakeFiles/las.dir/variablerecord.cpp.s
-
-src/CMakeFiles/las.dir/variablerecord.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/variablerecord.cpp.o.requires
-
-src/CMakeFiles/las.dir/variablerecord.cpp.o.provides: src/CMakeFiles/las.dir/variablerecord.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/variablerecord.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/variablerecord.cpp.o.provides
-
-src/CMakeFiles/las.dir/variablerecord.cpp.o.provides.build: src/CMakeFiles/las.dir/variablerecord.cpp.o
-
-src/CMakeFiles/las.dir/writer.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/writer.cpp.o: src/writer.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_19)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/writer.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/writer.cpp.o -c /Users/hobu/foo/clean/src/writer.cpp
-
-src/CMakeFiles/las.dir/writer.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/writer.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/writer.cpp > CMakeFiles/las.dir/writer.cpp.i
-
-src/CMakeFiles/las.dir/writer.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/writer.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/writer.cpp -o CMakeFiles/las.dir/writer.cpp.s
-
-src/CMakeFiles/las.dir/writer.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/writer.cpp.o.requires
-
-src/CMakeFiles/las.dir/writer.cpp.o.provides: src/CMakeFiles/las.dir/writer.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/writer.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/writer.cpp.o.provides
-
-src/CMakeFiles/las.dir/writer.cpp.o.provides.build: src/CMakeFiles/las.dir/writer.cpp.o
-
-src/CMakeFiles/las.dir/version.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/version.cpp.o: src/version.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_20)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/version.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/version.cpp.o -c /Users/hobu/foo/clean/src/version.cpp
-
-src/CMakeFiles/las.dir/version.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/version.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/version.cpp > CMakeFiles/las.dir/version.cpp.i
-
-src/CMakeFiles/las.dir/version.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/version.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/version.cpp -o CMakeFiles/las.dir/version.cpp.s
-
-src/CMakeFiles/las.dir/version.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/version.cpp.o.requires
-
-src/CMakeFiles/las.dir/version.cpp.o.provides: src/CMakeFiles/las.dir/version.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/version.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/version.cpp.o.provides
-
-src/CMakeFiles/las.dir/version.cpp.o.provides.build: src/CMakeFiles/las.dir/version.cpp.o
-
-src/CMakeFiles/las.dir/detail/utility.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/detail/utility.cpp.o: src/detail/utility.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_21)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/detail/utility.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/detail/utility.cpp.o -c /Users/hobu/foo/clean/src/detail/utility.cpp
-
-src/CMakeFiles/las.dir/detail/utility.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/detail/utility.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/detail/utility.cpp > CMakeFiles/las.dir/detail/utility.cpp.i
-
-src/CMakeFiles/las.dir/detail/utility.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/detail/utility.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/detail/utility.cpp -o CMakeFiles/las.dir/detail/utility.cpp.s
-
-src/CMakeFiles/las.dir/detail/utility.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/detail/utility.cpp.o.requires
-
-src/CMakeFiles/las.dir/detail/utility.cpp.o.provides: src/CMakeFiles/las.dir/detail/utility.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/utility.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/detail/utility.cpp.o.provides
-
-src/CMakeFiles/las.dir/detail/utility.cpp.o.provides.build: src/CMakeFiles/las.dir/detail/utility.cpp.o
-
-src/CMakeFiles/las.dir/detail/zippoint.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/detail/zippoint.cpp.o: src/detail/zippoint.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_22)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/detail/zippoint.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/detail/zippoint.cpp.o -c /Users/hobu/foo/clean/src/detail/zippoint.cpp
-
-src/CMakeFiles/las.dir/detail/zippoint.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/detail/zippoint.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/detail/zippoint.cpp > CMakeFiles/las.dir/detail/zippoint.cpp.i
-
-src/CMakeFiles/las.dir/detail/zippoint.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/detail/zippoint.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/detail/zippoint.cpp -o CMakeFiles/las.dir/detail/zippoint.cpp.s
-
-src/CMakeFiles/las.dir/detail/zippoint.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/detail/zippoint.cpp.o.requires
-
-src/CMakeFiles/las.dir/detail/zippoint.cpp.o.provides: src/CMakeFiles/las.dir/detail/zippoint.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/zippoint.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/detail/zippoint.cpp.o.provides
-
-src/CMakeFiles/las.dir/detail/zippoint.cpp.o.provides.build: src/CMakeFiles/las.dir/detail/zippoint.cpp.o
-
-src/CMakeFiles/las.dir/detail/reader/header.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/detail/reader/header.cpp.o: src/detail/reader/header.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_23)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/detail/reader/header.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/detail/reader/header.cpp.o -c /Users/hobu/foo/clean/src/detail/reader/header.cpp
-
-src/CMakeFiles/las.dir/detail/reader/header.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/detail/reader/header.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/detail/reader/header.cpp > CMakeFiles/las.dir/detail/reader/header.cpp.i
-
-src/CMakeFiles/las.dir/detail/reader/header.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/detail/reader/header.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/detail/reader/header.cpp -o CMakeFiles/las.dir/detail/reader/header.cpp.s
-
-src/CMakeFiles/las.dir/detail/reader/header.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/detail/reader/header.cpp.o.requires
-
-src/CMakeFiles/las.dir/detail/reader/header.cpp.o.provides: src/CMakeFiles/las.dir/detail/reader/header.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/header.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/detail/reader/header.cpp.o.provides
-
-src/CMakeFiles/las.dir/detail/reader/header.cpp.o.provides.build: src/CMakeFiles/las.dir/detail/reader/header.cpp.o
-
-src/CMakeFiles/las.dir/detail/reader/reader.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/detail/reader/reader.cpp.o: src/detail/reader/reader.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_24)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/detail/reader/reader.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/detail/reader/reader.cpp.o -c /Users/hobu/foo/clean/src/detail/reader/reader.cpp
-
-src/CMakeFiles/las.dir/detail/reader/reader.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/detail/reader/reader.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/detail/reader/reader.cpp > CMakeFiles/las.dir/detail/reader/reader.cpp.i
-
-src/CMakeFiles/las.dir/detail/reader/reader.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/detail/reader/reader.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/detail/reader/reader.cpp -o CMakeFiles/las.dir/detail/reader/reader.cpp.s
-
-src/CMakeFiles/las.dir/detail/reader/reader.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/detail/reader/reader.cpp.o.requires
-
-src/CMakeFiles/las.dir/detail/reader/reader.cpp.o.provides: src/CMakeFiles/las.dir/detail/reader/reader.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/reader.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/detail/reader/reader.cpp.o.provides
-
-src/CMakeFiles/las.dir/detail/reader/reader.cpp.o.provides.build: src/CMakeFiles/las.dir/detail/reader/reader.cpp.o
-
-src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o: src/detail/reader/zipreader.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_25)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/detail/reader/zipreader.cpp.o -c /Users/hobu/foo/clean/src/detail/reader/zipreader.cpp
-
-src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/detail/reader/zipreader.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/detail/reader/zipreader.cpp > CMakeFiles/las.dir/detail/reader/zipreader.cpp.i
-
-src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/detail/reader/zipreader.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/detail/reader/zipreader.cpp -o CMakeFiles/las.dir/detail/reader/zipreader.cpp.s
-
-src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o.requires
-
-src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o.provides: src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o.provides
-
-src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o.provides.build: src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o
-
-src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o: src/detail/reader/cachedreader.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_26)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o -c /Users/hobu/foo/clean/src/detail/reader/cachedreader.cpp
-
-src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/detail/reader/cachedreader.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/detail/reader/cachedreader.cpp > CMakeFiles/las.dir/detail/reader/cachedreader.cpp.i
-
-src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/detail/reader/cachedreader.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/detail/reader/cachedreader.cpp -o CMakeFiles/las.dir/detail/reader/cachedreader.cpp.s
-
-src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o.requires
-
-src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o.provides: src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o.provides
-
-src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o.provides.build: src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o
-
-src/CMakeFiles/las.dir/detail/writer/header.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/detail/writer/header.cpp.o: src/detail/writer/header.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_27)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/detail/writer/header.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/detail/writer/header.cpp.o -c /Users/hobu/foo/clean/src/detail/writer/header.cpp
-
-src/CMakeFiles/las.dir/detail/writer/header.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/detail/writer/header.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/detail/writer/header.cpp > CMakeFiles/las.dir/detail/writer/header.cpp.i
-
-src/CMakeFiles/las.dir/detail/writer/header.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/detail/writer/header.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/detail/writer/header.cpp -o CMakeFiles/las.dir/detail/writer/header.cpp.s
-
-src/CMakeFiles/las.dir/detail/writer/header.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/detail/writer/header.cpp.o.requires
-
-src/CMakeFiles/las.dir/detail/writer/header.cpp.o.provides: src/CMakeFiles/las.dir/detail/writer/header.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/header.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/detail/writer/header.cpp.o.provides
-
-src/CMakeFiles/las.dir/detail/writer/header.cpp.o.provides.build: src/CMakeFiles/las.dir/detail/writer/header.cpp.o
-
-src/CMakeFiles/las.dir/detail/writer/point.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/detail/writer/point.cpp.o: src/detail/writer/point.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_28)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/detail/writer/point.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/detail/writer/point.cpp.o -c /Users/hobu/foo/clean/src/detail/writer/point.cpp
-
-src/CMakeFiles/las.dir/detail/writer/point.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/detail/writer/point.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/detail/writer/point.cpp > CMakeFiles/las.dir/detail/writer/point.cpp.i
-
-src/CMakeFiles/las.dir/detail/writer/point.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/detail/writer/point.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/detail/writer/point.cpp -o CMakeFiles/las.dir/detail/writer/point.cpp.s
-
-src/CMakeFiles/las.dir/detail/writer/point.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/detail/writer/point.cpp.o.requires
-
-src/CMakeFiles/las.dir/detail/writer/point.cpp.o.provides: src/CMakeFiles/las.dir/detail/writer/point.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/point.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/detail/writer/point.cpp.o.provides
-
-src/CMakeFiles/las.dir/detail/writer/point.cpp.o.provides.build: src/CMakeFiles/las.dir/detail/writer/point.cpp.o
-
-src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o: src/detail/writer/zipwriter.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_29)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o -c /Users/hobu/foo/clean/src/detail/writer/zipwriter.cpp
-
-src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/detail/writer/zipwriter.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/detail/writer/zipwriter.cpp > CMakeFiles/las.dir/detail/writer/zipwriter.cpp.i
-
-src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/detail/writer/zipwriter.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/detail/writer/zipwriter.cpp -o CMakeFiles/las.dir/detail/writer/zipwriter.cpp.s
-
-src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o.requires
-
-src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o.provides: src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o.provides
-
-src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o.provides.build: src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o
-
-src/CMakeFiles/las.dir/detail/writer/writer.cpp.o: src/CMakeFiles/las.dir/flags.make
-src/CMakeFiles/las.dir/detail/writer/writer.cpp.o: src/detail/writer/writer.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_30)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las.dir/detail/writer/writer.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las.dir/detail/writer/writer.cpp.o -c /Users/hobu/foo/clean/src/detail/writer/writer.cpp
-
-src/CMakeFiles/las.dir/detail/writer/writer.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las.dir/detail/writer/writer.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/detail/writer/writer.cpp > CMakeFiles/las.dir/detail/writer/writer.cpp.i
-
-src/CMakeFiles/las.dir/detail/writer/writer.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las.dir/detail/writer/writer.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/detail/writer/writer.cpp -o CMakeFiles/las.dir/detail/writer/writer.cpp.s
-
-src/CMakeFiles/las.dir/detail/writer/writer.cpp.o.requires:
-.PHONY : src/CMakeFiles/las.dir/detail/writer/writer.cpp.o.requires
-
-src/CMakeFiles/las.dir/detail/writer/writer.cpp.o.provides: src/CMakeFiles/las.dir/detail/writer/writer.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/writer.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las.dir/detail/writer/writer.cpp.o.provides
-
-src/CMakeFiles/las.dir/detail/writer/writer.cpp.o.provides.build: src/CMakeFiles/las.dir/detail/writer/writer.cpp.o
-
-# Object files for target las
-las_OBJECTS = \
-"CMakeFiles/las.dir/detail/index/indexcell.cpp.o" \
-"CMakeFiles/las.dir/detail/index/indexoutput.cpp.o" \
-"CMakeFiles/las.dir/chipper.cpp.o" \
-"CMakeFiles/las.dir/factory.cpp.o" \
-"CMakeFiles/las.dir/classification.cpp.o" \
-"CMakeFiles/las.dir/color.cpp.o" \
-"CMakeFiles/las.dir/dimension.cpp.o" \
-"CMakeFiles/las.dir/error.cpp.o" \
-"CMakeFiles/las.dir/filter.cpp.o" \
-"CMakeFiles/las.dir/header.cpp.o" \
-"CMakeFiles/las.dir/index.cpp.o" \
-"CMakeFiles/las.dir/point.cpp.o" \
-"CMakeFiles/las.dir/reader.cpp.o" \
-"CMakeFiles/las.dir/spatialreference.cpp.o" \
-"CMakeFiles/las.dir/schema.cpp.o" \
-"CMakeFiles/las.dir/transform.cpp.o" \
-"CMakeFiles/las.dir/utility.cpp.o" \
-"CMakeFiles/las.dir/variablerecord.cpp.o" \
-"CMakeFiles/las.dir/writer.cpp.o" \
-"CMakeFiles/las.dir/version.cpp.o" \
-"CMakeFiles/las.dir/detail/utility.cpp.o" \
-"CMakeFiles/las.dir/detail/zippoint.cpp.o" \
-"CMakeFiles/las.dir/detail/reader/header.cpp.o" \
-"CMakeFiles/las.dir/detail/reader/reader.cpp.o" \
-"CMakeFiles/las.dir/detail/reader/zipreader.cpp.o" \
-"CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o" \
-"CMakeFiles/las.dir/detail/writer/header.cpp.o" \
-"CMakeFiles/las.dir/detail/writer/point.cpp.o" \
-"CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o" \
-"CMakeFiles/las.dir/detail/writer/writer.cpp.o"
-
-# External object files for target las
-las_EXTERNAL_OBJECTS =
-
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/chipper.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/factory.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/classification.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/color.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/dimension.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/error.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/filter.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/header.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/index.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/point.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/reader.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/spatialreference.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/schema.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/transform.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/utility.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/variablerecord.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/writer.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/version.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/detail/utility.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/detail/zippoint.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/detail/reader/header.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/detail/reader/reader.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/detail/writer/header.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/detail/writer/point.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/detail/writer/writer.cpp.o
-bin/Release/liblas.2.2.0.dylib: /usr/local/lib/libboost_program_options.a
-bin/Release/liblas.2.2.0.dylib: /usr/local/lib/libboost_thread.a
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/build.make
-bin/Release/liblas.2.2.0.dylib: src/CMakeFiles/las.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX shared library ../bin/Release/liblas.dylib"
-	cd /Users/hobu/foo/clean/src && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/las.dir/link.txt --verbose=$(VERBOSE)
-	cd /Users/hobu/foo/clean/src && $(CMAKE_COMMAND) -E cmake_symlink_library ../bin/Release/liblas.2.2.0.dylib ../bin/Release/liblas.2.2.0.dylib ../bin/Release/liblas.dylib
-
-bin/Release/liblas.dylib: bin/Release/liblas.2.2.0.dylib
-
-# Rule to build all files generated by this target.
-src/CMakeFiles/las.dir/build: bin/Release/liblas.dylib
-.PHONY : src/CMakeFiles/las.dir/build
-
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/chipper.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/factory.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/classification.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/color.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/dimension.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/error.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/filter.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/header.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/index.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/point.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/reader.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/spatialreference.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/schema.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/transform.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/utility.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/variablerecord.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/writer.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/version.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/detail/utility.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/detail/zippoint.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/detail/reader/header.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/detail/reader/reader.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/detail/writer/header.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/detail/writer/point.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o.requires
-src/CMakeFiles/las.dir/requires: src/CMakeFiles/las.dir/detail/writer/writer.cpp.o.requires
-.PHONY : src/CMakeFiles/las.dir/requires
-
-src/CMakeFiles/las.dir/clean:
-	cd /Users/hobu/foo/clean/src && $(CMAKE_COMMAND) -P CMakeFiles/las.dir/cmake_clean.cmake
-.PHONY : src/CMakeFiles/las.dir/clean
-
-src/CMakeFiles/las.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/src /Users/hobu/foo/clean /Users/hobu/foo/clean/src /Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : src/CMakeFiles/las.dir/depend
-
diff --git a/src/CMakeFiles/las.dir/cmake_clean.cmake b/src/CMakeFiles/las.dir/cmake_clean.cmake
deleted file mode 100644
index 9975bf2..0000000
--- a/src/CMakeFiles/las.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,40 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/las.dir/detail/index/indexcell.cpp.o"
-  "CMakeFiles/las.dir/detail/index/indexoutput.cpp.o"
-  "CMakeFiles/las.dir/chipper.cpp.o"
-  "CMakeFiles/las.dir/factory.cpp.o"
-  "CMakeFiles/las.dir/classification.cpp.o"
-  "CMakeFiles/las.dir/color.cpp.o"
-  "CMakeFiles/las.dir/dimension.cpp.o"
-  "CMakeFiles/las.dir/error.cpp.o"
-  "CMakeFiles/las.dir/filter.cpp.o"
-  "CMakeFiles/las.dir/header.cpp.o"
-  "CMakeFiles/las.dir/index.cpp.o"
-  "CMakeFiles/las.dir/point.cpp.o"
-  "CMakeFiles/las.dir/reader.cpp.o"
-  "CMakeFiles/las.dir/spatialreference.cpp.o"
-  "CMakeFiles/las.dir/schema.cpp.o"
-  "CMakeFiles/las.dir/transform.cpp.o"
-  "CMakeFiles/las.dir/utility.cpp.o"
-  "CMakeFiles/las.dir/variablerecord.cpp.o"
-  "CMakeFiles/las.dir/writer.cpp.o"
-  "CMakeFiles/las.dir/version.cpp.o"
-  "CMakeFiles/las.dir/detail/utility.cpp.o"
-  "CMakeFiles/las.dir/detail/zippoint.cpp.o"
-  "CMakeFiles/las.dir/detail/reader/header.cpp.o"
-  "CMakeFiles/las.dir/detail/reader/reader.cpp.o"
-  "CMakeFiles/las.dir/detail/reader/zipreader.cpp.o"
-  "CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o"
-  "CMakeFiles/las.dir/detail/writer/header.cpp.o"
-  "CMakeFiles/las.dir/detail/writer/point.cpp.o"
-  "CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o"
-  "CMakeFiles/las.dir/detail/writer/writer.cpp.o"
-  "../bin/Release/liblas.pdb"
-  "../bin/Release/liblas.dylib"
-  "../bin/Release/liblas.2.2.0.dylib"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang CXX)
-  INCLUDE(CMakeFiles/las.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/src/CMakeFiles/las.dir/depend.make b/src/CMakeFiles/las.dir/depend.make
deleted file mode 100644
index 28c131b..0000000
--- a/src/CMakeFiles/las.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for las.
-# This may be replaced when dependencies are built.
diff --git a/src/CMakeFiles/las.dir/flags.make b/src/CMakeFiles/las.dir/flags.make
deleted file mode 100644
index 3604a3e..0000000
--- a/src/CMakeFiles/las.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile CXX with /usr/bin/c++
-CXX_FLAGS =  -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -fPIC -I/Users/hobu/foo/clean/src/../include -I/usr/local/include   
-
-CXX_DEFINES = -Dlas_EXPORTS
-
diff --git a/src/CMakeFiles/las.dir/link.txt b/src/CMakeFiles/las.dir/link.txt
deleted file mode 100644
index acbeed2..0000000
--- a/src/CMakeFiles/las.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/c++   -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -dynamiclib -Wl,-headerpad_max_install_names   -compatibility_version 2.2.0 -o ../bin/Release/liblas.2.2.0.dylib -install_name /Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib CMakeFiles/las.dir/detail/index/indexcell.cpp.o CMakeFiles/las.dir/detail/index/indexoutput.cpp.o CMakeFiles/las.dir/chipper.cpp.o CMakeFiles/las.dir/factory.cpp.o [...]
diff --git a/src/CMakeFiles/las.dir/progress.make b/src/CMakeFiles/las.dir/progress.make
deleted file mode 100644
index 197cc32..0000000
--- a/src/CMakeFiles/las.dir/progress.make
+++ /dev/null
@@ -1,31 +0,0 @@
-CMAKE_PROGRESS_1 = 2
-CMAKE_PROGRESS_2 = 3
-CMAKE_PROGRESS_3 = 4
-CMAKE_PROGRESS_4 = 5
-CMAKE_PROGRESS_5 = 6
-CMAKE_PROGRESS_6 = 7
-CMAKE_PROGRESS_7 = 8
-CMAKE_PROGRESS_8 = 9
-CMAKE_PROGRESS_9 = 10
-CMAKE_PROGRESS_10 = 11
-CMAKE_PROGRESS_11 = 12
-CMAKE_PROGRESS_12 = 13
-CMAKE_PROGRESS_13 = 14
-CMAKE_PROGRESS_14 = 15
-CMAKE_PROGRESS_15 = 16
-CMAKE_PROGRESS_16 = 17
-CMAKE_PROGRESS_17 = 18
-CMAKE_PROGRESS_18 = 19
-CMAKE_PROGRESS_19 = 20
-CMAKE_PROGRESS_20 = 21
-CMAKE_PROGRESS_21 = 22
-CMAKE_PROGRESS_22 = 23
-CMAKE_PROGRESS_23 = 24
-CMAKE_PROGRESS_24 = 25
-CMAKE_PROGRESS_25 = 26
-CMAKE_PROGRESS_26 = 27
-CMAKE_PROGRESS_27 = 28
-CMAKE_PROGRESS_28 = 29
-CMAKE_PROGRESS_29 = 30
-CMAKE_PROGRESS_30 = 31
-
diff --git a/src/CMakeFiles/las_c.dir/DependInfo.cmake b/src/CMakeFiles/las_c.dir/DependInfo.cmake
deleted file mode 100644
index f7c4c3d..0000000
--- a/src/CMakeFiles/las_c.dir/DependInfo.cmake
+++ /dev/null
@@ -1,20 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "CXX"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_CXX
-  "/Users/hobu/foo/clean/src/c_api.cpp" "/Users/hobu/foo/clean/src/CMakeFiles/las_c.dir/c_api.cpp.o"
-  )
-SET(CMAKE_CXX_COMPILER_ID "GNU")
-
-# Pairs of files generated by the same build rule.
-SET(CMAKE_MULTIPLE_OUTPUT_PAIRS
-  "/Users/hobu/foo/clean/bin/Release/liblas_c.dylib" "/Users/hobu/foo/clean/bin/Release/liblas_c.2.2.0.dylib"
-  )
-
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/src/CMakeFiles/las_c.dir/build.make b/src/CMakeFiles/las_c.dir/build.make
deleted file mode 100644
index 4289648..0000000
--- a/src/CMakeFiles/las_c.dir/build.make
+++ /dev/null
@@ -1,108 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include src/CMakeFiles/las_c.dir/depend.make
-
-# Include the progress variables for this target.
-include src/CMakeFiles/las_c.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include src/CMakeFiles/las_c.dir/flags.make
-
-src/CMakeFiles/las_c.dir/c_api.cpp.o: src/CMakeFiles/las_c.dir/flags.make
-src/CMakeFiles/las_c.dir/c_api.cpp.o: src/c_api.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/CMakeFiles/las_c.dir/c_api.cpp.o"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/las_c.dir/c_api.cpp.o -c /Users/hobu/foo/clean/src/c_api.cpp
-
-src/CMakeFiles/las_c.dir/c_api.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/las_c.dir/c_api.cpp.i"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/src/c_api.cpp > CMakeFiles/las_c.dir/c_api.cpp.i
-
-src/CMakeFiles/las_c.dir/c_api.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/las_c.dir/c_api.cpp.s"
-	cd /Users/hobu/foo/clean/src && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/src/c_api.cpp -o CMakeFiles/las_c.dir/c_api.cpp.s
-
-src/CMakeFiles/las_c.dir/c_api.cpp.o.requires:
-.PHONY : src/CMakeFiles/las_c.dir/c_api.cpp.o.requires
-
-src/CMakeFiles/las_c.dir/c_api.cpp.o.provides: src/CMakeFiles/las_c.dir/c_api.cpp.o.requires
-	$(MAKE) -f src/CMakeFiles/las_c.dir/build.make src/CMakeFiles/las_c.dir/c_api.cpp.o.provides.build
-.PHONY : src/CMakeFiles/las_c.dir/c_api.cpp.o.provides
-
-src/CMakeFiles/las_c.dir/c_api.cpp.o.provides.build: src/CMakeFiles/las_c.dir/c_api.cpp.o
-
-# Object files for target las_c
-las_c_OBJECTS = \
-"CMakeFiles/las_c.dir/c_api.cpp.o"
-
-# External object files for target las_c
-las_c_EXTERNAL_OBJECTS =
-
-bin/Release/liblas_c.2.2.0.dylib: src/CMakeFiles/las_c.dir/c_api.cpp.o
-bin/Release/liblas_c.2.2.0.dylib: bin/Release/liblas.2.2.0.dylib
-bin/Release/liblas_c.2.2.0.dylib: /usr/local/lib/libboost_program_options.a
-bin/Release/liblas_c.2.2.0.dylib: /usr/local/lib/libboost_thread.a
-bin/Release/liblas_c.2.2.0.dylib: src/CMakeFiles/las_c.dir/build.make
-bin/Release/liblas_c.2.2.0.dylib: src/CMakeFiles/las_c.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX shared library ../bin/Release/liblas_c.dylib"
-	cd /Users/hobu/foo/clean/src && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/las_c.dir/link.txt --verbose=$(VERBOSE)
-	cd /Users/hobu/foo/clean/src && $(CMAKE_COMMAND) -E cmake_symlink_library ../bin/Release/liblas_c.2.2.0.dylib ../bin/Release/liblas_c.2.2.0.dylib ../bin/Release/liblas_c.dylib
-
-bin/Release/liblas_c.dylib: bin/Release/liblas_c.2.2.0.dylib
-
-# Rule to build all files generated by this target.
-src/CMakeFiles/las_c.dir/build: bin/Release/liblas_c.dylib
-.PHONY : src/CMakeFiles/las_c.dir/build
-
-src/CMakeFiles/las_c.dir/requires: src/CMakeFiles/las_c.dir/c_api.cpp.o.requires
-.PHONY : src/CMakeFiles/las_c.dir/requires
-
-src/CMakeFiles/las_c.dir/clean:
-	cd /Users/hobu/foo/clean/src && $(CMAKE_COMMAND) -P CMakeFiles/las_c.dir/cmake_clean.cmake
-.PHONY : src/CMakeFiles/las_c.dir/clean
-
-src/CMakeFiles/las_c.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/src /Users/hobu/foo/clean /Users/hobu/foo/clean/src /Users/hobu/foo/clean/src/CMakeFiles/las_c.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : src/CMakeFiles/las_c.dir/depend
-
diff --git a/src/CMakeFiles/las_c.dir/cmake_clean.cmake b/src/CMakeFiles/las_c.dir/cmake_clean.cmake
deleted file mode 100644
index 0a8464d..0000000
--- a/src/CMakeFiles/las_c.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/las_c.dir/c_api.cpp.o"
-  "../bin/Release/liblas_c.pdb"
-  "../bin/Release/liblas_c.dylib"
-  "../bin/Release/liblas_c.2.2.0.dylib"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang CXX)
-  INCLUDE(CMakeFiles/las_c.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/src/CMakeFiles/las_c.dir/depend.make b/src/CMakeFiles/las_c.dir/depend.make
deleted file mode 100644
index 8912e1b..0000000
--- a/src/CMakeFiles/las_c.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for las_c.
-# This may be replaced when dependencies are built.
diff --git a/src/CMakeFiles/las_c.dir/flags.make b/src/CMakeFiles/las_c.dir/flags.make
deleted file mode 100644
index 8d8f056..0000000
--- a/src/CMakeFiles/las_c.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile CXX with /usr/bin/c++
-CXX_FLAGS =  -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -fPIC -I/Users/hobu/foo/clean/src/../include -I/usr/local/include   
-
-CXX_DEFINES = -Dlas_c_EXPORTS
-
diff --git a/src/CMakeFiles/las_c.dir/link.txt b/src/CMakeFiles/las_c.dir/link.txt
deleted file mode 100644
index ddb726f..0000000
--- a/src/CMakeFiles/las_c.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/c++   -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -dynamiclib -Wl,-headerpad_max_install_names   -compatibility_version 2.2.0 -o ../bin/Release/liblas_c.2.2.0.dylib -install_name /Users/hobu/foo/clean/bin/Release/liblas_c.2.2.0.dylib CMakeFiles/las_c.dir/c_api.cpp.o -L/usr/local/lib ../bin/Release/liblas.2.2.0.dylib /usr/local/lib/libboost_program_options.a /usr/local/lib/libboost_thread.a 
diff --git a/src/CMakeFiles/las_c.dir/progress.make b/src/CMakeFiles/las_c.dir/progress.make
deleted file mode 100644
index 764444f..0000000
--- a/src/CMakeFiles/las_c.dir/progress.make
+++ /dev/null
@@ -1,2 +0,0 @@
-CMAKE_PROGRESS_1 = 40
-
diff --git a/src/CMakeFiles/progress.marks b/src/CMakeFiles/progress.marks
deleted file mode 100644
index e85087a..0000000
--- a/src/CMakeFiles/progress.marks
+++ /dev/null
@@ -1 +0,0 @@
-31
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
old mode 100644
new mode 100755
index a4486b0..e4f6ba2
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -24,7 +24,6 @@ set(LIBLAS_HPP
   ${LIBLAS_HEADERS_DIR}/exception.hpp
   ${LIBLAS_HEADERS_DIR}/export.hpp
   ${LIBLAS_HEADERS_DIR}/factory.hpp 
-  ${LIBLAS_HEADERS_DIR}/guid.hpp
   ${LIBLAS_HEADERS_DIR}/iterator.hpp
   ${LIBLAS_HEADERS_DIR}/bounds.hpp
   ${LIBLAS_HEADERS_DIR}/classification.hpp
@@ -223,7 +222,6 @@ add_library(${LIBLAS_LIB_NAME} SHARED ${LIBLAS_SOURCES})
 add_library(${LIBLAS_C_LIB_NAME} SHARED ${LIBLAS_C_SOURCES})
 
 target_link_libraries(${LIBLAS_LIB_NAME}
-  ${LIBLAS_LIB_NAME}
   ${TIFF_LIBRARY}
   ${GEOTIFF_LIBRARY}
   ${GDAL_LIBRARY}
@@ -231,33 +229,35 @@ target_link_libraries(${LIBLAS_LIB_NAME}
   ${Boost_LIBRARIES})
 
 target_link_libraries(${LIBLAS_C_LIB_NAME}
-  ${LIBLAS_LIB_NAME}
-  ${TIFF_LIBRARY}
-  ${GEOTIFF_LIBRARY}
-  ${GDAL_LIBRARY}
-  ${LASZIP_LIBRARY}
-  ${Boost_LIBRARIES})
+  ${LIBLAS_LIB_NAME} )
 
 set_target_properties(${LIBLAS_LIB_NAME}
-  PROPERTIES SOVERSION "${LIBLAS_LIB_SOVERSION}" )
+  PROPERTIES
+  VERSION "${LIBLAS_LIB_VERSION}"
+  SOVERSION "${LIBLAS_LIB_SOVERSION}")
 set_target_properties(${LIBLAS_C_LIB_NAME}
-  PROPERTIES SOVERSION "${LIBLAS_C_LIB_SOVERSION}" )
+  PROPERTIES
+  VERSION "${LIBLAS_C_LIB_VERSION}"
+  SOVERSION "${LIBLAS_C_LIB_SOVERSION}")
 
 if (APPLE)
   set_target_properties(
     ${LIBLAS_C_LIB_NAME}
     PROPERTIES
-    INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib")
+    INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib" BUILD_WITH_INSTALL_RPATH OFF)
   set_target_properties(
     ${LIBLAS_LIB_NAME}
     PROPERTIES
-    INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib")
+    INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib" BUILD_WITH_INSTALL_RPATH OFF)
 endif()
 
 ###############################################################################
-# Targets installation
+# Targets installation.  The EXPORT clause specifies a depends target
+# which packages up information about the libraries for
+# liblas-config.cmake.
 
 install(TARGETS ${LIBLAS_LIB_NAME} ${LIBLAS_C_LIB_NAME}
+  EXPORT depends
   RUNTIME DESTINATION ${LIBLAS_BIN_DIR}
   LIBRARY DESTINATION ${LIBLAS_LIB_DIR}
   ARCHIVE DESTINATION ${LIBLAS_LIB_DIR})
diff --git a/src/Makefile b/src/Makefile
deleted file mode 100644
index 6d64fc5..0000000
--- a/src/Makefile
+++ /dev/null
@@ -1,1067 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# Default target executed when no arguments are given to make.
-default_target: all
-.PHONY : default_target
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-#=============================================================================
-# Targets provided globally by CMake.
-
-# Special rule for the target edit_cache
-edit_cache:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
-.PHONY : edit_cache
-
-# Special rule for the target edit_cache
-edit_cache/fast: edit_cache
-.PHONY : edit_cache/fast
-
-# Special rule for the target install
-install: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
-.PHONY : install
-
-# Special rule for the target install
-install/fast: preinstall/fast
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
-.PHONY : install/fast
-
-# Special rule for the target install/local
-install/local: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
-.PHONY : install/local
-
-# Special rule for the target install/local
-install/local/fast: install/local
-.PHONY : install/local/fast
-
-# Special rule for the target install/strip
-install/strip: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
-.PHONY : install/strip
-
-# Special rule for the target install/strip
-install/strip/fast: install/strip
-.PHONY : install/strip/fast
-
-# Special rule for the target list_install_components
-list_install_components:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
-.PHONY : list_install_components
-
-# Special rule for the target list_install_components
-list_install_components/fast: list_install_components
-.PHONY : list_install_components/fast
-
-# Special rule for the target package
-package: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..."
-	cd /Users/hobu/foo/clean && "/Applications/CMake 2.8-6.app/Contents/bin/cpack" --config ./CPackConfig.cmake
-.PHONY : package
-
-# Special rule for the target package
-package/fast: package
-.PHONY : package/fast
-
-# Special rule for the target package_source
-package_source:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..."
-	cd /Users/hobu/foo/clean && "/Applications/CMake 2.8-6.app/Contents/bin/cpack" --config ./CPackSourceConfig.cmake /Users/hobu/foo/clean/CPackSourceConfig.cmake
-.PHONY : package_source
-
-# Special rule for the target package_source
-package_source/fast: package_source
-.PHONY : package_source/fast
-
-# Special rule for the target rebuild_cache
-rebuild_cache:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
-.PHONY : rebuild_cache
-
-# Special rule for the target rebuild_cache
-rebuild_cache/fast: rebuild_cache
-.PHONY : rebuild_cache/fast
-
-# Special rule for the target test
-test:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running tests..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/ctest" --force-new-ctest-process $(ARGS)
-.PHONY : test
-
-# Special rule for the target test
-test/fast: test
-.PHONY : test/fast
-
-# The main all target
-all: cmake_check_build_system
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles /Users/hobu/foo/clean/src/CMakeFiles/progress.marks
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 src/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : all
-
-# The main clean target
-clean:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 src/clean
-.PHONY : clean
-
-# The main clean target
-clean/fast: clean
-.PHONY : clean/fast
-
-# Prepare targets for installation.
-preinstall: all
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 src/preinstall
-.PHONY : preinstall
-
-# Prepare targets for installation.
-preinstall/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 src/preinstall
-.PHONY : preinstall/fast
-
-# clear depends
-depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
-.PHONY : depend
-
-# Convenience name for target.
-src/CMakeFiles/las.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 src/CMakeFiles/las.dir/rule
-.PHONY : src/CMakeFiles/las.dir/rule
-
-# Convenience name for target.
-las: src/CMakeFiles/las.dir/rule
-.PHONY : las
-
-# fast build rule for target.
-las/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/build
-.PHONY : las/fast
-
-# Convenience name for target.
-src/CMakeFiles/las_c.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 src/CMakeFiles/las_c.dir/rule
-.PHONY : src/CMakeFiles/las_c.dir/rule
-
-# Convenience name for target.
-las_c: src/CMakeFiles/las_c.dir/rule
-.PHONY : las_c
-
-# fast build rule for target.
-las_c/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las_c.dir/build.make src/CMakeFiles/las_c.dir/build
-.PHONY : las_c/fast
-
-c_api.o: c_api.cpp.o
-.PHONY : c_api.o
-
-# target to build an object file
-c_api.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las_c.dir/build.make src/CMakeFiles/las_c.dir/c_api.cpp.o
-.PHONY : c_api.cpp.o
-
-c_api.i: c_api.cpp.i
-.PHONY : c_api.i
-
-# target to preprocess a source file
-c_api.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las_c.dir/build.make src/CMakeFiles/las_c.dir/c_api.cpp.i
-.PHONY : c_api.cpp.i
-
-c_api.s: c_api.cpp.s
-.PHONY : c_api.s
-
-# target to generate assembly for a file
-c_api.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las_c.dir/build.make src/CMakeFiles/las_c.dir/c_api.cpp.s
-.PHONY : c_api.cpp.s
-
-chipper.o: chipper.cpp.o
-.PHONY : chipper.o
-
-# target to build an object file
-chipper.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/chipper.cpp.o
-.PHONY : chipper.cpp.o
-
-chipper.i: chipper.cpp.i
-.PHONY : chipper.i
-
-# target to preprocess a source file
-chipper.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/chipper.cpp.i
-.PHONY : chipper.cpp.i
-
-chipper.s: chipper.cpp.s
-.PHONY : chipper.s
-
-# target to generate assembly for a file
-chipper.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/chipper.cpp.s
-.PHONY : chipper.cpp.s
-
-classification.o: classification.cpp.o
-.PHONY : classification.o
-
-# target to build an object file
-classification.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/classification.cpp.o
-.PHONY : classification.cpp.o
-
-classification.i: classification.cpp.i
-.PHONY : classification.i
-
-# target to preprocess a source file
-classification.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/classification.cpp.i
-.PHONY : classification.cpp.i
-
-classification.s: classification.cpp.s
-.PHONY : classification.s
-
-# target to generate assembly for a file
-classification.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/classification.cpp.s
-.PHONY : classification.cpp.s
-
-color.o: color.cpp.o
-.PHONY : color.o
-
-# target to build an object file
-color.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/color.cpp.o
-.PHONY : color.cpp.o
-
-color.i: color.cpp.i
-.PHONY : color.i
-
-# target to preprocess a source file
-color.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/color.cpp.i
-.PHONY : color.cpp.i
-
-color.s: color.cpp.s
-.PHONY : color.s
-
-# target to generate assembly for a file
-color.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/color.cpp.s
-.PHONY : color.cpp.s
-
-detail/index/indexcell.o: detail/index/indexcell.cpp.o
-.PHONY : detail/index/indexcell.o
-
-# target to build an object file
-detail/index/indexcell.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o
-.PHONY : detail/index/indexcell.cpp.o
-
-detail/index/indexcell.i: detail/index/indexcell.cpp.i
-.PHONY : detail/index/indexcell.i
-
-# target to preprocess a source file
-detail/index/indexcell.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/index/indexcell.cpp.i
-.PHONY : detail/index/indexcell.cpp.i
-
-detail/index/indexcell.s: detail/index/indexcell.cpp.s
-.PHONY : detail/index/indexcell.s
-
-# target to generate assembly for a file
-detail/index/indexcell.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/index/indexcell.cpp.s
-.PHONY : detail/index/indexcell.cpp.s
-
-detail/index/indexoutput.o: detail/index/indexoutput.cpp.o
-.PHONY : detail/index/indexoutput.o
-
-# target to build an object file
-detail/index/indexoutput.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.o
-.PHONY : detail/index/indexoutput.cpp.o
-
-detail/index/indexoutput.i: detail/index/indexoutput.cpp.i
-.PHONY : detail/index/indexoutput.i
-
-# target to preprocess a source file
-detail/index/indexoutput.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.i
-.PHONY : detail/index/indexoutput.cpp.i
-
-detail/index/indexoutput.s: detail/index/indexoutput.cpp.s
-.PHONY : detail/index/indexoutput.s
-
-# target to generate assembly for a file
-detail/index/indexoutput.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/index/indexoutput.cpp.s
-.PHONY : detail/index/indexoutput.cpp.s
-
-detail/reader/cachedreader.o: detail/reader/cachedreader.cpp.o
-.PHONY : detail/reader/cachedreader.o
-
-# target to build an object file
-detail/reader/cachedreader.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.o
-.PHONY : detail/reader/cachedreader.cpp.o
-
-detail/reader/cachedreader.i: detail/reader/cachedreader.cpp.i
-.PHONY : detail/reader/cachedreader.i
-
-# target to preprocess a source file
-detail/reader/cachedreader.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.i
-.PHONY : detail/reader/cachedreader.cpp.i
-
-detail/reader/cachedreader.s: detail/reader/cachedreader.cpp.s
-.PHONY : detail/reader/cachedreader.s
-
-# target to generate assembly for a file
-detail/reader/cachedreader.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/cachedreader.cpp.s
-.PHONY : detail/reader/cachedreader.cpp.s
-
-detail/reader/header.o: detail/reader/header.cpp.o
-.PHONY : detail/reader/header.o
-
-# target to build an object file
-detail/reader/header.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/header.cpp.o
-.PHONY : detail/reader/header.cpp.o
-
-detail/reader/header.i: detail/reader/header.cpp.i
-.PHONY : detail/reader/header.i
-
-# target to preprocess a source file
-detail/reader/header.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/header.cpp.i
-.PHONY : detail/reader/header.cpp.i
-
-detail/reader/header.s: detail/reader/header.cpp.s
-.PHONY : detail/reader/header.s
-
-# target to generate assembly for a file
-detail/reader/header.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/header.cpp.s
-.PHONY : detail/reader/header.cpp.s
-
-detail/reader/reader.o: detail/reader/reader.cpp.o
-.PHONY : detail/reader/reader.o
-
-# target to build an object file
-detail/reader/reader.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/reader.cpp.o
-.PHONY : detail/reader/reader.cpp.o
-
-detail/reader/reader.i: detail/reader/reader.cpp.i
-.PHONY : detail/reader/reader.i
-
-# target to preprocess a source file
-detail/reader/reader.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/reader.cpp.i
-.PHONY : detail/reader/reader.cpp.i
-
-detail/reader/reader.s: detail/reader/reader.cpp.s
-.PHONY : detail/reader/reader.s
-
-# target to generate assembly for a file
-detail/reader/reader.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/reader.cpp.s
-.PHONY : detail/reader/reader.cpp.s
-
-detail/reader/zipreader.o: detail/reader/zipreader.cpp.o
-.PHONY : detail/reader/zipreader.o
-
-# target to build an object file
-detail/reader/zipreader.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.o
-.PHONY : detail/reader/zipreader.cpp.o
-
-detail/reader/zipreader.i: detail/reader/zipreader.cpp.i
-.PHONY : detail/reader/zipreader.i
-
-# target to preprocess a source file
-detail/reader/zipreader.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.i
-.PHONY : detail/reader/zipreader.cpp.i
-
-detail/reader/zipreader.s: detail/reader/zipreader.cpp.s
-.PHONY : detail/reader/zipreader.s
-
-# target to generate assembly for a file
-detail/reader/zipreader.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/reader/zipreader.cpp.s
-.PHONY : detail/reader/zipreader.cpp.s
-
-detail/utility.o: detail/utility.cpp.o
-.PHONY : detail/utility.o
-
-# target to build an object file
-detail/utility.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/utility.cpp.o
-.PHONY : detail/utility.cpp.o
-
-detail/utility.i: detail/utility.cpp.i
-.PHONY : detail/utility.i
-
-# target to preprocess a source file
-detail/utility.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/utility.cpp.i
-.PHONY : detail/utility.cpp.i
-
-detail/utility.s: detail/utility.cpp.s
-.PHONY : detail/utility.s
-
-# target to generate assembly for a file
-detail/utility.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/utility.cpp.s
-.PHONY : detail/utility.cpp.s
-
-detail/writer/header.o: detail/writer/header.cpp.o
-.PHONY : detail/writer/header.o
-
-# target to build an object file
-detail/writer/header.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/header.cpp.o
-.PHONY : detail/writer/header.cpp.o
-
-detail/writer/header.i: detail/writer/header.cpp.i
-.PHONY : detail/writer/header.i
-
-# target to preprocess a source file
-detail/writer/header.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/header.cpp.i
-.PHONY : detail/writer/header.cpp.i
-
-detail/writer/header.s: detail/writer/header.cpp.s
-.PHONY : detail/writer/header.s
-
-# target to generate assembly for a file
-detail/writer/header.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/header.cpp.s
-.PHONY : detail/writer/header.cpp.s
-
-detail/writer/point.o: detail/writer/point.cpp.o
-.PHONY : detail/writer/point.o
-
-# target to build an object file
-detail/writer/point.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/point.cpp.o
-.PHONY : detail/writer/point.cpp.o
-
-detail/writer/point.i: detail/writer/point.cpp.i
-.PHONY : detail/writer/point.i
-
-# target to preprocess a source file
-detail/writer/point.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/point.cpp.i
-.PHONY : detail/writer/point.cpp.i
-
-detail/writer/point.s: detail/writer/point.cpp.s
-.PHONY : detail/writer/point.s
-
-# target to generate assembly for a file
-detail/writer/point.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/point.cpp.s
-.PHONY : detail/writer/point.cpp.s
-
-detail/writer/writer.o: detail/writer/writer.cpp.o
-.PHONY : detail/writer/writer.o
-
-# target to build an object file
-detail/writer/writer.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/writer.cpp.o
-.PHONY : detail/writer/writer.cpp.o
-
-detail/writer/writer.i: detail/writer/writer.cpp.i
-.PHONY : detail/writer/writer.i
-
-# target to preprocess a source file
-detail/writer/writer.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/writer.cpp.i
-.PHONY : detail/writer/writer.cpp.i
-
-detail/writer/writer.s: detail/writer/writer.cpp.s
-.PHONY : detail/writer/writer.s
-
-# target to generate assembly for a file
-detail/writer/writer.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/writer.cpp.s
-.PHONY : detail/writer/writer.cpp.s
-
-detail/writer/zipwriter.o: detail/writer/zipwriter.cpp.o
-.PHONY : detail/writer/zipwriter.o
-
-# target to build an object file
-detail/writer/zipwriter.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.o
-.PHONY : detail/writer/zipwriter.cpp.o
-
-detail/writer/zipwriter.i: detail/writer/zipwriter.cpp.i
-.PHONY : detail/writer/zipwriter.i
-
-# target to preprocess a source file
-detail/writer/zipwriter.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.i
-.PHONY : detail/writer/zipwriter.cpp.i
-
-detail/writer/zipwriter.s: detail/writer/zipwriter.cpp.s
-.PHONY : detail/writer/zipwriter.s
-
-# target to generate assembly for a file
-detail/writer/zipwriter.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/writer/zipwriter.cpp.s
-.PHONY : detail/writer/zipwriter.cpp.s
-
-detail/zippoint.o: detail/zippoint.cpp.o
-.PHONY : detail/zippoint.o
-
-# target to build an object file
-detail/zippoint.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/zippoint.cpp.o
-.PHONY : detail/zippoint.cpp.o
-
-detail/zippoint.i: detail/zippoint.cpp.i
-.PHONY : detail/zippoint.i
-
-# target to preprocess a source file
-detail/zippoint.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/zippoint.cpp.i
-.PHONY : detail/zippoint.cpp.i
-
-detail/zippoint.s: detail/zippoint.cpp.s
-.PHONY : detail/zippoint.s
-
-# target to generate assembly for a file
-detail/zippoint.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/detail/zippoint.cpp.s
-.PHONY : detail/zippoint.cpp.s
-
-dimension.o: dimension.cpp.o
-.PHONY : dimension.o
-
-# target to build an object file
-dimension.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/dimension.cpp.o
-.PHONY : dimension.cpp.o
-
-dimension.i: dimension.cpp.i
-.PHONY : dimension.i
-
-# target to preprocess a source file
-dimension.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/dimension.cpp.i
-.PHONY : dimension.cpp.i
-
-dimension.s: dimension.cpp.s
-.PHONY : dimension.s
-
-# target to generate assembly for a file
-dimension.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/dimension.cpp.s
-.PHONY : dimension.cpp.s
-
-error.o: error.cpp.o
-.PHONY : error.o
-
-# target to build an object file
-error.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/error.cpp.o
-.PHONY : error.cpp.o
-
-error.i: error.cpp.i
-.PHONY : error.i
-
-# target to preprocess a source file
-error.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/error.cpp.i
-.PHONY : error.cpp.i
-
-error.s: error.cpp.s
-.PHONY : error.s
-
-# target to generate assembly for a file
-error.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/error.cpp.s
-.PHONY : error.cpp.s
-
-factory.o: factory.cpp.o
-.PHONY : factory.o
-
-# target to build an object file
-factory.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/factory.cpp.o
-.PHONY : factory.cpp.o
-
-factory.i: factory.cpp.i
-.PHONY : factory.i
-
-# target to preprocess a source file
-factory.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/factory.cpp.i
-.PHONY : factory.cpp.i
-
-factory.s: factory.cpp.s
-.PHONY : factory.s
-
-# target to generate assembly for a file
-factory.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/factory.cpp.s
-.PHONY : factory.cpp.s
-
-filter.o: filter.cpp.o
-.PHONY : filter.o
-
-# target to build an object file
-filter.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/filter.cpp.o
-.PHONY : filter.cpp.o
-
-filter.i: filter.cpp.i
-.PHONY : filter.i
-
-# target to preprocess a source file
-filter.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/filter.cpp.i
-.PHONY : filter.cpp.i
-
-filter.s: filter.cpp.s
-.PHONY : filter.s
-
-# target to generate assembly for a file
-filter.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/filter.cpp.s
-.PHONY : filter.cpp.s
-
-header.o: header.cpp.o
-.PHONY : header.o
-
-# target to build an object file
-header.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/header.cpp.o
-.PHONY : header.cpp.o
-
-header.i: header.cpp.i
-.PHONY : header.i
-
-# target to preprocess a source file
-header.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/header.cpp.i
-.PHONY : header.cpp.i
-
-header.s: header.cpp.s
-.PHONY : header.s
-
-# target to generate assembly for a file
-header.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/header.cpp.s
-.PHONY : header.cpp.s
-
-index.o: index.cpp.o
-.PHONY : index.o
-
-# target to build an object file
-index.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/index.cpp.o
-.PHONY : index.cpp.o
-
-index.i: index.cpp.i
-.PHONY : index.i
-
-# target to preprocess a source file
-index.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/index.cpp.i
-.PHONY : index.cpp.i
-
-index.s: index.cpp.s
-.PHONY : index.s
-
-# target to generate assembly for a file
-index.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/index.cpp.s
-.PHONY : index.cpp.s
-
-point.o: point.cpp.o
-.PHONY : point.o
-
-# target to build an object file
-point.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/point.cpp.o
-.PHONY : point.cpp.o
-
-point.i: point.cpp.i
-.PHONY : point.i
-
-# target to preprocess a source file
-point.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/point.cpp.i
-.PHONY : point.cpp.i
-
-point.s: point.cpp.s
-.PHONY : point.s
-
-# target to generate assembly for a file
-point.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/point.cpp.s
-.PHONY : point.cpp.s
-
-reader.o: reader.cpp.o
-.PHONY : reader.o
-
-# target to build an object file
-reader.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/reader.cpp.o
-.PHONY : reader.cpp.o
-
-reader.i: reader.cpp.i
-.PHONY : reader.i
-
-# target to preprocess a source file
-reader.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/reader.cpp.i
-.PHONY : reader.cpp.i
-
-reader.s: reader.cpp.s
-.PHONY : reader.s
-
-# target to generate assembly for a file
-reader.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/reader.cpp.s
-.PHONY : reader.cpp.s
-
-schema.o: schema.cpp.o
-.PHONY : schema.o
-
-# target to build an object file
-schema.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/schema.cpp.o
-.PHONY : schema.cpp.o
-
-schema.i: schema.cpp.i
-.PHONY : schema.i
-
-# target to preprocess a source file
-schema.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/schema.cpp.i
-.PHONY : schema.cpp.i
-
-schema.s: schema.cpp.s
-.PHONY : schema.s
-
-# target to generate assembly for a file
-schema.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/schema.cpp.s
-.PHONY : schema.cpp.s
-
-spatialreference.o: spatialreference.cpp.o
-.PHONY : spatialreference.o
-
-# target to build an object file
-spatialreference.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/spatialreference.cpp.o
-.PHONY : spatialreference.cpp.o
-
-spatialreference.i: spatialreference.cpp.i
-.PHONY : spatialreference.i
-
-# target to preprocess a source file
-spatialreference.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/spatialreference.cpp.i
-.PHONY : spatialreference.cpp.i
-
-spatialreference.s: spatialreference.cpp.s
-.PHONY : spatialreference.s
-
-# target to generate assembly for a file
-spatialreference.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/spatialreference.cpp.s
-.PHONY : spatialreference.cpp.s
-
-transform.o: transform.cpp.o
-.PHONY : transform.o
-
-# target to build an object file
-transform.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/transform.cpp.o
-.PHONY : transform.cpp.o
-
-transform.i: transform.cpp.i
-.PHONY : transform.i
-
-# target to preprocess a source file
-transform.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/transform.cpp.i
-.PHONY : transform.cpp.i
-
-transform.s: transform.cpp.s
-.PHONY : transform.s
-
-# target to generate assembly for a file
-transform.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/transform.cpp.s
-.PHONY : transform.cpp.s
-
-utility.o: utility.cpp.o
-.PHONY : utility.o
-
-# target to build an object file
-utility.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/utility.cpp.o
-.PHONY : utility.cpp.o
-
-utility.i: utility.cpp.i
-.PHONY : utility.i
-
-# target to preprocess a source file
-utility.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/utility.cpp.i
-.PHONY : utility.cpp.i
-
-utility.s: utility.cpp.s
-.PHONY : utility.s
-
-# target to generate assembly for a file
-utility.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/utility.cpp.s
-.PHONY : utility.cpp.s
-
-variablerecord.o: variablerecord.cpp.o
-.PHONY : variablerecord.o
-
-# target to build an object file
-variablerecord.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/variablerecord.cpp.o
-.PHONY : variablerecord.cpp.o
-
-variablerecord.i: variablerecord.cpp.i
-.PHONY : variablerecord.i
-
-# target to preprocess a source file
-variablerecord.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/variablerecord.cpp.i
-.PHONY : variablerecord.cpp.i
-
-variablerecord.s: variablerecord.cpp.s
-.PHONY : variablerecord.s
-
-# target to generate assembly for a file
-variablerecord.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/variablerecord.cpp.s
-.PHONY : variablerecord.cpp.s
-
-version.o: version.cpp.o
-.PHONY : version.o
-
-# target to build an object file
-version.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/version.cpp.o
-.PHONY : version.cpp.o
-
-version.i: version.cpp.i
-.PHONY : version.i
-
-# target to preprocess a source file
-version.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/version.cpp.i
-.PHONY : version.cpp.i
-
-version.s: version.cpp.s
-.PHONY : version.s
-
-# target to generate assembly for a file
-version.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/version.cpp.s
-.PHONY : version.cpp.s
-
-writer.o: writer.cpp.o
-.PHONY : writer.o
-
-# target to build an object file
-writer.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/writer.cpp.o
-.PHONY : writer.cpp.o
-
-writer.i: writer.cpp.i
-.PHONY : writer.i
-
-# target to preprocess a source file
-writer.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/writer.cpp.i
-.PHONY : writer.cpp.i
-
-writer.s: writer.cpp.s
-.PHONY : writer.s
-
-# target to generate assembly for a file
-writer.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/writer.cpp.s
-.PHONY : writer.cpp.s
-
-# Help Target
-help:
-	@echo "The following are some of the valid targets for this Makefile:"
-	@echo "... all (the default if no target is provided)"
-	@echo "... clean"
-	@echo "... depend"
-	@echo "... edit_cache"
-	@echo "... install"
-	@echo "... install/local"
-	@echo "... install/strip"
-	@echo "... las"
-	@echo "... las_c"
-	@echo "... list_install_components"
-	@echo "... package"
-	@echo "... package_source"
-	@echo "... rebuild_cache"
-	@echo "... test"
-	@echo "... c_api.o"
-	@echo "... c_api.i"
-	@echo "... c_api.s"
-	@echo "... chipper.o"
-	@echo "... chipper.i"
-	@echo "... chipper.s"
-	@echo "... classification.o"
-	@echo "... classification.i"
-	@echo "... classification.s"
-	@echo "... color.o"
-	@echo "... color.i"
-	@echo "... color.s"
-	@echo "... detail/index/indexcell.o"
-	@echo "... detail/index/indexcell.i"
-	@echo "... detail/index/indexcell.s"
-	@echo "... detail/index/indexoutput.o"
-	@echo "... detail/index/indexoutput.i"
-	@echo "... detail/index/indexoutput.s"
-	@echo "... detail/reader/cachedreader.o"
-	@echo "... detail/reader/cachedreader.i"
-	@echo "... detail/reader/cachedreader.s"
-	@echo "... detail/reader/header.o"
-	@echo "... detail/reader/header.i"
-	@echo "... detail/reader/header.s"
-	@echo "... detail/reader/reader.o"
-	@echo "... detail/reader/reader.i"
-	@echo "... detail/reader/reader.s"
-	@echo "... detail/reader/zipreader.o"
-	@echo "... detail/reader/zipreader.i"
-	@echo "... detail/reader/zipreader.s"
-	@echo "... detail/utility.o"
-	@echo "... detail/utility.i"
-	@echo "... detail/utility.s"
-	@echo "... detail/writer/header.o"
-	@echo "... detail/writer/header.i"
-	@echo "... detail/writer/header.s"
-	@echo "... detail/writer/point.o"
-	@echo "... detail/writer/point.i"
-	@echo "... detail/writer/point.s"
-	@echo "... detail/writer/writer.o"
-	@echo "... detail/writer/writer.i"
-	@echo "... detail/writer/writer.s"
-	@echo "... detail/writer/zipwriter.o"
-	@echo "... detail/writer/zipwriter.i"
-	@echo "... detail/writer/zipwriter.s"
-	@echo "... detail/zippoint.o"
-	@echo "... detail/zippoint.i"
-	@echo "... detail/zippoint.s"
-	@echo "... dimension.o"
-	@echo "... dimension.i"
-	@echo "... dimension.s"
-	@echo "... error.o"
-	@echo "... error.i"
-	@echo "... error.s"
-	@echo "... factory.o"
-	@echo "... factory.i"
-	@echo "... factory.s"
-	@echo "... filter.o"
-	@echo "... filter.i"
-	@echo "... filter.s"
-	@echo "... header.o"
-	@echo "... header.i"
-	@echo "... header.s"
-	@echo "... index.o"
-	@echo "... index.i"
-	@echo "... index.s"
-	@echo "... point.o"
-	@echo "... point.i"
-	@echo "... point.s"
-	@echo "... reader.o"
-	@echo "... reader.i"
-	@echo "... reader.s"
-	@echo "... schema.o"
-	@echo "... schema.i"
-	@echo "... schema.s"
-	@echo "... spatialreference.o"
-	@echo "... spatialreference.i"
-	@echo "... spatialreference.s"
-	@echo "... transform.o"
-	@echo "... transform.i"
-	@echo "... transform.s"
-	@echo "... utility.o"
-	@echo "... utility.i"
-	@echo "... utility.s"
-	@echo "... variablerecord.o"
-	@echo "... variablerecord.i"
-	@echo "... variablerecord.s"
-	@echo "... version.o"
-	@echo "... version.i"
-	@echo "... version.s"
-	@echo "... writer.o"
-	@echo "... writer.i"
-	@echo "... writer.s"
-.PHONY : help
-
-
-
-#=============================================================================
-# Special targets to cleanup operation of make.
-
-# Special rule to run CMake to check the build system integrity.
-# No rule that depends on this can have commands that come from listfiles
-# because they might be regenerated.
-cmake_check_build_system:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
-.PHONY : cmake_check_build_system
-
diff --git a/src/Version.rc b/src/Version.rc
old mode 100644
new mode 100755
diff --git a/src/c_api.cpp b/src/c_api.cpp
old mode 100644
new mode 100755
index 924d36d..a70fe74
--- a/src/c_api.cpp
+++ b/src/c_api.cpp
@@ -57,6 +57,10 @@
 #include <liblas/detail/reader/cachedreader.hpp>
 #include <liblas/external/property_tree/xml_parser.hpp>
 
+#include <boost/uuid/uuid.hpp>
+#include <boost/uuid/uuid_io.hpp>
+#include <boost/uuid/uuid_generators.hpp>
+
 typedef struct LASWriterHS *LASWriterH;
 typedef struct LASReaderHS *LASReaderH;
 typedef struct LASPointHS *LASPointH;
@@ -68,8 +72,8 @@ typedef struct LASSRSHS *LASSRSH;
 typedef struct LASSchemaHS *LASSchemaH;
 typedef struct LASFilterHS *LASFilterH;
 
-// boost
-#include <boost/cstdint.hpp>
+
+#include <stdint.h>
 // std
 #include <cstdio>
 #include <bitset>
@@ -352,7 +356,7 @@ LAS_DLL void LASReader_Destroy(LASReaderH hReader)
 
 
 
-LAS_DLL const LASPointH LASReader_GetNextPoint(const LASReaderH hReader)
+LAS_DLL LASPointH LASReader_GetNextPoint(const LASReaderH hReader)
 {
     VALIDATE_LAS_POINTER1(hReader, "LASReader_GetNextPoint", NULL);
 
@@ -373,7 +377,7 @@ LAS_DLL const LASPointH LASReader_GetNextPoint(const LASReaderH hReader)
     return NULL;
 }
 
-LAS_DLL const LASPointH LASReader_GetPointAt(const LASReaderH hReader, boost::uint32_t position)
+LAS_DLL LASPointH LASReader_GetPointAt(const LASReaderH hReader, uint32_t position)
 {
     VALIDATE_LAS_POINTER1(hReader, "LASReader_GetPointAt", NULL);
 
@@ -395,7 +399,7 @@ LAS_DLL const LASPointH LASReader_GetPointAt(const LASReaderH hReader, boost::ui
 
 }
 
-LAS_DLL LASErrorEnum LASReader_Seek(LASReaderH hReader, boost::uint32_t position)
+LAS_DLL LASErrorEnum LASReader_Seek(LASReaderH hReader, uint32_t position)
 {
     VALIDATE_LAS_POINTER1(hReader, "LASReader_Seek", LE_None);
 
@@ -527,7 +531,7 @@ LAS_DLL LASHeaderH LASHeader_Create(void) {
 }
 
 LAS_DLL LASPointH LASPoint_Create(void) {
-        return (LASPointH) new liblas::Point();
+        return (LASPointH) new liblas::Point(&liblas::DefaultHeader::get());
 }
 
 LAS_DLL LASPointH LASPoint_Copy(const LASPointH hPoint) {
@@ -563,19 +567,19 @@ LAS_DLL LASErrorEnum LASPoint_SetData(LASPointH hPoint, unsigned char* data) {
     
     try {
         liblas::Point* p = ((liblas::Point*) hPoint);
-        boost::uint16_t size = 0;
+        uint16_t size = 0;
 
         liblas::Header const* h = p->GetHeader();
         size = h->GetDataRecordLength();
         
-        std::vector<boost::uint8_t> & d = p->GetData();
+        std::vector<uint8_t> & d = p->GetData();
         if (d.size() != size)
         {
             d.resize(size);
-            d.assign(static_cast<boost::uint32_t>(0), d.size());
+            d.assign(static_cast<uint32_t>(0), d.size());
         }
                 
-        for (boost::uint16_t i=0; i < size; i++) {
+        for (uint16_t i=0; i < size; i++) {
             d[i] = data[i];
         }
     }
@@ -588,20 +592,20 @@ LAS_DLL LASErrorEnum LASPoint_SetData(LASPointH hPoint, unsigned char* data) {
     return LE_None;
 }
 
-LAS_DLL LASErrorEnum LASPoint_GetData( const LASPointH hPoint, boost::uint8_t* data) {
+LAS_DLL LASErrorEnum LASPoint_GetData( const LASPointH hPoint, uint8_t* data) {
     
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetData", LE_Failure);
     VALIDATE_LAS_POINTER1(data, "LASPoint_GetData", LE_Failure);
     
     try {
         liblas::Point* p = ((liblas::Point*) hPoint);
-        boost::uint16_t size = 0;
-        std::vector<boost::uint8_t> const& d = p->GetData();
+        uint16_t size = 0;
+        std::vector<uint8_t> const& d = p->GetData();
 
         liblas::Header const* h = p->GetHeader();
         size = h->GetDataRecordLength();
 
-        for (boost::uint16_t i=0; i < size; i++) {
+        for (uint16_t i=0; i < size; i++) {
             data[i] = d[i];
         }
     }
@@ -645,7 +649,7 @@ LAS_DLL LASErrorEnum LASPoint_SetX(LASPointH hPoint, double value) {
 
 }
 
-LAS_DLL boost::int32_t LASPoint_GetRawX(const LASPointH hPoint) {
+LAS_DLL int32_t LASPoint_GetRawX(const LASPointH hPoint) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetRawX", 0);
     
@@ -653,7 +657,7 @@ LAS_DLL boost::int32_t LASPoint_GetRawX(const LASPointH hPoint) {
     return value;
 }
 
-LAS_DLL LASErrorEnum LASPoint_SetRawX(LASPointH hPoint, boost::int32_t value) {
+LAS_DLL LASErrorEnum LASPoint_SetRawX(LASPointH hPoint, int32_t value) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_SetRawX", LE_Failure);
 
@@ -693,7 +697,7 @@ LAS_DLL LASErrorEnum LASPoint_SetY(LASPointH hPoint, double value) {
 
 }
 
-LAS_DLL boost::int32_t LASPoint_GetRawY(const LASPointH hPoint) {
+LAS_DLL int32_t LASPoint_GetRawY(const LASPointH hPoint) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetRawY", 0);
     
@@ -701,7 +705,7 @@ LAS_DLL boost::int32_t LASPoint_GetRawY(const LASPointH hPoint) {
     return value;
 }
 
-LAS_DLL LASErrorEnum LASPoint_SetRawY(LASPointH hPoint, boost::int32_t value) {
+LAS_DLL LASErrorEnum LASPoint_SetRawY(LASPointH hPoint, int32_t value) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_SetRawY", LE_Failure);
 
@@ -740,7 +744,7 @@ LAS_DLL LASErrorEnum LASPoint_SetZ(LASPointH hPoint, double value) {
 
 }
 
-LAS_DLL boost::int32_t LASPoint_GetRawZ(const LASPointH hPoint) {
+LAS_DLL int32_t LASPoint_GetRawZ(const LASPointH hPoint) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetRawZ", 0);
     
@@ -748,7 +752,7 @@ LAS_DLL boost::int32_t LASPoint_GetRawZ(const LASPointH hPoint) {
     return value;
 }
 
-LAS_DLL LASErrorEnum LASPoint_SetRawZ(LASPointH hPoint, boost::int32_t value) {
+LAS_DLL LASErrorEnum LASPoint_SetRawZ(LASPointH hPoint, int32_t value) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_SetRawZ", LE_Failure);
 
@@ -764,15 +768,15 @@ LAS_DLL LASErrorEnum LASPoint_SetRawZ(LASPointH hPoint, boost::int32_t value) {
 
 }
 
-LAS_DLL boost::uint16_t LASPoint_GetIntensity(const LASPointH hPoint) {
+LAS_DLL uint16_t LASPoint_GetIntensity(const LASPointH hPoint) {
     
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetIntensity", 0);
     
-    boost::uint16_t value = ((liblas::Point*) hPoint)->GetIntensity();
+    uint16_t value = ((liblas::Point*) hPoint)->GetIntensity();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASPoint_SetIntensity(LASPointH hPoint, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASPoint_SetIntensity(LASPointH hPoint, uint16_t value) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_SetIntensity", LE_Failure);
 
@@ -788,15 +792,15 @@ LAS_DLL LASErrorEnum LASPoint_SetIntensity(LASPointH hPoint, boost::uint16_t val
 
 }
 
-LAS_DLL boost::uint16_t LASPoint_GetReturnNumber(const LASPointH hPoint) {
+LAS_DLL uint16_t LASPoint_GetReturnNumber(const LASPointH hPoint) {
     
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetReturnNumber", 0);
     
-    boost::uint16_t value = ((liblas::Point*) hPoint)->GetReturnNumber();
+    uint16_t value = ((liblas::Point*) hPoint)->GetReturnNumber();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASPoint_SetReturnNumber(LASPointH hPoint, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASPoint_SetReturnNumber(LASPointH hPoint, uint16_t value) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_SetReturnNumber", LE_Failure);
 
@@ -812,15 +816,15 @@ LAS_DLL LASErrorEnum LASPoint_SetReturnNumber(LASPointH hPoint, boost::uint16_t
 
 }
 
-LAS_DLL boost::uint16_t LASPoint_GetNumberOfReturns(const LASPointH hPoint) {
+LAS_DLL uint16_t LASPoint_GetNumberOfReturns(const LASPointH hPoint) {
     
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetNumberOfReturns", 0);
     
-    boost::uint16_t value = ((liblas::Point*) hPoint)->GetNumberOfReturns();
+    uint16_t value = ((liblas::Point*) hPoint)->GetNumberOfReturns();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASPoint_SetNumberOfReturns(LASPointH hPoint, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASPoint_SetNumberOfReturns(LASPointH hPoint, uint16_t value) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_SetNumberOfReturns", LE_Failure);
 
@@ -836,15 +840,15 @@ LAS_DLL LASErrorEnum LASPoint_SetNumberOfReturns(LASPointH hPoint, boost::uint16
 
 }
 
-LAS_DLL boost::uint16_t LASPoint_GetScanDirection(const LASPointH hPoint) {
+LAS_DLL uint16_t LASPoint_GetScanDirection(const LASPointH hPoint) {
     
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetScanDirection", 0);
     
-    boost::uint16_t value = ((liblas::Point*) hPoint)->GetScanDirection();
+    uint16_t value = ((liblas::Point*) hPoint)->GetScanDirection();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASPoint_SetScanDirection(LASPointH hPoint, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASPoint_SetScanDirection(LASPointH hPoint, uint16_t value) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_SetScanDirection", LE_Failure);
 
@@ -860,15 +864,15 @@ LAS_DLL LASErrorEnum LASPoint_SetScanDirection(LASPointH hPoint, boost::uint16_t
 
 }
 
-LAS_DLL boost::uint16_t LASPoint_GetFlightLineEdge(const LASPointH hPoint) {
+LAS_DLL uint16_t LASPoint_GetFlightLineEdge(const LASPointH hPoint) {
     
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetFlightLineEdge", 0);
     
-    boost::uint16_t value = ((liblas::Point*) hPoint)->GetFlightLineEdge();
+    uint16_t value = ((liblas::Point*) hPoint)->GetFlightLineEdge();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASPoint_SetFlightLineEdge(LASPointH hPoint, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASPoint_SetFlightLineEdge(LASPointH hPoint, uint16_t value) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_SetFlightLineEdge", LE_Failure);
 
@@ -884,15 +888,15 @@ LAS_DLL LASErrorEnum LASPoint_SetFlightLineEdge(LASPointH hPoint, boost::uint16_
 
 }
 
-LAS_DLL boost::uint8_t LASPoint_GetScanFlags(const LASPointH hPoint) {
+LAS_DLL uint8_t LASPoint_GetScanFlags(const LASPointH hPoint) {
     
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetScanFlags", 0);
     
-    boost::uint8_t value = ((liblas::Point*) hPoint)->GetScanFlags();
+    uint8_t value = ((liblas::Point*) hPoint)->GetScanFlags();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASPoint_SetScanFlags(LASPointH hPoint, boost::uint8_t value) {
+LAS_DLL LASErrorEnum LASPoint_SetScanFlags(LASPointH hPoint, uint8_t value) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_SetScanFlags", LE_Failure);
 
@@ -908,16 +912,16 @@ LAS_DLL LASErrorEnum LASPoint_SetScanFlags(LASPointH hPoint, boost::uint8_t valu
 
 }
 
-LAS_DLL boost::uint8_t LASPoint_GetClassification(const LASPointH hPoint) {
+LAS_DLL uint8_t LASPoint_GetClassification(const LASPointH hPoint) {
     
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetClassification", 0);
 
     liblas::Classification::bitset_type clsflags(((liblas::Point*) hPoint)->GetClassification());
-    boost::uint8_t value = static_cast<boost::uint8_t>(clsflags.to_ulong());
+    uint8_t value = static_cast<uint8_t>(clsflags.to_ulong());
     return value;
 }
 
-LAS_DLL LASErrorEnum LASPoint_SetClassification(LASPointH hPoint, boost::uint8_t value) {
+LAS_DLL LASErrorEnum LASPoint_SetClassification(LASPointH hPoint, uint8_t value) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_SetClassification", LE_Failure);
 
@@ -975,7 +979,7 @@ LAS_DLL char LASPoint_GetScanAngleRank(const LASPointH hPoint) {
     
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetScanAngleRank", 0);
     
-    boost::int8_t value = ((liblas::Point*) hPoint)->GetScanAngleRank();
+    int8_t value = ((liblas::Point*) hPoint)->GetScanAngleRank();
     return static_cast<char>(value);
 }
 
@@ -984,7 +988,7 @@ LAS_DLL LASErrorEnum LASPoint_SetScanAngleRank(LASPointH hPoint, char value) {
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_SetScanAngleRank", LE_Failure);
 
     try {
-            ((liblas::Point*) hPoint)->SetScanAngleRank(static_cast<boost::int8_t>(value));
+            ((liblas::Point*) hPoint)->SetScanAngleRank(static_cast<int8_t>(value));
     } catch (std::exception const& e)
     {
         LASError_PushError(LE_Failure, e.what(), "LASPoint_SetScanAngleRank");
@@ -995,15 +999,15 @@ LAS_DLL LASErrorEnum LASPoint_SetScanAngleRank(LASPointH hPoint, char value) {
 
 }
 
-LAS_DLL boost::uint16_t LASPoint_GetPointSourceId(const LASPointH hPoint) {
+LAS_DLL uint16_t LASPoint_GetPointSourceId(const LASPointH hPoint) {
     
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetPointSourceId", 0);
     
-    boost::uint16_t value = ((liblas::Point*) hPoint)->GetPointSourceID();
+    uint16_t value = ((liblas::Point*) hPoint)->GetPointSourceID();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASPoint_SetPointSourceId(LASPointH hPoint, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASPoint_SetPointSourceId(LASPointH hPoint, uint16_t value) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_SetPointSourceId", LE_Failure);
 
@@ -1020,11 +1024,11 @@ LAS_DLL LASErrorEnum LASPoint_SetPointSourceId(LASPointH hPoint, boost::uint16_t
 }
 
 
-LAS_DLL boost::uint8_t LASPoint_GetUserData(const LASPointH hPoint) {
+LAS_DLL uint8_t LASPoint_GetUserData(const LASPointH hPoint) {
     
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_GetUserData", 0);
     
-    boost::uint8_t value = ((liblas::Point*) hPoint)->GetUserData();
+    uint8_t value = ((liblas::Point*) hPoint)->GetUserData();
     return value;
 }
 
@@ -1041,7 +1045,7 @@ LAS_DLL char* LASPoint_GetXML(const LASPointH hPoint)
     
 }
 
-LAS_DLL LASErrorEnum LASPoint_SetUserData(LASPointH hPoint, boost::uint8_t value) {
+LAS_DLL LASErrorEnum LASPoint_SetUserData(LASPointH hPoint, uint8_t value) {
 
     VALIDATE_LAS_POINTER1(hPoint, "LASPoint_SetUserData", LE_Failure);
 
@@ -1099,28 +1103,28 @@ LAS_DLL char* LASHeader_GetFileSignature(const LASHeaderH hHeader) {
     return LASCopyString(signature.c_str());
 }
 
-LAS_DLL boost::uint16_t LASHeader_GetFileSourceId(const LASHeaderH hHeader) {
+LAS_DLL uint16_t LASHeader_GetFileSourceId(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetFileSourceId", 0);
 
     unsigned short value = ((liblas::HeaderPtr*) hHeader)->get()->GetFileSourceId();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASHeader_SetFileSourceId(LASHeaderH hHeader, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASHeader_SetFileSourceId(LASHeaderH hHeader, uint16_t value) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_SetFileSourceId", LE_Failure);
     ((liblas::HeaderPtr*) hHeader)->get()->SetFileSourceId(value);    
     return LE_None;
 }
 
 
-LAS_DLL boost::uint16_t LASHeader_GetReserved(const LASHeaderH hHeader) {
+LAS_DLL uint16_t LASHeader_GetReserved(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetReserved", 0);
 
     unsigned short value = ((liblas::HeaderPtr*) hHeader)->get()->GetReserved();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASHeader_SetReserved(LASHeaderH hHeader, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASHeader_SetReserved(LASHeaderH hHeader, uint16_t value) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_SetReserved", LE_Failure);
     ((liblas::HeaderPtr*) hHeader)->get()->SetReserved(value);    
     return LE_None;
@@ -1129,16 +1133,17 @@ LAS_DLL LASErrorEnum LASHeader_SetReserved(LASHeaderH hHeader, boost::uint16_t v
 LAS_DLL char* LASHeader_GetProjectId(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetProjectId", 0);
     
-    liblas::guid id = ((liblas::HeaderPtr*) hHeader)->get()->GetProjectId();
-    return LASCopyString(id.to_string().c_str());
+    boost::uuids::uuid id = ((liblas::HeaderPtr*) hHeader)->get()->GetProjectId();
+    std::ostringstream oss;
+    oss << id;
+    return LASCopyString(oss.str().c_str());
 }
 
 LAS_DLL LASErrorEnum LASHeader_SetProjectId(LASHeaderH hHeader, const char* value) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_SetProjectId", LE_Failure);
 
     try {
-        liblas::guid id;
-        id = liblas::guid(value);
+        boost::uuids::uuid id = boost::uuids::string_generator()(value);
         ((liblas::HeaderPtr*) hHeader)->get()->SetProjectId(id);    
     } catch (std::exception const& e)
     {
@@ -1149,14 +1154,14 @@ LAS_DLL LASErrorEnum LASHeader_SetProjectId(LASHeaderH hHeader, const char* valu
     return LE_None;
 }
 
-LAS_DLL boost::uint8_t LASHeader_GetVersionMajor(const LASHeaderH hHeader) {
+LAS_DLL uint8_t LASHeader_GetVersionMajor(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetVersionMajor", 0);
 
     long value = ((liblas::HeaderPtr*) hHeader)->get()->GetVersionMajor();
-    return boost::uint8_t(value);
+    return uint8_t(value);
 }
 
-LAS_DLL LASErrorEnum LASHeader_SetVersionMajor(LASHeaderH hHeader, boost::uint8_t value) {
+LAS_DLL LASErrorEnum LASHeader_SetVersionMajor(LASHeaderH hHeader, uint8_t value) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_SetVersionMajor", LE_Failure);
 
     try {
@@ -1170,14 +1175,14 @@ LAS_DLL LASErrorEnum LASHeader_SetVersionMajor(LASHeaderH hHeader, boost::uint8_
     return LE_None;
 }
 
-LAS_DLL boost::uint8_t LASHeader_GetVersionMinor(const LASHeaderH hHeader) {
+LAS_DLL uint8_t LASHeader_GetVersionMinor(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetVersionMinor", 0);
 
     long value = ((liblas::HeaderPtr*) hHeader)->get()->GetVersionMinor();
-    return boost::uint8_t(value);
+    return uint8_t(value);
 }
 
-LAS_DLL LASErrorEnum LASHeader_SetVersionMinor(LASHeaderH hHeader, boost::uint8_t value) {
+LAS_DLL LASErrorEnum LASHeader_SetVersionMinor(LASHeaderH hHeader, uint8_t value) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_SetVersionMinor", LE_Failure);
 
     // TODO: Maybe this should be a fatal error -- hobu
@@ -1236,47 +1241,47 @@ LAS_DLL LASErrorEnum LASHeader_SetSoftwareId(LASHeaderH hHeader, const char* val
     return LE_None;
 }
 
-LAS_DLL boost::uint16_t LASHeader_GetCreationDOY(const LASHeaderH hHeader) {
+LAS_DLL uint16_t LASHeader_GetCreationDOY(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetCreationDOY", 0);
 
     unsigned short value = ((liblas::HeaderPtr*) hHeader)->get()->GetCreationDOY();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASHeader_SetCreationDOY(LASHeaderH hHeader, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASHeader_SetCreationDOY(LASHeaderH hHeader, uint16_t value) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_SetCreationDOY", LE_Failure);
     ((liblas::HeaderPtr*) hHeader)->get()->SetCreationDOY(value);    
     return LE_None;
 }
 
-LAS_DLL boost::uint16_t LASHeader_GetCreationYear(const LASHeaderH hHeader) {
+LAS_DLL uint16_t LASHeader_GetCreationYear(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetCreationYear", 0);
 
     unsigned short value = ((liblas::HeaderPtr*) hHeader)->get()->GetCreationYear();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASHeader_SetCreationYear(LASHeaderH hHeader, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASHeader_SetCreationYear(LASHeaderH hHeader, uint16_t value) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_SetCreationYear", LE_Failure);
     ((liblas::HeaderPtr*) hHeader)->get()->SetCreationYear(value);    
     return LE_None;
 }
 
-LAS_DLL boost::uint16_t LASHeader_GetHeaderSize(const LASHeaderH hHeader) {
+LAS_DLL uint16_t LASHeader_GetHeaderSize(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetHeaderSize", 0);
 
     unsigned short value = ((liblas::HeaderPtr*) hHeader)->get()->GetHeaderSize();
     return value;
 }
 
-LAS_DLL boost::uint32_t LASHeader_GetDataOffset(const LASHeaderH hHeader) {
+LAS_DLL uint32_t LASHeader_GetDataOffset(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetDataOffset", 0);
 
     unsigned long value = ((liblas::HeaderPtr*) hHeader)->get()->GetDataOffset();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASHeader_SetDataOffset(const LASHeaderH hHeader, boost::uint32_t value) {
+LAS_DLL LASErrorEnum LASHeader_SetDataOffset(const LASHeaderH hHeader, uint32_t value) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_SetDataOffset", LE_Failure);
 
     try {
@@ -1290,14 +1295,14 @@ LAS_DLL LASErrorEnum LASHeader_SetDataOffset(const LASHeaderH hHeader, boost::ui
     return LE_None;    
 }
 
-LAS_DLL boost::uint32_t LASHeader_GetHeaderPadding(const LASHeaderH hHeader) {
+LAS_DLL uint32_t LASHeader_GetHeaderPadding(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetHeaderPadding", 0);
 
     unsigned long value = ((liblas::HeaderPtr*) hHeader)->get()->GetHeaderPadding();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASHeader_SetHeaderPadding(const LASHeaderH hHeader, boost::uint32_t value) {
+LAS_DLL LASErrorEnum LASHeader_SetHeaderPadding(const LASHeaderH hHeader, uint32_t value) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_SetHeaderPadding", LE_Failure);
 
     try {
@@ -1311,21 +1316,21 @@ LAS_DLL LASErrorEnum LASHeader_SetHeaderPadding(const LASHeaderH hHeader, boost:
     return LE_None;    
 }
 
-LAS_DLL boost::uint32_t LASHeader_GetRecordsCount(const LASHeaderH hHeader) {
+LAS_DLL uint32_t LASHeader_GetRecordsCount(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetRecordsCount", 0);
 
     unsigned long value = ((liblas::HeaderPtr*) hHeader)->get()->GetRecordsCount();
     return value;
 }
 
-LAS_DLL boost::uint8_t LASHeader_GetDataFormatId(const LASHeaderH hHeader) {
+LAS_DLL uint8_t LASHeader_GetDataFormatId(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetDataFormatId", 0);
     
     liblas::PointFormatName id = ((liblas::HeaderPtr*) hHeader)->get()->GetDataFormatId();
-    return static_cast<boost::uint8_t>(id);
+    return static_cast<uint8_t>(id);
 }
 
-LAS_DLL LASErrorEnum LASHeader_SetDataFormatId(LASHeaderH hHeader, boost::uint8_t value) {
+LAS_DLL LASErrorEnum LASHeader_SetDataFormatId(LASHeaderH hHeader, uint8_t value) {
     VALIDATE_LAS_POINTER1(hHeader, "LASHeader_SetDataFormatId", LE_Failure); 
     
     try {
@@ -1339,7 +1344,7 @@ LAS_DLL LASErrorEnum LASHeader_SetDataFormatId(LASHeaderH hHeader, boost::uint8_
     return LE_None;
 }
 
-LAS_DLL boost::uint16_t LASHeader_GetDataRecordLength(const LASHeaderH hHeader) {
+LAS_DLL uint16_t LASHeader_GetDataRecordLength(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetDataRecordLength", 0);
 
     unsigned short value = ((liblas::HeaderPtr*) hHeader)->get()->GetDataRecordLength();
@@ -1348,10 +1353,10 @@ LAS_DLL boost::uint16_t LASHeader_GetDataRecordLength(const LASHeaderH hHeader)
 
 
 
-LAS_DLL boost::uint32_t LASHeader_GetPointRecordsByReturnCount(const LASHeaderH hHeader, int index) {
+LAS_DLL uint32_t LASHeader_GetPointRecordsByReturnCount(const LASHeaderH hHeader, int index) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetPointRecordsByReturnCount", 0);
 
-    std::vector<boost::uint32_t> counts  = ((liblas::HeaderPtr*) hHeader)->get()->GetPointRecordsByReturnCount();
+    std::vector<uint32_t> counts  = ((liblas::HeaderPtr*) hHeader)->get()->GetPointRecordsByReturnCount();
     if ( (index < 5) && (index >= 0)) {
         return counts[index];
     } 
@@ -1360,7 +1365,7 @@ LAS_DLL boost::uint32_t LASHeader_GetPointRecordsByReturnCount(const LASHeaderH
     
 }
 
-LAS_DLL LASErrorEnum LASHeader_SetPointRecordsByReturnCount(const LASHeaderH hHeader, int index, boost::uint32_t value) {
+LAS_DLL LASErrorEnum LASHeader_SetPointRecordsByReturnCount(const LASHeaderH hHeader, int index, uint32_t value) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_SetPointRecordsByReturnCount", LE_Failure);
 
     try {
@@ -1375,14 +1380,14 @@ LAS_DLL LASErrorEnum LASHeader_SetPointRecordsByReturnCount(const LASHeaderH hHe
 }
 
 
-LAS_DLL boost::uint32_t LASHeader_GetPointRecordsCount(const LASHeaderH hHeader) {
+LAS_DLL uint32_t LASHeader_GetPointRecordsCount(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetPointRecordsCount", 0);
 
     unsigned long value = ((liblas::HeaderPtr*) hHeader)->get()->GetPointRecordsCount();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASHeader_SetPointRecordsCount(const LASHeaderH hHeader, boost::uint32_t value) {
+LAS_DLL LASErrorEnum LASHeader_SetPointRecordsCount(const LASHeaderH hHeader, uint32_t value) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_SetPointRecordsCount", LE_Failure);
 
     try {
@@ -1574,9 +1579,9 @@ LAS_DLL int LASHeader_Equal(const LASHeaderH hHeader1, const LASHeaderH hHeader2
 
 LAS_DLL LASGuidH LASHeader_GetGUID(const LASHeaderH hHeader) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetGUID", 0);
-    
-    liblas::guid id = ((liblas::HeaderPtr*) hHeader)->get()->GetProjectId();
-    return (LASGuidH) new liblas::guid(id);
+
+    boost::uuids::uuid id = ((liblas::HeaderPtr*) hHeader)->get()->GetProjectId();    
+    return (LASGuidH) new boost::uuids::uuid(id);
 }
 
 
@@ -1584,7 +1589,7 @@ LAS_DLL LASErrorEnum LASHeader_SetGUID(LASHeaderH hHeader, LASGuidH hId) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_SetGUID", LE_Failure);
 
     try {
-        liblas::guid* id = (liblas::guid*) hId;
+        boost::uuids::uuid* id = (boost::uuids::uuid*) hId;
         
         ((liblas::HeaderPtr*) hHeader)->get()->SetProjectId(*id);    
     } catch (std::exception const& e)
@@ -1596,14 +1601,14 @@ LAS_DLL LASErrorEnum LASHeader_SetGUID(LASHeaderH hHeader, LASGuidH hId) {
     return LE_None;
 }
 
-LAS_DLL LASVLRH LASHeader_GetVLR(const LASHeaderH hHeader, boost::uint32_t i) {
+LAS_DLL LASVLRH LASHeader_GetVLR(const LASHeaderH hHeader, uint32_t i) {
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_GetVLR", 0);
     
     liblas::VariableRecord vlr = ((liblas::HeaderPtr*) hHeader)->get()->GetVLR(i);
     return (LASVLRH) new liblas::VariableRecord(vlr);
 }
 
-LAS_DLL LASErrorEnum LASHeader_DeleteVLR(LASHeaderH hHeader, boost::uint32_t index) {
+LAS_DLL LASErrorEnum LASHeader_DeleteVLR(LASHeaderH hHeader, uint32_t index) {
     
     VALIDATE_LAS_POINTER1(hHeader->get(), "LASHeader_DeleteVLR", LE_Failure);
 
@@ -1954,56 +1959,56 @@ LAS_DLL LASErrorEnum LASVLR_SetDescription(LASVLRH hVLR, const char* value) {
     return LE_None;
 }
 
-LAS_DLL boost::uint16_t LASVLR_GetRecordLength(const LASVLRH hVLR) {
+LAS_DLL uint16_t LASVLR_GetRecordLength(const LASVLRH hVLR) {
     
     VALIDATE_LAS_POINTER1(hVLR, "LASVLR_GetRecordLength", 0);
     
-    boost::uint16_t value = ((liblas::VariableRecord*) hVLR)->GetRecordLength();
+    uint16_t value = ((liblas::VariableRecord*) hVLR)->GetRecordLength();
     return value;
 }
-LAS_DLL LASErrorEnum LASVLR_SetRecordLength(LASVLRH hVLR, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASVLR_SetRecordLength(LASVLRH hVLR, uint16_t value) {
     VALIDATE_LAS_POINTER1(hVLR, "LASVLR_SetRecordLength", LE_Failure);
     ((liblas::VariableRecord*) hVLR)->SetRecordLength(value);    
     return LE_None;
 }
 
-LAS_DLL boost::uint16_t LASVLR_GetRecordId(const LASVLRH hVLR) {
+LAS_DLL uint16_t LASVLR_GetRecordId(const LASVLRH hVLR) {
     
     VALIDATE_LAS_POINTER1(hVLR, "LASVLR_GetRecordId", 0);
     
-    boost::uint16_t value = ((liblas::VariableRecord*) hVLR)->GetRecordId();
+    uint16_t value = ((liblas::VariableRecord*) hVLR)->GetRecordId();
     return value;
 }
-LAS_DLL LASErrorEnum LASVLR_SetRecordId(LASVLRH hVLR, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASVLR_SetRecordId(LASVLRH hVLR, uint16_t value) {
     VALIDATE_LAS_POINTER1(hVLR, "LASVLR_SetRecordId", LE_Failure);
     ((liblas::VariableRecord*) hVLR)->SetRecordId(value);    
     return LE_None;
 }
 
 
-LAS_DLL LASErrorEnum LASVLR_SetReserved(LASVLRH hVLR, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASVLR_SetReserved(LASVLRH hVLR, uint16_t value) {
     VALIDATE_LAS_POINTER1(hVLR, "LASVLR_SetReserved", LE_Failure);
     ((liblas::VariableRecord*) hVLR)->SetReserved(value);    
     return LE_None;
 }
 
-LAS_DLL boost::uint16_t LASVLR_GetReserved(const LASVLRH hVLR) {
+LAS_DLL uint16_t LASVLR_GetReserved(const LASVLRH hVLR) {
     
     VALIDATE_LAS_POINTER1(hVLR, "LASVLR_GetReserved", 0);
     
-    boost::uint16_t value = ((liblas::VariableRecord*) hVLR)->GetReserved();
+    uint16_t value = ((liblas::VariableRecord*) hVLR)->GetReserved();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASVLR_GetData(const LASVLRH hVLR, boost::uint8_t* data) {
+LAS_DLL LASErrorEnum LASVLR_GetData(const LASVLRH hVLR, uint8_t* data) {
     
     VALIDATE_LAS_POINTER1(hVLR, "LASVLR_GetData", LE_Failure);
 
     try {
         liblas::VariableRecord* vlr = ((liblas::VariableRecord*) hVLR);
-        std::vector<boost::uint8_t> const& d = vlr->GetData();
-        boost::uint16_t length = vlr->GetRecordLength();
-        for (boost::uint16_t i=0; i < length; i++) {
+        std::vector<uint8_t> const& d = vlr->GetData();
+        uint16_t length = vlr->GetRecordLength();
+        for (uint16_t i=0; i < length; i++) {
             data[i] = d[i];
         }
     }
@@ -2016,15 +2021,15 @@ LAS_DLL LASErrorEnum LASVLR_GetData(const LASVLRH hVLR, boost::uint8_t* data) {
     return LE_None;
 }
 
-LAS_DLL LASErrorEnum LASVLR_SetData(const LASVLRH hVLR, boost::uint8_t* data, boost::uint16_t length) {
+LAS_DLL LASErrorEnum LASVLR_SetData(const LASVLRH hVLR, uint8_t* data, uint16_t length) {
     
     VALIDATE_LAS_POINTER1(hVLR, "LASVLR_SetData", LE_Failure);
 
     try {
         liblas::VariableRecord* vlr = ((liblas::VariableRecord*) hVLR);
-        std::vector<boost::uint8_t> d;
+        std::vector<uint8_t> d;
         d.resize(length);
-        for (boost::uint16_t i=0; i < length; i++) {
+        for (uint16_t i=0; i < length; i++) {
             d[i] = data[i];
         }
         vlr->SetData(d);
@@ -2039,10 +2044,9 @@ LAS_DLL LASErrorEnum LASVLR_SetData(const LASVLRH hVLR, boost::uint8_t* data, bo
 }
 
 LAS_DLL LASGuidH LASGuid_Create() {
-    liblas::guid random;
     try {
-        random = liblas::guid::create();
-        return (LASGuidH) new liblas::guid(random);
+        boost::uuids::uuid id;
+        return (LASGuidH) new boost::uuids::uuid(id);
     }
     catch (std::exception const& e) {
         LASError_PushError(LE_Failure, e.what(), "LASGuid_Create");
@@ -2052,10 +2056,10 @@ LAS_DLL LASGuidH LASGuid_Create() {
 
 LAS_DLL LASGuidH LASGuid_CreateFromString(const char* string) {
     VALIDATE_LAS_POINTER1(string, "LASGuid_CreateFromString", NULL);    
-    liblas::guid id;
     try {
-        id = liblas::guid(string);
-        return (LASGuidH) new liblas::guid(id);
+        boost::uuids::uuid id = boost::uuids::string_generator()(string);
+
+        return (LASGuidH) new boost::uuids::uuid(id);
     }
     catch (std::exception const& e) {
         LASError_PushError(LE_Failure, e.what(), "LASGuid_CreateFromString");
@@ -2065,7 +2069,7 @@ LAS_DLL LASGuidH LASGuid_CreateFromString(const char* string) {
 
 LAS_DLL void LASGuid_Destroy(LASGuidH hId) {
     VALIDATE_LAS_POINTER0(hId, "LASGuid_Destroy");
-    delete (liblas::guid*) hId;
+    delete (boost::uuids::uuid*) hId;
     hId = NULL;
 }
 
@@ -2073,8 +2077,8 @@ LAS_DLL int LASGuid_Equals(LASGuidH hId1, LASGuidH hId2) {
     VALIDATE_LAS_POINTER1(hId1, "LASGuid_Equals", LE_Failure);
     VALIDATE_LAS_POINTER1(hId2, "LASGuid_Equals", LE_Failure);
 
-    liblas::guid* id1 = (liblas::guid*)hId1;
-    liblas::guid* id2 = (liblas::guid*)hId2;
+    boost::uuids::uuid* id1 = (boost::uuids::uuid*)hId1;
+    boost::uuids::uuid* id2 = (boost::uuids::uuid*)hId2;
     try {
 
         return( *id1 == *id2);
@@ -2087,8 +2091,10 @@ LAS_DLL int LASGuid_Equals(LASGuidH hId1, LASGuidH hId2) {
 
 LAS_DLL char* LASGuid_AsString(LASGuidH hId) {
     VALIDATE_LAS_POINTER1(hId, "LASGuid_AsString", 0);
-    liblas::guid* id= (liblas::guid*)hId;
-    return LASCopyString(id->to_string().c_str());
+    boost::uuids::uuid* id= (boost::uuids::uuid*)hId;
+    std::ostringstream oss;
+    oss << *id;
+    return LASCopyString(oss.str().c_str());
 }
 
 
@@ -2103,7 +2109,7 @@ LAS_DLL void LASColor_Destroy(LASColorH hColor){
     hColor = NULL;
 }
 
-LAS_DLL LASErrorEnum LASColor_SetRed(LASColorH hColor, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASColor_SetRed(LASColorH hColor, uint16_t value) {
     
     VALIDATE_LAS_POINTER1(hColor, "LASColor_SetRed", LE_Failure);
 
@@ -2119,15 +2125,15 @@ LAS_DLL LASErrorEnum LASColor_SetRed(LASColorH hColor, boost::uint16_t value) {
     return LE_None;
 }
 
-LAS_DLL boost::uint16_t LASColor_GetRed(LASColorH hColor) {
+LAS_DLL uint16_t LASColor_GetRed(LASColorH hColor) {
     
     VALIDATE_LAS_POINTER1(hColor, "LASColor_GetRed", 0);
     
-    boost::uint16_t value = ((liblas::Color*) hColor)->GetRed();
+    uint16_t value = ((liblas::Color*) hColor)->GetRed();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASColor_SetBlue(LASColorH hColor, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASColor_SetBlue(LASColorH hColor, uint16_t value) {
     
     VALIDATE_LAS_POINTER1(hColor, "LASColor_SetBlue", LE_Failure);
 
@@ -2143,15 +2149,15 @@ LAS_DLL LASErrorEnum LASColor_SetBlue(LASColorH hColor, boost::uint16_t value) {
     return LE_None;
 }
 
-LAS_DLL boost::uint16_t LASColor_GetBlue(LASColorH hColor) {
+LAS_DLL uint16_t LASColor_GetBlue(LASColorH hColor) {
     
     VALIDATE_LAS_POINTER1(hColor, "LASColor_GetBlue", 0);
     
-    boost::uint16_t value = ((liblas::Color*) hColor)->GetBlue();
+    uint16_t value = ((liblas::Color*) hColor)->GetBlue();
     return value;
 }
 
-LAS_DLL LASErrorEnum LASColor_SetGreen(LASColorH hColor, boost::uint16_t value) {
+LAS_DLL LASErrorEnum LASColor_SetGreen(LASColorH hColor, uint16_t value) {
     
     VALIDATE_LAS_POINTER1(hColor, "LASColor_SetGreen", LE_Failure);
 
@@ -2167,11 +2173,11 @@ LAS_DLL LASErrorEnum LASColor_SetGreen(LASColorH hColor, boost::uint16_t value)
     return LE_None;
 }
 
-LAS_DLL boost::uint16_t LASColor_GetGreen(LASColorH hColor) {
+LAS_DLL uint16_t LASColor_GetGreen(LASColorH hColor) {
     
     VALIDATE_LAS_POINTER1(hColor, "LASColor_GetGreen", 0);
     
-    boost::uint16_t value = ((liblas::Color*) hColor)->GetGreen();
+    uint16_t value = ((liblas::Color*) hColor)->GetGreen();
     return value;
 }
 
@@ -2365,17 +2371,16 @@ LAS_DLL LASErrorEnum LASSRS_AddVLR(LASSRSH hSRS, const LASVLRH hVLR) {
     return LE_None;
 }
 
-LAS_DLL LASVLRH LASSRS_GetVLR(const LASSRSH hSRS, boost::uint32_t i) {
+LAS_DLL LASVLRH LASSRS_GetVLR(const LASSRSH hSRS, uint32_t i) {
     VALIDATE_LAS_POINTER1(hSRS, "LASSRS_GetVLR", 0);
     
     liblas::VariableRecord vlr = ((liblas::SpatialReference*) hSRS)->GetVLRs()[i];
     return (LASVLRH) new liblas::VariableRecord(vlr);
 }
 
-LAS_DLL boost::uint32_t LASSRS_GetVLRCount(const LASSRSH hSRS) {
+LAS_DLL uint32_t LASSRS_GetVLRCount(const LASSRSH hSRS) {
     VALIDATE_LAS_POINTER1(hSRS, "LASSRS_GetVLR", 0);
     
-    using boost::uint32_t;
     uint32_t size = static_cast<uint32_t>(((liblas::SpatialReference*) hSRS)->GetVLRs().size());
     return size;
 }
diff --git a/src/chipper.cpp b/src/chipper.cpp
old mode 100644
new mode 100755
index 18c92f1..af3eeae
--- a/src/chipper.cpp
+++ b/src/chipper.cpp
@@ -84,7 +84,7 @@ using namespace detail;
 class OIndexSorter
 {
 public:
-    OIndexSorter(boost::uint32_t center) : m_center(center)
+    OIndexSorter(uint32_t center) : m_center(center)
     {}
     
     bool operator()(const PtRef& p1, const PtRef& p2)
@@ -101,11 +101,11 @@ public:
     }
 
 private:
-    boost::uint32_t m_center;
+    uint32_t m_center;
 };
 
-void RefList::SortByOIndex(boost::uint32_t left, boost::uint32_t center,
-    boost::uint32_t right)
+void RefList::SortByOIndex(uint32_t left, uint32_t center,
+    uint32_t right)
 {
     OIndexSorter comparator(center);
     PtRefVec::iterator li = m_vec_p->begin() + left;
@@ -114,11 +114,11 @@ void RefList::SortByOIndex(boost::uint32_t left, boost::uint32_t center,
 }
 
 
-vector<boost::uint32_t> Block::GetIDs() const
+vector<uint32_t> Block::GetIDs() const
 {
-    vector<boost::uint32_t> ids;
+    vector<uint32_t> ids;
 
-    for (boost::uint32_t i = m_left; i <= m_right; ++i)
+    for (uint32_t i = m_left; i <= m_right; ++i)
         ids.push_back((*m_list_p)[i].m_ptindex);
     return ids;
 }
@@ -146,7 +146,7 @@ void Chipper::Chip()
 
 int Chipper::Allocate()
 {
-    boost::uint32_t count = m_reader->GetHeader().GetPointRecordsCount();
+    uint32_t count = m_reader->GetHeader().GetPointRecordsCount();
 
     if (m_options.m_use_maps)
     {
@@ -188,8 +188,8 @@ int Chipper::Allocate()
 int Chipper::Load()
 {
     PtRef ref;
-    boost::uint32_t idx;
-    boost::uint32_t count;
+    uint32_t idx;
+    uint32_t count;
     vector<PtRef>::iterator it;
    
     if (Allocate())
@@ -208,7 +208,7 @@ int Chipper::Load()
     }
     // Sort xvec and assign other index in yvec to sorted indices in xvec.
     sort(m_xvec.begin(), m_xvec.end());
-    for (boost::uint32_t i = 0; i < m_xvec.size(); ++i) {
+    for (uint32_t i = 0; i < m_xvec.size(); ++i) {
         idx = m_xvec[i].m_ptindex;
         m_yvec[idx].m_oindex = i;
     }
@@ -217,14 +217,14 @@ int Chipper::Load()
     sort(m_yvec.begin(), m_yvec.end());
 
     //Iterate through the yvector, setting the xvector appropriately.
-    for (boost::uint32_t i = 0; i < m_yvec.size(); ++i)
+    for (uint32_t i = 0; i < m_yvec.size(); ++i)
         m_xvec[m_yvec[i].m_oindex].m_oindex = i;
     return 0;
 }
 
-void Chipper::Partition(boost::uint32_t size)
+void Chipper::Partition(uint32_t size)
 {
-    boost::uint32_t num_partitions;
+    uint32_t num_partitions;
 
     num_partitions = size / m_options.m_threshold;
     if ( size % m_options.m_threshold )
@@ -232,20 +232,20 @@ void Chipper::Partition(boost::uint32_t size)
     double total = 0;
     double partition_size = static_cast<double>(size) / num_partitions;
     m_partitions.push_back(0);
-    for (boost::uint32_t i = 0; i < num_partitions; ++i) {
+    for (uint32_t i = 0; i < num_partitions; ++i) {
         total += partition_size;
         double rtotal = detail::sround(total);
-        m_partitions.push_back(static_cast<boost::uint32_t>(rtotal));
+        m_partitions.push_back(static_cast<uint32_t>(rtotal));
     }
 }
 
 void Chipper::DecideSplit(RefList& v1, RefList& v2, RefList& spare,
-    boost::uint32_t pleft, boost::uint32_t pright)
+    uint32_t pleft, uint32_t pright)
 {
     double v1range;
     double v2range;
-    boost::uint32_t left = m_partitions[pleft];
-    boost::uint32_t right = m_partitions[pright] - 1;
+    uint32_t left = m_partitions[pleft];
+    uint32_t right = m_partitions[pright] - 1;
 
     // Decide the wider direction of the block, and split in that direction
     // to maintain squareness.
@@ -258,12 +258,12 @@ void Chipper::DecideSplit(RefList& v1, RefList& v2, RefList& spare,
 }
 
 void Chipper::Split(RefList& wide, RefList& narrow, RefList& spare,
-    boost::uint32_t pleft, boost::uint32_t pright)
+    uint32_t pleft, uint32_t pright)
 {
-    boost::uint32_t pcenter;
-    boost::uint32_t left;
-    boost::uint32_t right;
-    boost::uint32_t center;
+    uint32_t pcenter;
+    uint32_t left;
+    uint32_t right;
+    uint32_t center;
 
     left = m_partitions[pleft];
     right = m_partitions[pright] - 1;
@@ -301,12 +301,12 @@ void Chipper::Split(RefList& wide, RefList& narrow, RefList& spare,
 }
 
 void Chipper::RearrangeNarrow(RefList& wide, RefList& narrow, RefList& spare,
-    boost::uint32_t left, boost::uint32_t center, boost::uint32_t right)
+    uint32_t left, uint32_t center, uint32_t right)
 {
     if (m_options.m_use_sort)
     {
         narrow.SortByOIndex(left, center, right);
-        for (boost::uint32_t i = left; i <= right; ++i)
+        for (uint32_t i = left; i <= right; ++i)
         {
             wide[narrow[i].m_oindex].m_oindex = i;
         }
@@ -317,9 +317,9 @@ void Chipper::RearrangeNarrow(RefList& wide, RefList& narrow, RefList& spare,
         // narrow array by copying them to the spare array in the correct
         // partition.  The spare array then becomes the active narrow array
         // for the [left,right] partition.
-        boost::uint32_t lstart = left;
-        boost::uint32_t rstart = center;
-        for (boost::uint32_t i = left; i <= right; ++i)
+        uint32_t lstart = left;
+        uint32_t rstart = center;
+        for (uint32_t i = left; i <= right; ++i)
         {
             if (narrow[i].m_oindex < center)
             {
@@ -341,33 +341,33 @@ void Chipper::RearrangeNarrow(RefList& wide, RefList& narrow, RefList& spare,
 // ordered, but not for our split, so we have to find the max/min entries
 // for each partition in the final split.
 void Chipper::FinalSplit(RefList& wide, RefList& narrow,
-    boost::uint32_t pleft, boost::uint32_t pright)  
+    uint32_t pleft, uint32_t pright)  
 {
     
-    boost::int64_t left1 = -1;
-    boost::int64_t left2 = -1;
-    boost::int64_t right1 = -1;
-    boost::int64_t right2 = -1;
+    int64_t left1 = -1;
+    int64_t left2 = -1;
+    int64_t right1 = -1;
+    int64_t right2 = -1;
 
     // It appears we're using int64_t here because we're using -1 as 
     // an indicator.  I'm not 100% sure that i ends up <0, but I don't 
     // think so.  These casts will at least shut up the compiler, but 
     // I think this code should be revisited to use
-    // std::vector<boost::uint32_t>::const_iterator or
-    // std::vector<boost::uint32_t>::size_type instead of this int64_t
+    // std::vector<uint32_t>::const_iterator or
+    // std::vector<uint32_t>::size_type instead of this int64_t
     // stuff -- hobu 11/15/10
     //
     // I'm not sure if there would be any advantage in using an iterator.
     // I'm also not sure if size_t will be bigger than 32 bits on a 32 bit
     // machine, thus the int64_t, which should be guaranteed.  abell 2/15/11
-    boost::int64_t left = m_partitions[pleft];
-    boost::int64_t right = m_partitions[pright] - 1;
-    boost::int64_t center = m_partitions[pright - 1];
+    int64_t left = m_partitions[pleft];
+    int64_t right = m_partitions[pright] - 1;
+    int64_t center = m_partitions[pright - 1];
 
     // Find left values for the partitions.
-    for (boost::int64_t i = left; i <= right; ++i)
+    for (int64_t i = left; i <= right; ++i)
     {        
-        boost::int64_t idx = narrow[static_cast<boost::uint32_t>(i)].m_oindex;
+        int64_t idx = narrow[static_cast<uint32_t>(i)].m_oindex;
         if (left1 < 0 && (idx < center))
         {
             left1 = i;
@@ -382,9 +382,9 @@ void Chipper::FinalSplit(RefList& wide, RefList& narrow,
         }
     }
     // Find right values for the partitions.
-    for (boost::int64_t i = right; i >= left; --i)
+    for (int64_t i = right; i >= left; --i)
     {
-        boost::int64_t idx = narrow[static_cast<boost::uint32_t>(i)].m_oindex;        
+        int64_t idx = narrow[static_cast<uint32_t>(i)].m_oindex;        
         if (right1 < 0 && (idx < center))
         {
             right1 = i;
@@ -401,22 +401,22 @@ void Chipper::FinalSplit(RefList& wide, RefList& narrow,
 
     // Emit results.
     Emit(wide, 
-         static_cast<boost::uint32_t>(left), 
-         static_cast<boost::uint32_t>(center - 1), 
+         static_cast<uint32_t>(left), 
+         static_cast<uint32_t>(center - 1), 
          narrow, 
-         static_cast<boost::uint32_t>(left1), 
-         static_cast<boost::uint32_t>(right1) );
+         static_cast<uint32_t>(left1), 
+         static_cast<uint32_t>(right1) );
     Emit(wide, 
-         static_cast<boost::uint32_t>(center), 
-         static_cast<boost::uint32_t>(right), 
+         static_cast<uint32_t>(center), 
+         static_cast<uint32_t>(right), 
          narrow, 
-         static_cast<boost::uint32_t>(left2), 
-         static_cast<boost::uint32_t>(right2) );
+         static_cast<uint32_t>(left2), 
+         static_cast<uint32_t>(right2) );
 }
 
-void Chipper::Emit(RefList& wide, boost::uint32_t widemin,
-    boost::uint32_t widemax, RefList& narrow, boost::uint32_t narrowmin,
-    boost::uint32_t narrowmax )
+void Chipper::Emit(RefList& wide, uint32_t widemin,
+    uint32_t widemax, RefList& narrow, uint32_t narrowmin,
+    uint32_t narrowmax )
 {
     Block b;
 
diff --git a/src/classification.cpp b/src/classification.cpp
old mode 100644
new mode 100755
index d5fcb24..e492382
--- a/src/classification.cpp
+++ b/src/classification.cpp
@@ -106,7 +106,7 @@ uint8_t Classification::GetClass() const
 {
     bitset_type bits(m_flags);
     
-    bitset_type const mask(static_cast<boost::uint64_t>(class_table_size) - 1);
+    bitset_type const mask(static_cast<uint64_t>(class_table_size) - 1);
     bits &= mask;
 
     uint32_t const index = static_cast<uint32_t>(bits.to_ulong());
@@ -116,11 +116,11 @@ uint8_t Classification::GetClass() const
     return static_cast<uint8_t>(index);
 }
 
-void Classification::SetClass(boost::uint32_t index)
+void Classification::SetClass(uint32_t index)
 {
     check_class_index(index);
 
-    bitset_type binval(static_cast<boost::uint64_t>(index));
+    bitset_type binval(static_cast<uint64_t>(index));
     binval <<= 0;
 
     // Store value in bits 0,1,2,3,4
@@ -129,7 +129,7 @@ void Classification::SetClass(boost::uint32_t index)
     m_flags |= mask & binval;
 }
 
-void Classification::check_class_index(boost::uint32_t index) const
+void Classification::check_class_index(uint32_t index) const
 {
     if (index > class_table_size - 1 || !(index <= std::numeric_limits<uint8_t>::max()))
     {
diff --git a/src/cmake_install.cmake b/src/cmake_install.cmake
deleted file mode 100644
index 0c097a0..0000000
--- a/src/cmake_install.cmake
+++ /dev/null
@@ -1,76 +0,0 @@
-# Install script for directory: /Users/hobu/foo/clean/src
-
-# Set the install prefix
-IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
-  SET(CMAKE_INSTALL_PREFIX "/usr/local")
-ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
-STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
-
-# Set the install configuration name.
-IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
-  IF(BUILD_TYPE)
-    STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
-           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
-  ELSE(BUILD_TYPE)
-    SET(CMAKE_INSTALL_CONFIG_NAME "Release")
-  ENDIF(BUILD_TYPE)
-  MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
-ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
-
-# Set the component getting installed.
-IF(NOT CMAKE_INSTALL_COMPONENT)
-  IF(COMPONENT)
-    MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
-    SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
-  ELSE(COMPONENT)
-    SET(CMAKE_INSTALL_COMPONENT)
-  ENDIF(COMPONENT)
-ENDIF(NOT CMAKE_INSTALL_COMPONENT)
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE SHARED_LIBRARY FILES
-    "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib"
-    "/Users/hobu/foo/clean/bin/Release/liblas.dylib"
-    )
-  FOREACH(file
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/liblas.2.2.0.dylib"
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/liblas.dylib"
-      )
-    IF(EXISTS "${file}" AND
-       NOT IS_SYMLINK "${file}")
-      EXECUTE_PROCESS(COMMAND "/usr/bin/install_name_tool"
-        -id "/usr/local/lib/liblas.2.2.0.dylib"
-        "${file}")
-      IF(CMAKE_INSTALL_DO_STRIP)
-        EXECUTE_PROCESS(COMMAND "/usr/bin/strip" "${file}")
-      ENDIF(CMAKE_INSTALL_DO_STRIP)
-    ENDIF()
-  ENDFOREACH()
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE SHARED_LIBRARY FILES
-    "/Users/hobu/foo/clean/bin/Release/liblas_c.2.2.0.dylib"
-    "/Users/hobu/foo/clean/bin/Release/liblas_c.dylib"
-    )
-  FOREACH(file
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/liblas_c.2.2.0.dylib"
-      "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/liblas_c.dylib"
-      )
-    IF(EXISTS "${file}" AND
-       NOT IS_SYMLINK "${file}")
-      EXECUTE_PROCESS(COMMAND "/usr/bin/install_name_tool"
-        -id "/usr/local/lib/liblas_c.2.2.0.dylib"
-        -change "/Users/hobu/foo/clean/bin/Release/liblas.2.2.0.dylib" "/usr/local/lib/liblas.2.2.0.dylib"
-        "${file}")
-      IF(CMAKE_INSTALL_DO_STRIP)
-        EXECUTE_PROCESS(COMMAND "/usr/bin/strip" "${file}")
-      ENDIF(CMAKE_INSTALL_DO_STRIP)
-    ENDIF()
-  ENDFOREACH()
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
-IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-  FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include" TYPE DIRECTORY FILES "/Users/hobu/foo/clean/src/../include/liblas" FILES_MATCHING REGEX "/[^/]*\\.h$" REGEX "/[^/]*\\.hpp$")
-ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
-
diff --git a/src/color.cpp b/src/color.cpp
old mode 100644
new mode 100755
index 5856c29..8adfcfa
--- a/src/color.cpp
+++ b/src/color.cpp
@@ -53,15 +53,13 @@ Color::Color()
     m_color.assign(0);
 }
 
-Color::Color(boost::uint32_t red, boost::uint32_t green, boost::uint32_t blue)
+Color::Color(uint32_t red, uint32_t green, uint32_t blue)
 {
-    if (red > (std::numeric_limits<boost::uint16_t>::max()) || 
-        green > (std::numeric_limits<boost::uint16_t>::max()) || 
-        blue > (std::numeric_limits<boost::uint16_t>::max()))
+    if (red > (std::numeric_limits<uint16_t>::max()) || 
+        green > (std::numeric_limits<uint16_t>::max()) || 
+        blue > (std::numeric_limits<uint16_t>::max()))
         throw_invalid_color_component();
 
-    using boost::uint16_t;
-
     m_color[0] = static_cast<uint16_t>(red);
     m_color[1] = static_cast<uint16_t>(green);
     m_color[2] = static_cast<uint16_t>(blue);
diff --git a/src/detail/index/indexcell.cpp b/src/detail/index/indexcell.cpp
old mode 100644
new mode 100755
index 7c8b941..1dc9ef9
--- a/src/detail/index/indexcell.cpp
+++ b/src/detail/index/indexcell.cpp
@@ -62,7 +62,7 @@ void IndexCell::SetFileOffset(TempFileOffsetType fos)
 	m_FileOffset = fos;
 } // IndexCell::SetFileOffset
 
-void IndexCell::SetNumPoints(boost::uint32_t nmp)
+void IndexCell::SetNumPoints(uint32_t nmp)
 {
 	m_NumPoints = nmp;
 } // IndexCell::SetNumPoints
@@ -72,44 +72,44 @@ TempFileOffsetType IndexCell::GetFileOffset(void) const
 	return(m_FileOffset);
 } // IndexCell::GetFileOffset
 
-boost::uint32_t IndexCell::GetNumRecords(void) const
+uint32_t IndexCell::GetNumRecords(void) const
 {
-	return((boost::uint32_t)m_PtRecords.size());
+	return((uint32_t)m_PtRecords.size());
 } // IndexCell::GetNumRecords
 
-boost::uint32_t IndexCell::GetNumPoints(void) const
+uint32_t IndexCell::GetNumPoints(void) const
 {
 	return(m_NumPoints);
 } // IndexCell::GetNumPoints
 
-boost::uint32_t IndexCell::GetNumSubCellRecords(void) const
+uint32_t IndexCell::GetNumSubCellRecords(void) const
 {
-	return((boost::uint32_t)m_SubCellRecords.size());
+	return((uint32_t)m_SubCellRecords.size());
 } // IndexCell::GetNumSubCellRecords
 
-boost::uint32_t IndexCell::GetNumZCellRecords(void) const
+uint32_t IndexCell::GetNumZCellRecords(void) const
 {
-	return((boost::uint32_t)m_ZCellRecords.size());
+	return((uint32_t)m_ZCellRecords.size());
 } // IndexCell::GetNumZCellRecords
 
-bool IndexCell::RoomToAdd(boost::uint32_t a)
+bool IndexCell::RoomToAdd(uint32_t a)
 {
 	return (m_PtRecords[a] < (std::numeric_limits<ConsecPtAccumulator>::max()));
 } // IndexCell::RoomToAdd
 
-void IndexCell::AddPointRecord(boost::uint32_t a)
+void IndexCell::AddPointRecord(uint32_t a)
 {
 	m_PtRecords[a] = 1;
 	++m_NumPoints;
 } // IndexCell::AddPointRecord
 
-void IndexCell::AddPointRecord(boost::uint32_t a, boost::uint8_t b)
+void IndexCell::AddPointRecord(uint32_t a, uint8_t b)
 {
 	m_PtRecords[a] = b;
 	m_NumPoints += b;
 } // IndexCell::AddPointRecord
 
-bool IndexCell::IncrementPointRecord(boost::uint32_t a)
+bool IndexCell::IncrementPointRecord(uint32_t a)
 {
 	IndexCellData::iterator MyIT;
 
@@ -166,7 +166,7 @@ ElevRange IndexCell::GetZRange(void) const
 return (m_MaxZ > m_MinZ ? static_cast<ElevRange>(m_MaxZ - m_MinZ): 0);
 } // IndexCell::GetZRange
 
-void IndexCell::AddZCell(boost::uint32_t a, boost::uint32_t b)
+void IndexCell::AddZCell(uint32_t a, uint32_t b)
 {
 	IndexSubCellData::iterator MyIT;
 
@@ -182,7 +182,7 @@ void IndexCell::AddZCell(boost::uint32_t a, boost::uint32_t b)
 	} // else
 } // IndexCell::AddZCell
 
-bool IndexCell::IncrementZCell(boost::uint32_t a, boost::uint32_t b)
+bool IndexCell::IncrementZCell(uint32_t a, uint32_t b)
 {
 	IndexSubCellData::iterator MyIT;
 	IndexCellData::iterator YourIT;
@@ -201,7 +201,7 @@ bool IndexCell::IncrementZCell(boost::uint32_t a, boost::uint32_t b)
 	return false;
 } // IndexCell::IncrementZCell
 
-void IndexCell::AddSubCell(boost::uint32_t a, boost::uint32_t b)
+void IndexCell::AddSubCell(uint32_t a, uint32_t b)
 {
 	IndexSubCellData::iterator MyIT;
 
@@ -218,7 +218,7 @@ void IndexCell::AddSubCell(boost::uint32_t a, boost::uint32_t b)
 	} // else
 } // IndexCell::AddSubCell
 
-bool IndexCell::IncrementSubCell(boost::uint32_t a, boost::uint32_t b)
+bool IndexCell::IncrementSubCell(uint32_t a, uint32_t b)
 {
 	IndexSubCellData::iterator MyIT;
 	IndexCellData::iterator YourIT;
@@ -237,7 +237,7 @@ bool IndexCell::IncrementSubCell(boost::uint32_t a, boost::uint32_t b)
 	return false;
 } // IndexCell::IncrementSubCell
 
-boost::uint8_t IndexCell::GetPointRecordCount(boost::uint32_t a)
+uint8_t IndexCell::GetPointRecordCount(uint32_t a)
 {
 	return m_PtRecords[a];
 } // IndexCell::GetPointRecordCount
diff --git a/src/detail/index/indexoutput.cpp b/src/detail/index/indexoutput.cpp
old mode 100644
new mode 100755
index 5cdc73a..f07e4d9
--- a/src/detail/index/indexoutput.cpp
+++ b/src/detail/index/indexoutput.cpp
@@ -49,11 +49,11 @@ namespace liblas { namespace detail {
 
 IndexOutput::IndexOutput(liblas::Index *indexsource) :
 	m_index(indexsource), 
-	m_VLRCommonDataSize(6 * sizeof(boost::uint32_t)),
-	m_VLRDataSizeLocation(4 * sizeof(boost::uint32_t)),
+	m_VLRCommonDataSize(6 * sizeof(uint32_t)),
+	m_VLRDataSizeLocation(4 * sizeof(uint32_t)),
 	m_FirstCellLocation(0),
-	m_LastCellLocation(sizeof(boost::uint32_t) * 2),
-	m_VLRPointCountLocation(5 * sizeof(boost::uint32_t)),
+	m_LastCellLocation(sizeof(uint32_t) * 2),
+	m_VLRPointCountLocation(5 * sizeof(uint32_t)),
 	m_DataPointsThisVLR(0)
 {
 } // IndexOutput::IndexOutput
@@ -61,10 +61,10 @@ IndexOutput::IndexOutput(liblas::Index *indexsource) :
 bool IndexOutput::InitiateOutput(void)
 {
 
-	boost::uint8_t Version;
+	uint8_t Version;
 	char DestStr[LIBLAS_INDEX_MAXSTRLEN];
-	boost::uint16_t StringLen;
-	boost::uint32_t WritePos = 0;
+	uint16_t StringLen;
+	uint32_t WritePos = 0;
 	
 	try {
 		// write a header in standard VLR format
@@ -81,19 +81,19 @@ bool IndexOutput::InitiateOutput(void)
 		// creator		
 		strncpy(DestStr, m_index->GetIndexAuthorStr(), LIBLAS_INDEX_MAXSTRLEN - 1);
 		DestStr[LIBLAS_INDEX_MAXSTRLEN - 1] = 0;
-		StringLen = static_cast<boost::uint16_t>(strlen(DestStr) + 1);
+		StringLen = static_cast<uint16_t>(strlen(DestStr) + 1);
 		WriteVLRData_n(m_indexVLRHeaderData, StringLen, WritePos);
 		WriteVLRData_str(m_indexVLRHeaderData, DestStr, StringLen, WritePos);
 		// comment
 		strncpy(DestStr, m_index->GetIndexCommentStr(), LIBLAS_INDEX_MAXSTRLEN - 1);
 		DestStr[LIBLAS_INDEX_MAXSTRLEN - 1] = 0;
-		StringLen = static_cast<boost::uint16_t>(strlen(DestStr) + 1);
+		StringLen = static_cast<uint16_t>(strlen(DestStr) + 1);
 		WriteVLRData_n(m_indexVLRHeaderData, StringLen, WritePos);
 		WriteVLRData_str(m_indexVLRHeaderData, DestStr, StringLen, WritePos);
 		// date	
 		strncpy(DestStr, m_index->GetIndexDateStr(), LIBLAS_INDEX_MAXSTRLEN - 1);
 		DestStr[LIBLAS_INDEX_MAXSTRLEN - 1] = 0;
-		StringLen = static_cast<boost::uint16_t>(strlen(DestStr) + 1);
+		StringLen = static_cast<uint16_t>(strlen(DestStr) + 1);
 		WriteVLRData_n(m_indexVLRHeaderData, StringLen, WritePos);
 		WriteVLRData_str(m_indexVLRHeaderData, DestStr, StringLen, WritePos);
 
@@ -113,7 +113,7 @@ bool IndexOutput::InitiateOutput(void)
 
 		// ID number of associated data VLR's - normally 43 but may use higher numbers
 		// in order to store more than one index in a file
-		boost::uint32_t TempLong = m_index->GetDataVLR_ID();
+		uint32_t TempLong = m_index->GetDataVLR_ID();
 		WriteVLRData_n(m_indexVLRHeaderData, TempLong, WritePos);
 		
 		// index cell matrix and number of points
@@ -127,8 +127,8 @@ bool IndexOutput::InitiateOutput(void)
 		WriteVLRData_n(m_indexVLRHeaderData, TempLong, WritePos);
 		
 		// record length
-		assert(WritePos <= (std::numeric_limits<boost::uint16_t>::max)());		
-		m_indexVLRHeaderRecord.SetRecordLength(static_cast<boost::uint16_t>(WritePos));
+		assert(WritePos <= (std::numeric_limits<uint16_t>::max)());		
+		m_indexVLRHeaderRecord.SetRecordLength(static_cast<uint16_t>(WritePos));
 		m_indexVLRHeaderData.resize(WritePos);
 		m_indexVLRHeaderRecord.SetData(m_indexVLRHeaderData);
 		m_index->GetIndexHeader()->AddVLR(m_indexVLRHeaderRecord);
@@ -150,7 +150,7 @@ bool IndexOutput::InitiateOutput(void)
 
 } // IndexOutput::InitiateOutput
 
-bool IndexOutput::OutputCell(liblas::detail::IndexCell *CellBlock, boost::uint32_t x, boost::uint32_t y)
+bool IndexOutput::OutputCell(liblas::detail::IndexCell *CellBlock, uint32_t x, uint32_t y)
 {
 
 	try {
@@ -166,7 +166,7 @@ bool IndexOutput::OutputCell(liblas::detail::IndexCell *CellBlock, boost::uint32
 		// of point records for the cell.
 		// Partially filled VLR's are only flushed when the next cell would overflow the VLR size limit of USHRT_MAX
 		// or on the last cell in the index cell block
-		boost::uint32_t SubCellsXY, SubCellsZ, NumPts, PtRecords;
+		uint32_t SubCellsXY, SubCellsZ, NumPts, PtRecords;
 
 		NumPts = CellBlock->GetNumPoints();
 		if (NumPts)
@@ -203,18 +203,18 @@ bool IndexOutput::OutputCell(liblas::detail::IndexCell *CellBlock, boost::uint32
 					MyCellIt != CellBlock->GetEndZCell(); ++MyCellIt)
 				{
 					// subcell number
-					boost::uint32_t ZCellID = MyCellIt->first;
+					uint32_t ZCellID = MyCellIt->first;
 					WriteVLRData_n(m_indexVLRTempData, ZCellID, m_TempWritePos);
 					// number of point records in subcell
-					boost::uint32_t ZCellNumPts = static_cast<boost::uint32_t>(MyCellIt->second.size());
+					uint32_t ZCellNumPts = static_cast<uint32_t>(MyCellIt->second.size());
 					WriteVLRData_n(m_indexVLRTempData, ZCellNumPts, m_TempWritePos);
 					for (liblas::detail::IndexCellData::iterator MyPointIt = MyCellIt->second.begin();
 						MyPointIt != MyCellIt->second.end(); ++MyPointIt)
 					{
-						boost::uint32_t PointID = MyPointIt->first;
+						uint32_t PointID = MyPointIt->first;
 						assert(PointID < m_index->GetPointRecordsCount());
 						WriteVLRData_n(m_indexVLRTempData, PointID, m_TempWritePos);
-						boost::uint8_t ConsecutivePts = MyPointIt->second;
+						uint8_t ConsecutivePts = MyPointIt->second;
 						WriteVLRData_n(m_indexVLRTempData, ConsecutivePts, m_TempWritePos);
 					} // for
 				} // for
@@ -225,18 +225,18 @@ bool IndexOutput::OutputCell(liblas::detail::IndexCell *CellBlock, boost::uint32
 					MyCellIt != CellBlock->GetEndSubCell(); ++MyCellIt)
 				{
 					// subcell number
-					boost::uint32_t SubCellID = MyCellIt->first;
+					uint32_t SubCellID = MyCellIt->first;
 					WriteVLRData_n(m_indexVLRTempData, SubCellID, m_TempWritePos);
 					// number of point records in subcell
-					boost::uint32_t SubCellNumPts = static_cast<boost::uint32_t>(MyCellIt->second.size());
+					uint32_t SubCellNumPts = static_cast<uint32_t>(MyCellIt->second.size());
 					WriteVLRData_n(m_indexVLRTempData, SubCellNumPts, m_TempWritePos);
 					for (liblas::detail::IndexCellData::iterator MyPointIt = MyCellIt->second.begin();
 						MyPointIt != MyCellIt->second.end(); ++MyPointIt)
 					{
-						boost::uint32_t PointID = MyPointIt->first;
+						uint32_t PointID = MyPointIt->first;
 						assert(PointID < m_index->GetPointRecordsCount());
 						WriteVLRData_n(m_indexVLRTempData, PointID, m_TempWritePos);
-						boost::uint8_t ConsecutivePts = MyPointIt->second;
+						uint8_t ConsecutivePts = MyPointIt->second;
 						WriteVLRData_n(m_indexVLRTempData, ConsecutivePts, m_TempWritePos);
 					} // for
 				} // for
@@ -246,10 +246,10 @@ bool IndexOutput::OutputCell(liblas::detail::IndexCell *CellBlock, boost::uint32
 				for (liblas::detail::IndexCellData::iterator MyPointIt = CellBlock->GetFirstRecord();
 					MyPointIt != CellBlock->GetEnd(); ++MyPointIt)
 				{
-					boost::uint32_t PointID = MyPointIt->first;
+					uint32_t PointID = MyPointIt->first;
 					assert(PointID < m_index->GetPointRecordsCount());
 					WriteVLRData_n(m_indexVLRTempData, PointID, m_TempWritePos);
-					boost::uint8_t ConsecutivePts = MyPointIt->second;
+					uint8_t ConsecutivePts = MyPointIt->second;
 					WriteVLRData_n(m_indexVLRTempData, ConsecutivePts, m_TempWritePos);
 				} // for
 			} // if
@@ -259,7 +259,7 @@ bool IndexOutput::OutputCell(liblas::detail::IndexCell *CellBlock, boost::uint32
 			if (m_SomeDataReadyToWrite && (m_TempWritePos + m_DataRecordSize > (std::numeric_limits<unsigned short>::max)()))
 			{
 				m_indexVLRCellPointData.resize(m_DataRecordSize);
-				m_indexVLRCellRecord.SetRecordLength(static_cast<boost::uint16_t>(m_DataRecordSize));
+				m_indexVLRCellRecord.SetRecordLength(static_cast<uint16_t>(m_DataRecordSize));
 				m_indexVLRCellRecord.SetData(m_indexVLRCellPointData);
 				m_index->GetIndexHeader()->AddVLR(m_indexVLRCellRecord);
 				// get set up for next VLR
@@ -270,10 +270,10 @@ bool IndexOutput::OutputCell(liblas::detail::IndexCell *CellBlock, boost::uint32
 			// if size allows, add to VLR cell record data
 			if (m_TempWritePos + m_DataRecordSize <= (std::numeric_limits<unsigned short>::max)())
 			{
-				boost::uint32_t WritePos = m_DataRecordSize;
+				uint32_t WritePos = m_DataRecordSize;
 				// update last cell in VLR, x, y
 				WriteVLRDataNoInc_n(m_indexVLRCellPointData, x, m_LastCellLocation);
-				WriteVLRDataNoInc_n(m_indexVLRCellPointData, y, m_LastCellLocation + sizeof(boost::uint32_t));
+				WriteVLRDataNoInc_n(m_indexVLRCellPointData, y, m_LastCellLocation + sizeof(uint32_t));
 				// update data record size
 				m_DataRecordSize += m_TempWritePos;
 				WriteVLRDataNoInc_n(m_indexVLRCellPointData, m_DataRecordSize, m_VLRDataSizeLocation);
@@ -292,10 +292,10 @@ bool IndexOutput::OutputCell(liblas::detail::IndexCell *CellBlock, boost::uint32
 				// When reading a VLR, if the size field is larger than USHRT_MAX you know you have more than one 
 				// record to read and concatenate. 
 				// WritePos should be at the end of the small VLR common data section
-				boost::uint32_t WritePos = m_DataRecordSize;
+				uint32_t WritePos = m_DataRecordSize;
 				// m_TempWritePos is the size of the new data block
 				// m_DataRecordSize is amount of common data written already
-				boost::uint32_t UnwrittenBytes = m_TempWritePos;
+				uint32_t UnwrittenBytes = m_TempWritePos;
 				// Make DataRecordSize equal to the total size of the data + common data 
 				m_DataRecordSize += m_TempWritePos;
 				// write the total size in the common data section
@@ -307,10 +307,10 @@ bool IndexOutput::OutputCell(liblas::detail::IndexCell *CellBlock, boost::uint32
 				WriteVLRDataNoInc_n(m_indexVLRCellPointData, m_DataPointsThisVLR, m_VLRPointCountLocation);
 				
 				// write out the part that fits in this VLR (excluding the common data)
-				boost::uint32_t WrittenBytes = (std::numeric_limits<unsigned short>::max)() - WritePos;
+				uint32_t WrittenBytes = (std::numeric_limits<unsigned short>::max)() - WritePos;
 				WriteVLRDataNoInc_str(m_indexVLRCellPointData, (char * const)&m_indexVLRTempData[0], WrittenBytes, WritePos);
 				// add this VLR
-				m_indexVLRCellRecord.SetRecordLength(static_cast<boost::uint16_t>((std::numeric_limits<unsigned short>::max)()));
+				m_indexVLRCellRecord.SetRecordLength(static_cast<uint16_t>((std::numeric_limits<unsigned short>::max)()));
 				m_indexVLRCellRecord.SetData(m_indexVLRCellPointData);
 				m_index->GetIndexHeader()->AddVLR(m_indexVLRCellRecord);
 				
@@ -319,11 +319,11 @@ bool IndexOutput::OutputCell(liblas::detail::IndexCell *CellBlock, boost::uint32
 				
 				while (UnwrittenBytes > 0)
 				{
-					boost::uint32_t NewWrittenBytes = (UnwrittenBytes < (std::numeric_limits<unsigned short>::max)() ? UnwrittenBytes: (std::numeric_limits<unsigned short>::max)());
+					uint32_t NewWrittenBytes = (UnwrittenBytes < (std::numeric_limits<unsigned short>::max)() ? UnwrittenBytes: (std::numeric_limits<unsigned short>::max)());
 					WriteVLRDataNoInc_str(m_indexVLRCellPointData, (char * const)&m_indexVLRTempData[WrittenBytes], NewWrittenBytes, 0);
 					WrittenBytes += NewWrittenBytes;
 					UnwrittenBytes -= NewWrittenBytes;
-					m_indexVLRCellRecord.SetRecordLength(static_cast<boost::uint16_t>(NewWrittenBytes));
+					m_indexVLRCellRecord.SetRecordLength(static_cast<uint16_t>(NewWrittenBytes));
 					m_indexVLRCellRecord.SetData(m_indexVLRCellPointData);
 					m_index->GetIndexHeader()->AddVLR(m_indexVLRCellRecord);
 				} // while
@@ -344,7 +344,7 @@ bool IndexOutput::OutputCell(liblas::detail::IndexCell *CellBlock, boost::uint32
 	
 } // IndexOutput::OutputCell
 
-bool IndexOutput::InitializeVLRData(boost::uint32_t CurCellX, boost::uint32_t CurCellY)
+bool IndexOutput::InitializeVLRData(uint32_t CurCellX, uint32_t CurCellY)
 {
 
 	try {
@@ -354,10 +354,10 @@ bool IndexOutput::InitializeVLRData(boost::uint32_t CurCellX, boost::uint32_t Cu
 		m_DataPointsThisVLR = 0;
 		// 1st cell in VLR, x, y
 		WriteVLRDataNoInc_n(m_indexVLRCellPointData, CurCellX, m_FirstCellLocation);
-		WriteVLRDataNoInc_n(m_indexVLRCellPointData, CurCellY, m_FirstCellLocation + sizeof(boost::uint32_t));
+		WriteVLRDataNoInc_n(m_indexVLRCellPointData, CurCellY, m_FirstCellLocation + sizeof(uint32_t));
 		// last cell in VLR, x, y
 		WriteVLRDataNoInc_n(m_indexVLRCellPointData, CurCellX, m_LastCellLocation);
-		WriteVLRDataNoInc_n(m_indexVLRCellPointData, CurCellY, m_LastCellLocation + sizeof(boost::uint32_t));
+		WriteVLRDataNoInc_n(m_indexVLRCellPointData, CurCellY, m_LastCellLocation + sizeof(uint32_t));
 		// data record size
 		WriteVLRDataNoInc_n(m_indexVLRCellPointData, m_DataRecordSize, m_VLRDataSizeLocation);
 		// number of points in this VLR - added in Index version 1.1
@@ -384,18 +384,18 @@ bool IndexOutput::FinalizeOutput(void)
 		if (m_SomeDataReadyToWrite)
 		{
 		#ifdef LIBLAS_INDEX_PADLASTVLR
-			boost::uint32_t PadBytes = m_DataRecordSize % 4;
+			uint32_t PadBytes = m_DataRecordSize % 4;
 			if (PadBytes && (m_DataRecordSize + PadBytes <= (std::numeric_limits<unsigned short>::max)()))
 			{
 				m_DataRecordSize += PadBytes;
-				for (boost::uint32_t i = 0; i < PadBytes; ++i)
+				for (uint32_t i = 0; i < PadBytes; ++i)
 				{
 					m_indexVLRCellPointData[m_DataRecordSize - i - 1] = 0;
 				} // for
 			} // if
 		#endif // LIBLAS_INDEX_PADLASTVLR
 			m_indexVLRCellPointData.resize(m_DataRecordSize);
-			m_indexVLRCellRecord.SetRecordLength(static_cast<boost::uint16_t>(m_DataRecordSize));
+			m_indexVLRCellRecord.SetRecordLength(static_cast<uint16_t>(m_DataRecordSize));
 			m_indexVLRCellRecord.SetData(m_indexVLRCellPointData);
 			m_index->GetIndexHeader()->AddVLR(m_indexVLRCellRecord);
 		} // if
diff --git a/src/detail/reader/cachedreader.cpp b/src/detail/reader/cachedreader.cpp
old mode 100644
new mode 100755
index f2aa4f6..eb459d0
--- a/src/detail/reader/cachedreader.cpp
+++ b/src/detail/reader/cachedreader.cpp
@@ -86,13 +86,13 @@ void CachedReaderImpl::ReadHeader()
     // 
     // // Mark all positions as uncached and build up the mask
     // // to the size of the number of points in the file
-    // boost::uint8_t const uncached_mask = 0;
+    // uint8_t const uncached_mask = 0;
     // cache_mask_type(hptr->GetPointRecordsCount(), uncached_mask).swap(m_mask);
     
     m_header = hptr;
 }
 
-void CachedReaderImpl::CacheData(boost::uint32_t position) 
+void CachedReaderImpl::CacheData(uint32_t position) 
 {
     cache_mask_type::size_type old_cache_start_position = m_cache_start_position;
     m_cache_start_position = position;
@@ -120,7 +120,7 @@ void CachedReaderImpl::CacheData(boost::uint32_t position)
         try {
             m_mask[m_current] = 1;
             ReadNextUncachedPoint();
-            m_cache[i] = ReaderImpl::GetPoint();
+            m_cache[i] = new liblas::Point(ReaderImpl::GetPoint());
         } catch (std::out_of_range&) {
             // cached to the end
             break;
@@ -153,7 +153,7 @@ void CachedReaderImpl::ReadNextUncachedPoint()
 
 }
 
-void CachedReaderImpl::ReadCachedPoint(boost::uint32_t position) {
+void CachedReaderImpl::ReadCachedPoint(uint32_t position) {
     
     int32_t cache_position = position - m_cache_start_position ;
 
@@ -174,14 +174,14 @@ void CachedReaderImpl::ReadCachedPoint(boost::uint32_t position) {
     
         // Mark all positions as uncached and build up the mask
         // to the size of the number of points in the file
-        boost::uint8_t const uncached_mask = 0;
+        uint8_t const uncached_mask = 0;
         cache_mask_type(m_header->GetPointRecordsCount(), uncached_mask).swap(m_mask);
  
         m_cache_initialized = true;
     }
     if (m_mask[position] == 1) {
         m_cache_read_position = position;
-        *m_point =  m_cache[cache_position];
+        *m_point =  *m_cache[cache_position];
         return;
     } else {
 
@@ -208,7 +208,7 @@ void CachedReaderImpl::ReadCachedPoint(boost::uint32_t position) {
                     << " greater than cache size: " << m_cache.size() ;
                 throw std::runtime_error(msg.str());
             }
-            *m_point = m_cache[cache_position];
+            *m_point = *m_cache[cache_position];
             return;
         } else {
             std::ostringstream msg;
diff --git a/src/detail/reader/header.cpp b/src/detail/reader/header.cpp
old mode 100644
new mode 100755
index 314595b..f396091
--- a/src/detail/reader/header.cpp
+++ b/src/detail/reader/header.cpp
@@ -95,16 +95,23 @@ void Header::ReadHeader()
     m_header->SetReserved(n2);
 
     // 4-7. Project ID
-    uint32_t d1 = 0;
-    uint16_t d2 = 0;
-    uint16_t d3 = 0;
-    uint8_t d4[8] = { 0 };
-    read_n(d1, m_ifs, sizeof(d1));
-    read_n(d2, m_ifs, sizeof(d2));
-    read_n(d3, m_ifs, sizeof(d3));
-    read_n(d4, m_ifs, sizeof(d4));
-    liblas::guid g(d1, d2, d3, d4);
-    m_header->SetProjectId(g);
+    // uint32_t d1 = 0;
+    // uint16_t d2 = 0;
+    // uint16_t d3 = 0;
+    // uint8_t d4[8] = { 0 };
+    // read_n(d1, m_ifs, sizeof(d1));
+    // read_n(d2, m_ifs, sizeof(d2));
+    // read_n(d3, m_ifs, sizeof(d3));
+    // read_n(d4, m_ifs, sizeof(d4));
+    // liblas::guid g(d1, d2, d3, d4);
+
+    uint8_t d[16] = {0};
+    read_n(d, m_ifs, 16);
+    boost::uuids::uuid u;
+    for (int i=0; i<16; i++)
+        u.data[i] = d[i];
+    
+    m_header->SetProjectId(u);
 
     // 8. Version major
     read_n(n1, m_ifs, sizeof(n1));
@@ -215,13 +222,7 @@ void Header::ReadHeader()
     
     // 18. Point Data Record Length
     read_n(n2, m_ifs, sizeof(n2));
-    // FIXME: We currently only use the DataFormatId, this needs to 
-    // adjust the schema based on the difference between the DataRecordLength
-    // and the base size of the pointformat.  If we have an XML schema in the 
-    // form of a VLR in the file, we'll use that to apportion the liblas::Schema.
-    // Otherwise, all bytes after the liblas::Schema::GetBaseByteSize will be 
-    // a simple uninterpreted byte field. 
-    // m_header->SetDataRecordLength(n2);
+    uint16_t record_length(n2);
 
     // 19. Number of point records
     read_n(n4, m_ifs, sizeof(n4));
@@ -270,7 +271,7 @@ void Header::ReadHeader()
     if (m_header->GetRecordsCount() > 0)
         ReadVLRs();
 
-    boost::uint32_t pad = m_header->GetDataOffset() - (m_header->GetHeaderSize() + m_header->GetVLRBlockSize());
+    uint32_t pad = m_header->GetDataOffset() - (m_header->GetHeaderSize() + m_header->GetVLRBlockSize());
     m_header->SetHeaderPadding(pad);
 
     // If we're eof, we need to reset the state
@@ -280,6 +281,21 @@ void Header::ReadHeader()
     // Seek to the data offset so we can start reading points
     m_ifs.seekg(m_header->GetDataOffset());
 
+    if (m_header->GetDataRecordLength() != record_length) // we have extra_bytes
+    {
+        // FIXME: We only dump the bytes into an "extra" dimension for 
+        // now and there's now way to get to them. For LAS 1.4 files these 
+        // could be interpreted using the VLR, but it isn't done at this time.
+        
+        Dimension extra("extra", (record_length - m_header->GetDataRecordLength())*8);
+        extra.SetDescription("Extra bytes");
+        extra.IsRequired(false); extra.IsActive(true); extra.IsInteger(false); extra.IsNumeric(true);
+        
+        Schema schema = m_header->GetSchema();
+        schema.AddDimension(extra);
+        m_header->SetSchema(schema);
+    } 
+
 }
 
 bool Header::HasLAS10PadSignature() 
@@ -329,7 +345,7 @@ bool Header::HasLAS10PadSignature()
 
 void Header::ReadVLRs()
 {
-    VLRHeader vlrh = { 0 };
+    VLRHeader vlrh;
 
     if (m_ifs.eof()) {
         // if we hit the end of the file already, it's because 
diff --git a/src/detail/reader/reader.cpp b/src/detail/reader/reader.cpp
old mode 100644
new mode 100755
index 5540bb5..d437b52
--- a/src/detail/reader/reader.cpp
+++ b/src/detail/reader/reader.cpp
@@ -63,8 +63,8 @@ ReaderImpl::ReaderImpl(std::istream& ifs)
     , m_current(0)
     // , m_point_reader(PointReaderPtr())
     , m_header_reader(new reader::Header(m_ifs))
-    , m_header(HeaderPtr())
-    , m_point(PointPtr(new liblas::Point()))
+    , m_header(HeaderPtr(new liblas::Header(DefaultHeader::get())))
+    , m_point(PointPtr(new liblas::Point(m_header.get())))
     , m_filters(0)
     , m_transforms(0)
     , bNeedHeaderCheck(false)
diff --git a/src/detail/reader/zipreader.cpp b/src/detail/reader/zipreader.cpp
old mode 100644
new mode 100755
index 59f60d9..0009a3b
--- a/src/detail/reader/zipreader.cpp
+++ b/src/detail/reader/zipreader.cpp
@@ -68,8 +68,8 @@ ZipReaderImpl::ZipReaderImpl(std::istream& ifs)
     , m_size(0)
     , m_current(0)
     , m_header_reader(new reader::Header(m_ifs))
-    , m_header(HeaderPtr())
-    , m_point(PointPtr(new liblas::Point()))
+    , m_header(HeaderPtr(new liblas::Header(DefaultHeader::get())))
+    , m_point(PointPtr(new liblas::Point(m_header.get())))
     , m_filters(0)
     , m_transforms(0)
     , bNeedHeaderCheck(false)
@@ -199,12 +199,17 @@ void ZipReaderImpl::ReadIdiom()
     if (!ok)
     {
         std::ostringstream oss;
-        oss << "Error reading compressed point data: " << std::string(m_unzipper->get_error());
+        const char* errMsg = m_unzipper->get_error();
+        oss << "Error reading compressed point data: " ;
+        if (errMsg)
+            oss << "'" << m_unzipper->get_error() <<"'";
+        else
+            oss << "no message from LASzip library";
         throw liblas_error(oss.str());
     }
 
     {
-        std::vector<boost::uint8_t>& data = m_point->GetData();
+        std::vector<uint8_t>& data = m_point->GetData();
 
         unsigned int size = m_zipPoint->m_lz_point_size;
         assert(size == data.size());
diff --git a/src/detail/sha1.cpp b/src/detail/sha1.cpp
old mode 100644
new mode 100755
diff --git a/src/detail/utility.cpp b/src/detail/utility.cpp
old mode 100644
new mode 100755
diff --git a/src/detail/writer/header.cpp b/src/detail/writer/header.cpp
old mode 100644
new mode 100755
index 334794d..db92971
--- a/src/detail/writer/header.cpp
+++ b/src/detail/writer/header.cpp
@@ -100,35 +100,14 @@ void Header::write()
     // If we are in append mode, we are not touching *any* VLRs. 
     if (bAppendMode) 
     {
-        // We're opened in append mode
-        
-        if (!m_header.Compressed())
-        {
-            ios::off_type points = end - static_cast<ios::off_type>(m_header.GetDataOffset());
-            ios::off_type count = points / static_cast<ios::off_type>(m_header.GetDataRecordLength());
-        
-            if (points < 0) {
-                std::ostringstream oss;
-                oss << "The header's data offset, " << m_header.GetDataOffset() 
-                    <<", is much larger than the size of the file, " << end
-                    <<", and something is amiss.  Did you use the right header"
-                    <<" offset value?";
-                throw std::runtime_error(oss.str());
-            }
-            
-            m_pointCount = static_cast<uint32_t>(count);
-
-        } else {
-            m_pointCount = m_header.GetPointRecordsCount();
-        }
+        // Believe the header
+        m_pointCount = m_header.GetPointRecordsCount();
 
         // Position to the beginning of the file to start writing the header
         m_ofs.seekp(0, ios::beg);
-
     } 
     else 
     {
-        
         // Rewrite the georeference VLR entries if they exist
         m_header.DeleteVLRs("liblas", 2112);
         m_header.SetGeoreference();
@@ -216,16 +195,21 @@ void Header::write()
     } 
 
     // 3-6. GUID data
-    uint32_t d1 = 0;
-    uint16_t d2 = 0;
-    uint16_t d3 = 0;
-    uint8_t d4[8] = { 0 };
-    liblas::guid g = m_header.GetProjectId();
-    g.output_data(d1, d2, d3, d4);
-    detail::write_n(m_ofs, d1, sizeof(d1));
-    detail::write_n(m_ofs, d2, sizeof(d2));
-    detail::write_n(m_ofs, d3, sizeof(d3));
-    detail::write_n(m_ofs, d4, sizeof(d4));
+    boost::uint8_t d[16];
+    boost::uuids::uuid u = m_header.GetProjectId();
+
+    d[0] = u.data[3];
+    d[1] = u.data[2];
+    d[2] = u.data[1];
+    d[3] = u.data[0];
+    d[4] = u.data[5];
+    d[5] = u.data[4];
+    d[6] = u.data[7];
+    d[7] = u.data[6];
+    for (int i=8; i<16; i++)
+        d[i] = u.data[i];
+    
+    detail::write_n(m_ofs, d, 16);
     
     // 7. Version major
     n1 = m_header.GetVersionMajor();
diff --git a/src/detail/writer/point.cpp b/src/detail/writer/point.cpp
old mode 100644
new mode 100755
diff --git a/src/detail/writer/writer.cpp b/src/detail/writer/writer.cpp
old mode 100644
new mode 100755
index 441081e..686a9cf
--- a/src/detail/writer/writer.cpp
+++ b/src/detail/writer/writer.cpp
@@ -77,7 +77,7 @@ void WriterImpl::UpdatePointCount(boost::uint32_t count)
     boost::uint32_t out = m_pointCount;
 
     if ( count != 0 ) { out = count; }
-    
+
     m_header->SetPointRecordsCount(out);
     
     if (!m_ofs.good() ) return;
@@ -102,7 +102,7 @@ WriterImpl::~WriterImpl()
     // care if we weren't able to write it.
     try
     {
-        UpdatePointCount(0);
+        UpdatePointCount(m_pointCount);
         
     } catch (std::runtime_error const&)
     {
diff --git a/src/detail/writer/zipwriter.cpp b/src/detail/writer/zipwriter.cpp
old mode 100644
new mode 100755
diff --git a/src/detail/zippoint.cpp b/src/detail/zippoint.cpp
old mode 100644
new mode 100755
index 4b4dbb1..98fe8a3
--- a/src/detail/zippoint.cpp
+++ b/src/detail/zippoint.cpp
@@ -57,7 +57,7 @@
 namespace liblas { namespace detail { 
 
 static std::string laszip_userid("laszip encoded");
-static boost::uint16_t laszip_recordid = 22204;
+static uint16_t laszip_recordid = 22204;
 static std::string laszip_description = "http://laszip.org";
 
 
@@ -154,7 +154,7 @@ void ZipPoint::ConstructItems()
     unsigned int point_offset = 0;
     m_lz_point = new unsigned char*[m_zip->num_items];
     
-    boost::scoped_array<boost::uint8_t> d( new boost::uint8_t[ m_lz_point_size ] );
+    boost::scoped_array<uint8_t> d( new uint8_t[ m_lz_point_size ] );
     m_lz_point_data.swap(d);
     for (unsigned i = 0; i < m_zip->num_items; i++)
     {
@@ -175,7 +175,7 @@ void ZipPoint::ConstructVLR(VariableRecord& v) const
     m_zip->pack(data, num);
 
     // Ick.
-    std::vector<boost::uint8_t> vdata;
+    std::vector<uint8_t> vdata;
     for (int i=0; i<num; i++)
     {
         vdata.push_back(data[i]);
@@ -185,11 +185,11 @@ void ZipPoint::ConstructVLR(VariableRecord& v) const
     v.SetReserved(0xAABB);
     v.SetUserId(laszip_userid);
     v.SetRecordId(laszip_recordid);
-    v.SetRecordLength(static_cast<boost::uint16_t>(num));
+    v.SetRecordLength(static_cast<uint16_t>(num));
     v.SetDescription(laszip_description);
     v.SetData(vdata);
 
-    v.SetRecordLength((boost::uint16_t)num);
+    v.SetRecordLength((uint16_t)num);
     
     return;
 }
diff --git a/src/dimension.cpp b/src/dimension.cpp
old mode 100644
new mode 100755
index 3e89340..ab4869b
--- a/src/dimension.cpp
+++ b/src/dimension.cpp
@@ -150,11 +150,11 @@ liblas::property_tree::ptree Dimension::GetPTree() const
     dim.put("name", GetName());
     dim.put("description", GetDescription());
     dim.put("position", GetPosition());
-    dim.put("active", static_cast<boost::uint32_t>(IsActive()));
+    dim.put("active", static_cast<uint32_t>(IsActive()));
     dim.put("size", GetBitSize());
-    dim.put("integer", static_cast<boost::uint32_t>(IsInteger()));
-    dim.put("signed", static_cast<boost::uint32_t>(IsSigned()));
-    dim.put("required", static_cast<boost::uint32_t>(IsRequired()));
+    dim.put("integer", static_cast<uint32_t>(IsInteger()));
+    dim.put("signed", static_cast<uint32_t>(IsSigned()));
+    dim.put("required", static_cast<uint32_t>(IsRequired()));
     dim.put("byteoffset", GetByteOffset());
     dim.put("bitoffset" , GetBitOffset());
     dim.put("bytesize", GetByteSize());
@@ -211,8 +211,8 @@ std::ostream& operator<<(std::ostream& os, liblas::Dimension const& d)
     for (std::string::size_type i=0; i != pad_size; i++ ) {
         pad << " ";
     }
-    os << quoted_name.str() << pad.str() <<" -- "<< " size: " << tree.get<boost::uint32_t>("size");
-    os << " offset: " << tree.get<boost::uint32_t>("byteoffset");
+    os << quoted_name.str() << pad.str() <<" -- "<< " size: " << tree.get<uint32_t>("size");
+    os << " offset: " << tree.get<uint32_t>("byteoffset");
     os << std::endl;
     
     return os;
diff --git a/src/error.cpp b/src/error.cpp
old mode 100644
new mode 100755
diff --git a/src/factory.cpp b/src/factory.cpp
old mode 100644
new mode 100755
index 0f6714a..5154efc
--- a/src/factory.cpp
+++ b/src/factory.cpp
@@ -71,7 +71,7 @@ Reader ReaderFactory::CreateWithImpl(ReaderIPtr r)
     return reader;
 }
 
-Reader ReaderFactory::CreateCached(std::istream& stream, boost::uint32_t cache_size)
+Reader ReaderFactory::CreateCached(std::istream& stream, uint32_t cache_size)
 {
     detail::HeaderReaderPtr h(new detail::reader::Header(stream));
     h->ReadHeader();
diff --git a/src/filter.cpp b/src/filter.cpp
old mode 100644
new mode 100755
diff --git a/src/gt_citation.cpp b/src/gt_citation.cpp
old mode 100644
new mode 100755
diff --git a/src/gt_citation.h b/src/gt_citation.h
old mode 100644
new mode 100755
diff --git a/src/gt_wkt_srs.cpp b/src/gt_wkt_srs.cpp
index c067e65..ca31677 100755
--- a/src/gt_wkt_srs.cpp
+++ b/src/gt_wkt_srs.cpp
@@ -1,15 +1,15 @@
 /******************************************************************************
- * $Id: gt_wkt_srs.cpp 21928 2011-03-11 03:31:28Z warmerdam $
+ * $Id: gt_wkt_srs.cpp 27182 2014-04-14 20:03:08Z rouault $
  *
  * Project:  GeoTIFF Driver
  * Purpose:  Implements translation between GeoTIFF normalized projection
- *           definitions and OpenGIS WKT SRS format.  This code is
- *           deliberately GDAL free, and it is intended to be moved into
- *           libgeotiff someday if possible.
+ *           definitions and OpenGIS WKT SRS format.  This code is intended to
+ *           be moved into libgeotiff someday if possible.
  * Author:   Frank Warmerdam, warmerdam at pobox.com
  *
  ******************************************************************************
  * Copyright (c) 1999, Frank Warmerdam
+ * Copyright (c) 2008-2014, Even Rouault <even dot rouault at mines-paris dot org>
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the "Software"),
@@ -30,9 +30,10 @@
  * DEALINGS IN THE SOFTWARE.
  ****************************************************************************/
 
-#include "cpl_serv.h"
-#include "geo_tiffp.h"
-#define CPL_ERROR_H_INCLUDED
+#include "cpl_error.h"
+#include "cpl_conv.h"
+#include "cpl_csv.h"
+#include "gdal_csv.h"
 
 #include "geovalues.h"
 #include "ogr_spatialref.h"
@@ -44,60 +45,27 @@
 #include "gt_wkt_srs_for_gdal.h"
 #include "gt_citation.h"
 
-CPL_CVSID("$Id: gt_wkt_srs.cpp 21928 2011-03-11 03:31:28Z warmerdam $")
+CPL_CVSID("$Id: gt_wkt_srs.cpp 27182 2014-04-14 20:03:08Z rouault $")
 
-CPL_C_START
-#ifndef CPL_SERV_H_INTERNAL
-/* Make VSIL_STRICT_ENFORCE active in DEBUG builds */
-#ifdef DEBUG
-#define VSIL_STRICT_ENFORCE
-#endif
+#define ProjLinearUnitsInterpCorrectGeoKey   3059
 
-#ifdef VSIL_STRICT_ENFORCE
-typedef struct _VSILFILE VSILFILE;
-#else
-typedef FILE VSILFILE;
+#ifndef CT_HotineObliqueMercatorAzimuthCenter
+#  define CT_HotineObliqueMercatorAzimuthCenter 9815
 #endif
 
-// ensure compatability with older libgeotiffs. 
 #if !defined(GTIFAtof)
-#  define GTIFAtof atof
+#  define GTIFAtof CPLAtof
 #endif
 
-int CPL_DLL VSIFCloseL( VSILFILE * );
-int CPL_DLL VSIUnlink( const char * );
-VSILFILE CPL_DLL *VSIFileFromMemBuffer( const char *pszFilename,
-                                    GByte *pabyData, 
-                                    GUIntBig nDataLength,
-                                    int bTakeOwnership );
-GByte CPL_DLL *VSIGetMemFileBuffer( const char *pszFilename, 
-                                    GUIntBig *pnDataLength, 
-                                    int bUnlinkAndSeize );
-
-/* Those stuff are redefined in external libgeotiff cpl_serv.h */
-/* as macros. Let's use GDAL functions instead */
-/* E.Rouault : I'm wondering why we just don't #define CPL_SERV_H_INCLUDED */
-/* at the beginning of this file to avoid cpl_serv.h to be used at all ??? */
-
-#undef CSVReadParseLine
-char CPL_DLL  **CSVReadParseLine( FILE *fp);
-#undef CSLDestroy
-void CPL_DLL CPL_STDCALL CSLDestroy(char **papszStrList);
-#undef VSIFree
-void CPL_DLL    VSIFree( void * );
-#undef CPLFree
-#define CPLFree VSIFree
-#undef CPLMalloc
-void CPL_DLL *CPLMalloc( size_t );
-#undef CPLCalloc
-void CPL_DLL *CPLCalloc( size_t, size_t );
-#undef CPLStrdup
-char CPL_DLL *CPLStrdup( const char * );
-
-#endif /* CPL_SERV_H_INTERNAL */
+CPL_C_START
+void CPL_DLL LibgeotiffOneTimeInit();
+void    LibgeotiffOneTimeCleanupMutex();
 
 CPL_C_END
 
+// To remind myself not to use CPLString in this file!
+#define CPLString Please_do_not_use_CPLString_in_this_file
+
 static const char *papszDatumEquiv[] =
 {
     "Militar_Geographische_Institut",
@@ -119,6 +87,40 @@ static const char *papszDatumEquiv[] =
 #endif
 
 /************************************************************************/
+/*                       LibgeotiffOneTimeInit()                        */
+/************************************************************************/
+
+static void* hMutex = NULL;
+
+void LibgeotiffOneTimeInit() 
+{
+    static int bOneTimeInitDone = FALSE;
+    CPLMutexHolder oHolder( &hMutex);
+
+    if (bOneTimeInitDone)
+        return;
+
+    bOneTimeInitDone = TRUE;
+
+    // If linking with an external libgeotiff we hope this will call the
+    // SetCSVFilenameHook() in libgeotiff, not the one in gdal/port!
+    // SetCSVFilenameHook( GDALDefaultCSVFilename );
+}
+
+/************************************************************************/
+/*                   LibgeotiffOneTimeCleanupMutex()                    */
+/************************************************************************/
+
+void LibgeotiffOneTimeCleanupMutex() 
+{
+    if( hMutex != NULL )
+    {
+        CPLDestroyMutex(hMutex);
+        hMutex = NULL;
+    }
+}
+
+/************************************************************************/
 /*                       GTIFToCPLRecyleString()                        */
 /*                                                                      */
 /*      This changes a string from the libgeotiff heap to the GDAL      */
@@ -207,11 +209,11 @@ static void WKTMassageDatum( char ** ppszDatum )
 /************************************************************************/
 
 /* For example:
-   GTCitationGeoKey (Ascii,215): "IMAGINE GeoTIFF Support\nCopyright 1991 - 2001 by ERDAS, Inc. All Rights Reserved\n@(#)$RCSfile$ $Revision: 21928 $ $Date: 2011-03-10 22:31:28 -0500 (Thu, 10 Mar 2011) $\nProjection Name = UTM\nUnits = meters\nGeoTIFF Units = meters"
+   GTCitationGeoKey (Ascii,215): "IMAGINE GeoTIFF Support\nCopyright 1991 - 2001 by ERDAS, Inc. All Rights Reserved\n@(#)$RCSfile$ $Revision: 27182 $ $Date: 2014-04-14 15:03:08 -0500 (Mon, 14 Apr 2014) $\nProjection Name = UTM\nUnits = meters\nGeoTIFF Units = meters"
 
-   GeogCitationGeoKey (Ascii,267): "IMAGINE GeoTIFF Support\nCopyright 1991 - 2001 by ERDAS, Inc. All Rights Reserved\n@(#)$RCSfile$ $Revision: 21928 $ $Date: 2011-03-10 22:31:28 -0500 (Thu, 10 Mar 2011) $\nUnable to match Ellipsoid (Datum) to a GeographicTypeGeoKey value\nEllipsoid = Clarke 1866\nDatum = NAD27 (CONUS)"
+   GeogCitationGeoKey (Ascii,267): "IMAGINE GeoTIFF Support\nCopyright 1991 - 2001 by ERDAS, Inc. All Rights Reserved\n@(#)$RCSfile$ $Revision: 27182 $ $Date: 2014-04-14 15:03:08 -0500 (Mon, 14 Apr 2014) $\nUnable to match Ellipsoid (Datum) to a GeographicTypeGeoKey value\nEllipsoid = Clarke 1866\nDatum = NAD27 (CONUS)"
 
-   PCSCitationGeoKey (Ascii,214): "IMAGINE GeoTIFF Support\nCopyright 1991 - 2001 by ERDAS, Inc. All Rights Reserved\n@(#)$RCSfile$ $Revision: 21928 $ $Date: 2011-03-10 22:31:28 -0500 (Thu, 10 Mar 2011) $\nUTM Zone 10N\nEllipsoid = Clarke 1866\nDatum = NAD27 (CONUS)"
+   PCSCitationGeoKey (Ascii,214): "IMAGINE GeoTIFF Support\nCopyright 1991 - 2001 by ERDAS, Inc. All Rights Reserved\n@(#)$RCSfile$ $Revision: 27182 $ $Date: 2014-04-14 15:03:08 -0500 (Mon, 14 Apr 2014) $\nUTM Zone 10N\nEllipsoid = Clarke 1866\nDatum = NAD27 (CONUS)"
  
 */
 
@@ -259,6 +261,11 @@ char *GTIFGetOGISDefn( GTIF *hGTIF, GTIFDefn * psDefn )
     OGRSpatialReference	oSRS;
 
 /* -------------------------------------------------------------------- */
+/*      Make sure we have hooked CSVFilename().                         */
+/* -------------------------------------------------------------------- */
+    LibgeotiffOneTimeInit();
+
+/* -------------------------------------------------------------------- */
 /*  Handle non-standard coordinate systems where GTModelTypeGeoKey      */
 /*  is not defined, but ProjectedCSTypeGeoKey is defined (ticket #3019) */
 /* -------------------------------------------------------------------- */
@@ -338,9 +345,8 @@ char *GTIFGetOGISDefn( GTIF *hGTIF, GTIFDefn * psDefn )
             GTIFKeyGet( hGTIF, GeogCitationGeoKey, szName, 
                         0, sizeof(szName) );
 
-#if GDAL_VERSION_NUM >=1900
         oSRS.SetGeocCS( szName );
-#endif
+
         char	*pszUnitsName = NULL;
           
         GTIFGetUOMLengthInfo( psDefn->UOMLength, &pszUnitsName, NULL );
@@ -357,6 +363,87 @@ char *GTIFGetOGISDefn( GTIF *hGTIF, GTIFDefn * psDefn )
     }
     
 /* -------------------------------------------------------------------- */
+/*      #3901: In libgeotiff 1.3.0 and earlier we incorrectly           */
+/*      interpreted linear projection parameter geokeys (false          */
+/*      easting/northing) as being in meters instead of the             */
+/*      coordinate system of the file.   The following code attempts    */
+/*      to provide mechanisms for fixing the issue if we are linked     */
+/*      with an older version of libgeotiff.                            */
+/* -------------------------------------------------------------------- */
+    int iParm;
+    const char *pszLinearUnits = 
+        CPLGetConfigOption( "GTIFF_LINEAR_UNITS", "DEFAULT" );
+
+#if LIBGEOTIFF_VERSION <= 1300
+    if( EQUAL(pszLinearUnits,"DEFAULT") && psDefn->Projection == KvUserDefined )
+    {
+        for( iParm = 0; iParm < psDefn->nParms; iParm++ )
+        {
+            switch( psDefn->ProjParmId[iParm] )
+            {
+              case ProjFalseEastingGeoKey:
+              case ProjFalseNorthingGeoKey:
+              case ProjFalseOriginEastingGeoKey:
+              case ProjFalseOriginNorthingGeoKey:
+              case ProjCenterEastingGeoKey:
+              case ProjCenterNorthingGeoKey:
+                if( psDefn->UOMLengthInMeters != 0 
+                    && psDefn->UOMLengthInMeters != 1.0 )
+                {
+                    psDefn->ProjParm[iParm] *= psDefn->UOMLengthInMeters;
+                    CPLDebug( "GTIFF", "converting geokey to meters to fix bug in old libgeotiff" );
+                }
+                break;
+
+              default:
+                break;
+            }
+        }
+    }
+#endif /* LIBGEOTIFF_VERSION <= 1300 */
+
+/* -------------------------------------------------------------------- */
+/*      #3901: If folks have broken GeoTIFF files generated with        */
+/*      older versions of GDAL+libgeotiff, then they may need a         */
+/*      hack to allow them to be read properly.  This is that           */
+/*      hack.  We basically try to undue the conversion applied by      */
+/*      libgeotiff to meters (or above) to simulate the old             */
+/*      behavior.                                                       */
+/* -------------------------------------------------------------------- */
+    short bLinearUnitsMarkedCorrect = FALSE;
+    
+    GTIFKeyGet(hGTIF, (geokey_t) ProjLinearUnitsInterpCorrectGeoKey, 
+               &bLinearUnitsMarkedCorrect, 0, 1);
+
+    if( EQUAL(pszLinearUnits,"BROKEN") 
+        && psDefn->Projection == KvUserDefined 
+        && !bLinearUnitsMarkedCorrect )
+    {
+        for( iParm = 0; iParm < psDefn->nParms; iParm++ )
+        {
+            switch( psDefn->ProjParmId[iParm] )
+            {
+              case ProjFalseEastingGeoKey:
+              case ProjFalseNorthingGeoKey:
+              case ProjFalseOriginEastingGeoKey:
+              case ProjFalseOriginNorthingGeoKey:
+              case ProjCenterEastingGeoKey:
+              case ProjCenterNorthingGeoKey:
+                if( psDefn->UOMLengthInMeters != 0 
+                    && psDefn->UOMLengthInMeters != 1.0 )
+                {
+                    psDefn->ProjParm[iParm] /= psDefn->UOMLengthInMeters;
+                    CPLDebug( "GTIFF", "converting geokey to accomodate old broken file due to GTIFF_LINEAR_UNITS=BROKEN setting." );
+                }
+                break;
+
+              default:
+                break;
+            }
+        }
+    }
+
+/* -------------------------------------------------------------------- */
 /*      If this is a projected SRS we set the PROJCS keyword first      */
 /*      to ensure that the GEOGCS will be a child.                      */
 /* -------------------------------------------------------------------- */
@@ -482,6 +569,7 @@ char *GTIFGetOGISDefn( GTIF *hGTIF, GTIFDefn * psDefn )
     dfSemiMajor = psDefn->SemiMajor;
     if( dfSemiMajor == 0.0 )
     {
+        CPLFree(pszSpheroidName);
         pszSpheroidName = CPLStrdup("unretrievable - using WGS84");
         dfSemiMajor = SRS_WGS84_SEMIMAJOR;
         dfInvFlattening = SRS_WGS84_INVFLATTENING;
@@ -499,7 +587,7 @@ char *GTIFGetOGISDefn( GTIF *hGTIF, GTIFDefn * psDefn )
     if(!pszGeogName || strlen(pszGeogName) == 0)
     {
         CPLFree(pszGeogName);
-        pszGeogName = CPLStrdup( pszDatumName );
+        pszGeogName = CPLStrdup( pszDatumName ? pszDatumName : "unknown" );
     }
 
     if(aUnitGot)
@@ -532,7 +620,7 @@ char *GTIFGetOGISDefn( GTIF *hGTIF, GTIFDefn * psDefn )
     CPLFree( pszPMName );
     CPLFree( pszAngularUnits );
 
-#if LIBGEOTIFF_VERSION >= 1310
+#if LIBGEOTIFF_VERSION >= 1310 && !defined(GEO_NORMALIZE_DISABLE_TOWGS84)
     if( psDefn->TOWGS84Count > 0 )
         oSRS.SetTOWGS84( psDefn->TOWGS84[0],
                          psDefn->TOWGS84[1],
@@ -613,7 +701,7 @@ char *GTIFGetOGISDefn( GTIF *hGTIF, GTIFDefn * psDefn )
             break;
 
           case CT_Stereographic:
-            oSRS.SetOS( adfParm[0], adfParm[1],
+            oSRS.SetStereographic( adfParm[0], adfParm[1],
                         adfParm[4],
                         adfParm[5], adfParm[6] );
             break;
@@ -625,6 +713,14 @@ char *GTIFGetOGISDefn( GTIF *hGTIF, GTIFDefn * psDefn )
                          adfParm[5], adfParm[6] );
             break;
         
+          case CT_HotineObliqueMercatorAzimuthCenter:
+#if GDAL_VERSION_MINOR >= 11
+            oSRS.SetHOMAC( adfParm[0], adfParm[1],
+                           adfParm[2], adfParm[3],
+                           adfParm[4],
+                           adfParm[5], adfParm[6] );
+            break;
+#endif        
           case CT_EquidistantConic: 
             oSRS.SetEC( adfParm[0], adfParm[1],
                         adfParm[2], adfParm[3],
@@ -788,6 +884,16 @@ char *GTIFGetOGISDefn( GTIF *hGTIF, GTIFDefn * psDefn )
         }
 
 /* -------------------------------------------------------------------- */
+/*      This addresses another case where the EGM96 Vertical Datum code */
+/*      is mis-used as a Vertical CS code (#4922)                       */
+/* -------------------------------------------------------------------- */
+        if( verticalCSType == 5171 )
+        {
+            verticalDatum = 5171;
+            verticalCSType = 5773;
+        }
+ 
+/* -------------------------------------------------------------------- */
 /*      Somewhat similarly, codes 5001 to 5033 were treated as          */
 /*      vertical coordinate systems based on ellipsoidal heights.       */
 /*      We use the corresponding 2d geodetic datum as the vertical      */
@@ -948,7 +1054,7 @@ char *GTIFGetOGISDefn( GTIF *hGTIF, GTIFDefn * psDefn )
             dfFactorC = GTIFAtof(
                 CSVGetField( pszFilename, 
                              "uom_code", szSearchKey, CC_Integer,
-                             "factor_b" ));
+                             "factor_c" ));
             if( dfFactorB != 0.0 && dfFactorC != 0.0 )
                 sprintf( szInMeters, "%.16g", dfFactorB / dfFactorC );
             else
@@ -1076,10 +1182,11 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
 /*      Create an OGRSpatialReference object corresponding to the       */
 /*      string.                                                         */
 /* -------------------------------------------------------------------- */
-    poSRS = new OGRSpatialReference();
+//    poSRS = new OGRSpatialReference();
+    poSRS = (OGRSpatialReference*)OSRNewSpatialReference(NULL);
     if( poSRS->importFromWkt((char **) &pszOGCWKT) != OGRERR_NONE )
     {
-        delete poSRS;
+        OGRSpatialReference::DestroySpatialReference(poSRS);
         return FALSE;
     }
 
@@ -1147,7 +1254,11 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
     double	dfLinearUOM = poSRS->GetLinearUnits( &pszLinearUOMName );
     int         nUOMLengthCode = 9001; /* meters */
 
-    if( (pszLinearUOMName != NULL
+    if( poSRS->GetAuthorityName("PROJCS|UNIT") != NULL 
+        && EQUAL(poSRS->GetAuthorityName("PROJCS|UNIT"),"EPSG")
+        && poSRS->GetAttrNode( "PROJCS|UNIT" ) != poSRS->GetAttrNode("GEOGCS|UNIT") )
+        nUOMLengthCode = atoi(poSRS->GetAuthorityCode("PROJCS|UNIT"));
+    else if( (pszLinearUOMName != NULL
          && EQUAL(pszLinearUOMName,SRS_UL_FOOT))
         || fabs(dfLinearUOM-GTIFAtof(SRS_UL_FOOT_CONV)) < 0.0000001 )
         nUOMLengthCode = 9002; /* international foot */
@@ -1181,13 +1292,11 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    ModelTypeProjected);
         GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1, nPCS );
     }
-#if GDAL_VERSION_NUM >=1900
     else if( poSRS->IsGeocentric() )
     {
         GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1, 
                    ModelTypeGeocentric );
     }
-#endif
     else if( pszProjection == NULL )
     {
         if( poSRS->IsGeographic() )
@@ -1197,15 +1306,15 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
     }
     else if( EQUAL(pszProjection,SRS_PT_ALBERS_CONIC_EQUAL_AREA) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_AlbersEqualArea );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_AlbersEqualArea );
 
         GTIFKeySet(psGTIF, ProjStdParallelGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_STANDARD_PARALLEL_1, 0.0 ) );
@@ -1220,17 +1329,17 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_LONGITUDE_OF_CENTER, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
 
     else if( poSRS->GetUTMZone() != 0 )
     {
         int		bNorth, nZone, nProjection;
 
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
 
         nZone = poSRS->GetUTMZone( &bNorth );
@@ -1275,15 +1384,15 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
 
     else if( EQUAL(pszProjection,SRS_PT_TRANSVERSE_MERCATOR) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_TransverseMercator );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_TransverseMercator );
 
         GTIFKeySet(psGTIF, ProjNatOriginLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1295,23 +1404,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_SCALE_FACTOR, 1.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_TRANSVERSE_MERCATOR_SOUTH_ORIENTED) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_TransvMercator_SouthOriented );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_TransvMercator_SouthOriented );
 
         GTIFKeySet(psGTIF, ProjNatOriginLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1323,25 +1432,25 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_SCALE_FACTOR, 1.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_MERCATOR_2SP) 
              || EQUAL(pszProjection,SRS_PT_MERCATOR_1SP) )
 
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_Mercator );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_Mercator );
 
         GTIFKeySet(psGTIF, ProjNatOriginLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1353,23 +1462,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_SCALE_FACTOR, 1.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_OBLIQUE_STEREOGRAPHIC) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_ObliqueStereographic );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_ObliqueStereographic );
 
         GTIFKeySet(psGTIF, ProjNatOriginLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1381,23 +1490,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_SCALE_FACTOR, 1.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_STEREOGRAPHIC) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_Stereographic );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_Stereographic );
 
         GTIFKeySet(psGTIF, ProjCenterLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1409,23 +1518,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_SCALE_FACTOR, 1.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_POLAR_STEREOGRAPHIC) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_PolarStereographic );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_PolarStereographic );
 
         GTIFKeySet(psGTIF, ProjNatOriginLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1437,23 +1546,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_SCALE_FACTOR, 1.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_HOTINE_OBLIQUE_MERCATOR) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_ObliqueMercator );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_ObliqueMercator );
 
         GTIFKeySet(psGTIF, ProjCenterLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_CENTER, 0.0 ) );
@@ -1471,23 +1580,59 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_SCALE_FACTOR, 1.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
-    
+
+#ifdef SRS_PT_HOTINE_OBLIQUE_MERCATOR_AZIMUTH_CENTER    
+    else if( EQUAL(pszProjection,SRS_PT_HOTINE_OBLIQUE_MERCATOR_AZIMUTH_CENTER) )
+    {
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+                   ModelTypeProjected);
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+                   KvUserDefined );
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+                   KvUserDefined );
+
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_HotineObliqueMercatorAzimuthCenter );
+
+        GTIFKeySet(psGTIF, ProjCenterLatGeoKey, TYPE_DOUBLE, 1,
+                   poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_CENTER, 0.0 ) );
+
+        GTIFKeySet(psGTIF, ProjCenterLongGeoKey, TYPE_DOUBLE, 1,
+                   poSRS->GetNormProjParm( SRS_PP_LONGITUDE_OF_CENTER, 0.0 ) );
+        
+        GTIFKeySet(psGTIF, ProjAzimuthAngleGeoKey, TYPE_DOUBLE, 1,
+                   poSRS->GetNormProjParm( SRS_PP_AZIMUTH, 0.0 ) );
+        
+        GTIFKeySet(psGTIF, ProjRectifiedGridAngleGeoKey, TYPE_DOUBLE, 1,
+                   poSRS->GetNormProjParm( SRS_PP_RECTIFIED_GRID_ANGLE, 0.0 ) );
+        
+        GTIFKeySet(psGTIF, ProjScaleAtCenterGeoKey, TYPE_DOUBLE, 1,
+                   poSRS->GetNormProjParm( SRS_PP_SCALE_FACTOR, 1.0 ) );
+        
+        GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+        
+        GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+    }
+#endif
+        
     else if( EQUAL(pszProjection,SRS_PT_CASSINI_SOLDNER) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_CassiniSoldner );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_CassiniSoldner );
 
         GTIFKeySet(psGTIF, ProjNatOriginLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1496,23 +1641,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_CENTRAL_MERIDIAN, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_EQUIDISTANT_CONIC) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_EquidistantConic );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_EquidistantConic );
 
         GTIFKeySet(psGTIF, ProjStdParallel1GeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_STANDARD_PARALLEL_1, 0.0 ) );
@@ -1527,23 +1672,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_LONGITUDE_OF_CENTER, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_POLYCONIC) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_Polyconic );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_Polyconic );
 
         GTIFKeySet(psGTIF, ProjNatOriginLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1555,23 +1700,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_SCALE_FACTOR, 1.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_AZIMUTHAL_EQUIDISTANT) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_AzimuthalEquidistant );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_AzimuthalEquidistant );
 
         GTIFKeySet(psGTIF, ProjCenterLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_CENTER, 0.0 ) );
@@ -1580,23 +1725,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_LONGITUDE_OF_CENTER, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_MILLER_CYLINDRICAL) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_MillerCylindrical );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_MillerCylindrical );
 
         GTIFKeySet(psGTIF, ProjCenterLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_CENTER, 0.0 ) );
@@ -1605,23 +1750,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_LONGITUDE_OF_CENTER, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_EQUIRECTANGULAR) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_Equirectangular );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_Equirectangular );
 
         GTIFKeySet(psGTIF, ProjCenterLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1633,23 +1778,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_STANDARD_PARALLEL_1, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_GNOMONIC) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_Gnomonic );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_Gnomonic );
 
         GTIFKeySet(psGTIF, ProjCenterLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1658,23 +1803,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_CENTRAL_MERIDIAN, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_LAMBERT_AZIMUTHAL_EQUAL_AREA) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_LambertAzimEqualArea );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_LambertAzimEqualArea );
 
         GTIFKeySet(psGTIF, ProjCenterLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_CENTER, 0.0 ) );
@@ -1683,23 +1828,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_LONGITUDE_OF_CENTER, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_ORTHOGRAPHIC) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_Orthographic );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_Orthographic );
 
         GTIFKeySet(psGTIF, ProjCenterLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1708,23 +1853,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_CENTRAL_MERIDIAN, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_NEW_ZEALAND_MAP_GRID) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_NewZealandMapGrid );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_NewZealandMapGrid );
 
         GTIFKeySet(psGTIF, ProjNatOriginLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1733,89 +1878,89 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_CENTRAL_MERIDIAN, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_ROBINSON) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_Robinson );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_Robinson );
 
         GTIFKeySet(psGTIF, ProjCenterLongGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LONGITUDE_OF_CENTER, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_SINUSOIDAL) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_Sinusoidal );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_Sinusoidal );
 
         GTIFKeySet(psGTIF, ProjCenterLongGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LONGITUDE_OF_CENTER, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_VANDERGRINTEN) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_VanDerGrinten );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_VanDerGrinten );
 
         GTIFKeySet(psGTIF, ProjCenterLongGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_CENTRAL_MERIDIAN, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_ALBERS_CONIC_EQUAL_AREA) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_AlbersEqualArea );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_AlbersEqualArea );
 
         GTIFKeySet(psGTIF, ProjNatOriginLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_CENTER, 0.0 ) );
@@ -1830,23 +1975,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_STANDARD_PARALLEL_2, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_LAMBERT_CONFORMAL_CONIC_2SP) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_LambertConfConic_2SP );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_LambertConfConic_2SP );
 
         GTIFKeySet(psGTIF, ProjFalseOriginLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1861,23 +2006,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_STANDARD_PARALLEL_2, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseOriginEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseOriginNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
     
     else if( EQUAL(pszProjection,SRS_PT_LAMBERT_CONFORMAL_CONIC_1SP) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_LambertConfConic_1SP );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_LambertConfConic_1SP );
 
         GTIFKeySet(psGTIF, ProjNatOriginLatGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_LATITUDE_OF_ORIGIN, 0.0 ) );
@@ -1889,23 +2034,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_SCALE_FACTOR, 1.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
 
     else if( EQUAL(pszProjection,SRS_PT_CYLINDRICAL_EQUAL_AREA) )
     {
-	GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, GTModelTypeGeoKey, TYPE_SHORT, 1,
                    ModelTypeProjected);
-	GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectedCSTypeGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
-	GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
+        GTIFKeySet(psGTIF, ProjectionGeoKey, TYPE_SHORT, 1,
                    KvUserDefined );
 
-	GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
-		   CT_CylindricalEqualArea );
+        GTIFKeySet(psGTIF, ProjCoordTransGeoKey, TYPE_SHORT, 1, 
+                   CT_CylindricalEqualArea );
 
         GTIFKeySet(psGTIF, ProjNatOriginLongGeoKey, TYPE_DOUBLE, 1,
                    poSRS->GetNormProjParm( SRS_PP_CENTRAL_MERIDIAN, 0.0 ) );
@@ -1914,10 +2059,10 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                    poSRS->GetNormProjParm( SRS_PP_STANDARD_PARALLEL_1, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseEastingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_EASTING, 0.0 ) );
         
         GTIFKeySet(psGTIF, ProjFalseNorthingGeoKey, TYPE_DOUBLE, 1,
-                   poSRS->GetNormProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
+                   poSRS->GetProjParm( SRS_PP_FALSE_NORTHING, 0.0 ) );
     }
 
     else
@@ -1927,7 +2072,11 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
 
     // Note that VERTCS is an ESRI "spelling" of VERT_CS so we assume if
     // we find it that we should try to treat this as a PE string.
-    if( bWritePEString || poSRS->GetAttrValue("VERTCS") != NULL )
+    bWritePEString |= (poSRS->GetAttrValue("VERTCS") != NULL);
+
+    if( bWritePEString 
+        && CSLTestBoolean( CPLGetConfigOption("GTIFF_ESRI_CITATION",
+                                              "YES") ) )
     {
         /* Anyhing we can't map, we store as an ESRI PE string with a citation key */
         char *pszPEString = NULL;
@@ -1950,10 +2099,26 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
     }
     
 /* -------------------------------------------------------------------- */
-/*      Write linear units information.                                 */
+/*      Is there a false easting/northing set?  If so, write out a      */
+/*      special geokey tag to indicate that GDAL has written these      */
+/*      with the proper interpretation of the linear units.             */
 /* -------------------------------------------------------------------- */
-#if GDAL_VERSION_NUM >=1900
+    double dfFE = 0.0, dfFN = 0.0;
 
+    if( (GTIFKeyGet(psGTIF, ProjFalseEastingGeoKey, &dfFE, 0, 1)
+         || GTIFKeyGet(psGTIF, ProjFalseNorthingGeoKey, &dfFN, 0, 1)
+         || GTIFKeyGet(psGTIF, ProjFalseOriginEastingGeoKey, &dfFE, 0, 1)
+         || GTIFKeyGet(psGTIF, ProjFalseOriginNorthingGeoKey, &dfFN, 0, 1))
+        && (dfFE != 0.0 || dfFN != 0.0) 
+        && nUOMLengthCode != 9001 )
+    {
+        GTIFKeySet(psGTIF, (geokey_t) ProjLinearUnitsInterpCorrectGeoKey, 
+                   TYPE_SHORT, 1, (short) 1 );
+    }
+
+/* -------------------------------------------------------------------- */
+/*      Write linear units information.                                 */
+/* -------------------------------------------------------------------- */
     if( poSRS->IsGeocentric() )
     {
         GTIFKeySet(psGTIF, GeogLinearUnitsGeoKey, TYPE_SHORT, 1, 
@@ -1962,9 +2127,7 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
             GTIFKeySet( psGTIF, GeogLinearUnitSizeGeoKey, TYPE_DOUBLE, 1, 
                         dfLinearUOM);
     }
-    else 
-#endif
-    if( !poSRS->IsGeographic() )
+    else if( !poSRS->IsGeographic() )
     {
         GTIFKeySet(psGTIF, ProjLinearUnitsGeoKey, TYPE_SHORT, 1, 
                    nUOMLengthCode );
@@ -1973,8 +2136,15 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
                         dfLinearUOM);
 
         /* if linear units name is available and user defined, store it as citation */
-        if(!peStrStored && nUOMLengthCode == KvUserDefined && pszLinearUOMName && strlen(pszLinearUOMName)>0)
+        if(!peStrStored 
+           && nUOMLengthCode == KvUserDefined 
+           && pszLinearUOMName 
+           && strlen(pszLinearUOMName)>0
+           && CSLTestBoolean( CPLGetConfigOption("GTIFF_ESRI_CITATION",
+                                                 "YES") ) )
+        {
             SetLinearUnitCitation(psGTIF, pszLinearUOMName);
+        }
     }
     
 /* -------------------------------------------------------------------- */
@@ -2001,12 +2171,7 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
 /* -------------------------------------------------------------------- */
     if( poSRS->GetRoot() != NULL
         && poSRS->GetRoot()->GetChild(0) != NULL 
-        && (poSRS->IsProjected() || poSRS->IsLocal()  
-
-#if GDAL_VERSION_NUM >=1900
-        || poSRS->IsGeocentric()
-#endif        
-        ) )
+        && (poSRS->IsProjected() || poSRS->IsLocal() || poSRS->IsGeocentric()) )
     {
         GTIFKeySet( psGTIF, GTCitationGeoKey, TYPE_ASCII, 0, 
                     poSRS->GetRoot()->GetChild(0)->GetValue() );
@@ -2097,7 +2262,9 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
             GTIFKeySet( psGTIF, GeogSemiMajorAxisGeoKey, TYPE_DOUBLE, 1,
                         dfSemiMajor );
 
-        if( nGCS == KvUserDefined )
+        if( nGCS == KvUserDefined 
+            && CSLTestBoolean( CPLGetConfigOption("GTIFF_ESRI_CITATION",
+                                                  "YES") ) )
             SetGeogCSCitation(psGTIF, poSRS, angUnitName, nDatum, nSpheroid);
     }
 
@@ -2105,15 +2272,23 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
 /*      Do we have TOWGS84 parameters?                                  */
 /* -------------------------------------------------------------------- */
 
-#if LIBGEOTIFF_VERSION >= 1310
+#if LIBGEOTIFF_VERSION >= 1310 && !defined(GEO_NORMALIZE_DISABLE_TOWGS84)
     double adfTOWGS84[7];
 
     if( poSRS->GetTOWGS84( adfTOWGS84 ) == OGRERR_NONE )
     {
         if( adfTOWGS84[3] == 0.0 && adfTOWGS84[4] == 0.0
             && adfTOWGS84[5] == 0.0 && adfTOWGS84[6] == 0.0 )
-            GTIFKeySet( psGTIF, GeogTOWGS84GeoKey, TYPE_DOUBLE, 3, 
-                        adfTOWGS84 );
+        {
+            if( nGCS == GCS_WGS_84 && adfTOWGS84[0] == 0.0
+                && adfTOWGS84[1] == 0.0 && adfTOWGS84[2] == 0.0 )
+            {
+                ; /* do nothing */
+            }
+            else
+                GTIFKeySet( psGTIF, GeogTOWGS84GeoKey, TYPE_DOUBLE, 3,
+                            adfTOWGS84 );
+        }
         else
             GTIFKeySet( psGTIF, GeogTOWGS84GeoKey, TYPE_DOUBLE, 7, 
                         adfTOWGS84 );
@@ -2149,7 +2324,7 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
 /* -------------------------------------------------------------------- */
 /*      Cleanup                                                         */
 /* -------------------------------------------------------------------- */
-    delete poSRS;
+    OGRSpatialReference::DestroySpatialReference(poSRS);
     return TRUE;
 }
 
@@ -2160,17 +2335,31 @@ int GTIFSetFromOGISDefn( GTIF * psGTIF, const char *pszOGCWKT )
 CPLErr GTIFWktFromMemBuf( int nSize, unsigned char *pabyBuffer, 
                           char **ppszWKT, double *padfGeoTransform,
                           int *pnGCPCount, GDAL_GCP **ppasGCPList )
+{
+    return GTIFWktFromMemBufEx(nSize, pabyBuffer, ppszWKT, padfGeoTransform,
+                               pnGCPCount, ppasGCPList, NULL);
+}
+
+CPLErr GTIFWktFromMemBufEx( int nSize, unsigned char *pabyBuffer, 
+                            char **ppszWKT, double *padfGeoTransform,
+                            int *pnGCPCount, GDAL_GCP **ppasGCPList,
+                            int *pbPixelIsPoint )
 
 {
-    TIFF        *hTIFF;
-    GTIF 	*hGTIF;
-    GTIFDefn	sGTIFDefn;
-    char        szFilename[100];
+    bool    bPixelIsPoint = false;
+    int     bPointGeoIgnore = FALSE;
+    short nRasterType;
+    char szFilename[100];
 
-    sprintf( szFilename, "/vsimem/wkt_from_mem_buf_%ld.tif", 
+    sprintf( szFilename, "/vsimem/wkt_from_mem_buf_%ld.tif",
              (long) CPLGetPID() );
 
 /* -------------------------------------------------------------------- */
+/*      Make sure we have hooked CSVFilename().                         */
+/* -------------------------------------------------------------------- */
+    LibgeotiffOneTimeInit();
+
+/* -------------------------------------------------------------------- */
 /*      Create a memory file from the buffer.                           */
 /* -------------------------------------------------------------------- */
     VSILFILE *fp = VSIFileFromMemBuffer( szFilename, pabyBuffer, nSize, FALSE );
@@ -2181,7 +2370,8 @@ CPLErr GTIFWktFromMemBuf( int nSize, unsigned char *pabyBuffer,
 /* -------------------------------------------------------------------- */
 /*      Initialize access to the memory geotiff structure.              */
 /* -------------------------------------------------------------------- */
-    hTIFF = VSI_TIFFOpen( szFilename, "r" );
+    TIFF        *hTIFF;
+    hTIFF = VSI_TIFFOpen( szFilename, "rc" );
 
     if( hTIFF == NULL )
     {
@@ -2194,15 +2384,43 @@ CPLErr GTIFWktFromMemBuf( int nSize, unsigned char *pabyBuffer,
 /* -------------------------------------------------------------------- */
 /*      Get the projection definition.                                  */
 /* -------------------------------------------------------------------- */
+    GTIF 	*hGTIF;
+    GTIFDefn    *psGTIFDefn;
+
     hGTIF = GTIFNew(hTIFF);
 
-    if( hGTIF != NULL && GTIFGetDefn( hGTIF, &sGTIFDefn ) )
-        *ppszWKT = GTIFGetOGISDefn( hGTIF, &sGTIFDefn );
+    if( hGTIF != NULL && GTIFKeyGet(hGTIF, GTRasterTypeGeoKey, &nRasterType,
+                0, 1 ) == 1
+        && nRasterType == (short) RasterPixelIsPoint )
+    {
+        bPixelIsPoint = true;
+        bPointGeoIgnore =
+            CSLTestBoolean( CPLGetConfigOption("GTIFF_POINT_GEO_IGNORE",
+                                            "FALSE") );
+    }
+    if( pbPixelIsPoint )
+        *pbPixelIsPoint = bPixelIsPoint;
+
+#if LIBGEOTIFF_VERSION >= 1410
+    psGTIFDefn = GTIFAllocDefn();
+#else
+    psGTIFDefn = (GTIFDefn *) CPLCalloc(1,sizeof(GTIFDefn));
+#endif    
+
+                
+    if( hGTIF != NULL && GTIFGetDefn( hGTIF, psGTIFDefn ) )
+        *ppszWKT = GTIFGetOGISDefn( hGTIF, psGTIFDefn );
     else
         *ppszWKT = NULL;
     
     if( hGTIF )
         GTIFFree( hGTIF );
+    
+#if LIBGEOTIFF_VERSION >= 1410
+    GTIFFreeDefn(psGTIFDefn);
+#else
+    CPLFree(psGTIFDefn);
+#endif    
 
 /* -------------------------------------------------------------------- */
 /*      Get geotransform or tiepoints.                                  */
@@ -2233,6 +2451,13 @@ CPLErr GTIFWktFromMemBuf( int nSize, unsigned char *pabyBuffer,
                 padfTiePoints[3] - padfTiePoints[0] * padfGeoTransform[1];
             padfGeoTransform[3] =
                 padfTiePoints[4] - padfTiePoints[1] * padfGeoTransform[5];
+        
+            // adjust for pixel is point in transform
+            if( bPixelIsPoint && !bPointGeoIgnore )
+            {
+                padfGeoTransform[0] -= (padfGeoTransform[1] * 0.5 + padfGeoTransform[2] * 0.5);
+                padfGeoTransform[3] -= (padfGeoTransform[4] * 0.5 + padfGeoTransform[5] * 0.5);
+            }
         }
     }
 
@@ -2289,6 +2514,16 @@ CPLErr GTIFWktFromMemBuf( int nSize, unsigned char *pabyBuffer,
 CPLErr GTIFMemBufFromWkt( const char *pszWKT, const double *padfGeoTransform,
                           int nGCPCount, const GDAL_GCP *pasGCPList,
                           int *pnSize, unsigned char **ppabyBuffer )
+{
+    return GTIFMemBufFromWktEx(pszWKT, padfGeoTransform,
+                               nGCPCount,pasGCPList,
+                               pnSize, ppabyBuffer, FALSE);
+}
+
+CPLErr GTIFMemBufFromWktEx( const char *pszWKT, const double *padfGeoTransform,
+                            int nGCPCount, const GDAL_GCP *pasGCPList,
+                            int *pnSize, unsigned char **ppabyBuffer,
+                            int bPixelIsPoint )
 
 {
     TIFF        *hTIFF;
@@ -2299,6 +2534,11 @@ CPLErr GTIFMemBufFromWkt( const char *pszWKT, const double *padfGeoTransform,
              (long) CPLGetPID() );
 
 /* -------------------------------------------------------------------- */
+/*      Make sure we have hooked CSVFilename().                         */
+/* -------------------------------------------------------------------- */
+    LibgeotiffOneTimeInit();
+
+/* -------------------------------------------------------------------- */
 /*      Initialize access to the memory geotiff structure.              */
 /* -------------------------------------------------------------------- */
     hTIFF = VSI_TIFFOpen( szFilename, "w" );
@@ -2325,10 +2565,26 @@ CPLErr GTIFMemBufFromWkt( const char *pszWKT, const double *padfGeoTransform,
 /*      Get the projection definition.                                  */
 /* -------------------------------------------------------------------- */
 
-    if( pszWKT != NULL )
+    int  bPointGeoIgnore = FALSE;
+    if( bPixelIsPoint )
+    {
+        bPointGeoIgnore = 
+            CSLTestBoolean( CPLGetConfigOption("GTIFF_POINT_GEO_IGNORE",
+                                               "FALSE") );
+    }
+
+    if( pszWKT != NULL || bPixelIsPoint )
     {
         hGTIF = GTIFNew(hTIFF);
-        GTIFSetFromOGISDefn( hGTIF, pszWKT );
+        if( pszWKT != NULL )
+            GTIFSetFromOGISDefn( hGTIF, pszWKT );
+
+        if( bPixelIsPoint )
+        {
+            GTIFKeySet(hGTIF, GTRasterTypeGeoKey, TYPE_SHORT, 1,
+                       RasterPixelIsPoint);
+        }
+
         GTIFWriteKeys( hGTIF );
         GTIFFree( hGTIF );
     }
@@ -2336,6 +2592,7 @@ CPLErr GTIFMemBufFromWkt( const char *pszWKT, const double *padfGeoTransform,
 /* -------------------------------------------------------------------- */
 /*      Set the geotransform, or GCPs.                                  */
 /* -------------------------------------------------------------------- */
+
     if( padfGeoTransform[0] != 0.0 || padfGeoTransform[1] != 1.0
         || padfGeoTransform[2] != 0.0 || padfGeoTransform[3] != 0.0
         || padfGeoTransform[4] != 0.0 || ABS(padfGeoTransform[5]) != 1.0 )
@@ -2357,7 +2614,13 @@ CPLErr GTIFMemBufFromWkt( const char *pszWKT, const double *padfGeoTransform,
             adfTiePoints[3] = padfGeoTransform[0];
             adfTiePoints[4] = padfGeoTransform[3];
             adfTiePoints[5] = 0.0;
-        
+
+            if( bPixelIsPoint && !bPointGeoIgnore )
+            {
+                adfTiePoints[3] += padfGeoTransform[1] * 0.5 + padfGeoTransform[2] * 0.5;
+                adfTiePoints[4] += padfGeoTransform[4] * 0.5 + padfGeoTransform[5] * 0.5;
+            }
+
             TIFFSetField( hTIFF, TIFFTAG_GEOTIEPOINTS, 6, adfTiePoints );
         }
         else
@@ -2374,6 +2637,12 @@ CPLErr GTIFMemBufFromWkt( const char *pszWKT, const double *padfGeoTransform,
             adfMatrix[7] = padfGeoTransform[3];
             adfMatrix[15] = 1.0;
 
+            if( bPixelIsPoint && !bPointGeoIgnore )
+            {
+                adfMatrix[3] += padfGeoTransform[1] * 0.5 + padfGeoTransform[2] * 0.5;
+                adfMatrix[7] += padfGeoTransform[4] * 0.5 + padfGeoTransform[5] * 0.5;
+            }
+
             TIFFSetField( hTIFF, TIFFTAG_GEOTRANSMATRIX, 16, adfMatrix );
         }
     }
@@ -2425,4 +2694,3 @@ CPLErr GTIFMemBufFromWkt( const char *pszWKT, const double *padfGeoTransform,
 
     return CE_None;
 }
-
diff --git a/src/gt_wkt_srs.h b/src/gt_wkt_srs.h
old mode 100644
new mode 100755
index 5c3df27..e1791c2
--- a/src/gt_wkt_srs.h
+++ b/src/gt_wkt_srs.h
@@ -1,5 +1,5 @@
 /******************************************************************************
- * $Id: gt_wkt_srs.h 21595 2011-01-28 04:21:40Z warmerdam $
+ * $Id: gt_wkt_srs.h 27044 2014-03-16 23:41:27Z rouault $
  *
  * Project:  GeoTIFF Driver
  * Purpose:  Implements translation between GeoTIFF normalized projection
@@ -9,7 +9,7 @@
  * Author:   Even Rouault
  *
  ******************************************************************************
- * Copyright (c) 2010, Even Rouault
+ * Copyright (c) 2010, Even Rouault <even dot rouault at mines-paris dot org>
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the "Software"),
diff --git a/src/gt_wkt_srs_for_gdal.h b/src/gt_wkt_srs_for_gdal.h
old mode 100644
new mode 100755
index 97bf1a8..9f54cf6
--- a/src/gt_wkt_srs_for_gdal.h
+++ b/src/gt_wkt_srs_for_gdal.h
@@ -1,12 +1,12 @@
 /******************************************************************************
- * $Id: gt_wkt_srs_for_gdal.h 21595 2011-01-28 04:21:40Z warmerdam $
+ * $Id: gt_wkt_srs_for_gdal.h 27182 2014-04-14 20:03:08Z rouault $
  *
  * Project:  GeoTIFF Driver
  * Purpose:  Read/Write in-memory GeoTIFF file
  * Author:   Even Rouault
  *
  ******************************************************************************
- * Copyright (c) 2010, Even Rouault
+ * Copyright (c) 2010-2012, Even Rouault <even dot rouault at mines-paris dot org>
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the "Software"),
@@ -39,10 +39,22 @@ CPLErr CPL_DLL GTIFMemBufFromWkt( const char *pszWKT,
                                   const double *padfGeoTransform,
                                   int nGCPCount, const GDAL_GCP *pasGCPList,
                                   int *pnSize, unsigned char **ppabyBuffer );
+
+CPLErr GTIFMemBufFromWktEx( const char *pszWKT,
+                            const double *padfGeoTransform,
+                            int nGCPCount, const GDAL_GCP *pasGCPList,
+                            int *pnSize, unsigned char **ppabyBuffer,
+                            int bPixelIsPoint );
+
 CPLErr CPL_DLL GTIFWktFromMemBuf( int nSize, unsigned char *pabyBuffer,
                           char **ppszWKT, double *padfGeoTransform,
                           int *pnGCPCount, GDAL_GCP **ppasGCPList );
 
-CPL_C_END
+CPLErr GTIFWktFromMemBufEx( int nSize, unsigned char *pabyBuffer, 
+                            char **ppszWKT, double *padfGeoTransform,
+                            int *pnGCPCount, GDAL_GCP **ppasGCPList,
+                            int *pbPixelIsPoint );
+
+CPL_C_END;
 
 #endif // GT_WKT_SRS_FOR_GDAL_H_INCLUDED
diff --git a/src/header.cpp b/src/header.cpp
old mode 100644
new mode 100755
index e45943e..45bafd7
--- a/src/header.cpp
+++ b/src/header.cpp
@@ -40,7 +40,6 @@
  * OF SUCH DAMAGE.
  ****************************************************************************/
 
-#include <liblas/guid.hpp>
 #include <liblas/header.hpp>
 #include <liblas/spatialreference.hpp>
 #include <liblas/schema.hpp>
@@ -55,6 +54,7 @@
 // boost
 #include <boost/cstdint.hpp>
 #include <boost/lambda/lambda.hpp>
+
 //std
 #include <algorithm>
 #include <fstream>
@@ -71,7 +71,7 @@ namespace liblas {
 
 char const* const Header::FileSignature = "LASF";
 char const* const Header::SystemIdentifier = "libLAS";
-char const* const Header::SoftwareIdentifier = "libLAS 1.7.0";
+char const* const Header::SoftwareIdentifier = "libLAS 1.8.0";
 
 
 Header::Header() : m_schema(ePointFormat3)
@@ -82,9 +82,7 @@ Header::Header() : m_schema(ePointFormat3)
 Header::Header(Header const& other) :
     m_sourceId(other.m_sourceId),
     m_reserved(other.m_reserved),
-    m_projectId1(other.m_projectId1),
-    m_projectId2(other.m_projectId2),
-    m_projectId3(other.m_projectId3),
+    m_projectGuid(other.m_projectGuid),
     m_versionMajor(other.m_versionMajor),
     m_versionMinor(other.m_versionMinor),
     m_createDOY(other.m_createDOY),
@@ -107,8 +105,6 @@ Header::Header(Header const& other) :
 
     p = std::memcpy(m_signature, other.m_signature, eFileSignatureSize);
     assert(p == m_signature);
-    p = std::memcpy(m_projectId4, other.m_projectId4, eProjectId4Size); 
-    assert(p == m_projectId4);
     p = std::memcpy(m_systemId, other.m_systemId, eSystemIdSize);
     assert(p == m_systemId);
     p = std::memcpy(m_softwareId, other.m_softwareId, eSoftwareIdSize);
@@ -129,11 +125,7 @@ Header& Header::operator=(Header const& rhs)
         assert(p == m_signature);
         m_sourceId = rhs.m_sourceId;
         m_reserved = rhs.m_reserved;
-        m_projectId1 = rhs.m_projectId1;
-        m_projectId2 = rhs.m_projectId2;
-        m_projectId3 = rhs.m_projectId3;
-        p = std::memcpy(m_projectId4, rhs.m_projectId4, eProjectId4Size); 
-        assert(p == m_projectId4);
+        m_projectGuid = rhs.m_projectGuid;
         m_versionMajor = rhs.m_versionMajor;
         m_versionMinor = rhs.m_versionMinor;
         p = std::memcpy(m_systemId, rhs.m_systemId, eSystemIdSize);
@@ -173,10 +165,7 @@ bool Header::operator==(Header const& other) const
     if (m_signature != other.m_signature) return false;
     if (m_sourceId != other.m_sourceId) return false;
     if (m_reserved != other.m_reserved) return false;
-    if (m_projectId1 != other.m_projectId1) return false;
-    if (m_projectId2 != other.m_projectId2) return false;
-    if (m_projectId3 != other.m_projectId3) return false;
-    if (m_projectId4 != other.m_projectId4) return false;
+    if (m_projectGuid != other.m_projectGuid) return false;
     if (m_versionMajor != other.m_versionMajor) return false;
     if (m_versionMinor != other.m_versionMinor) return false;
     if (m_systemId != other.m_systemId) return false;
@@ -233,14 +222,14 @@ void Header::SetReserved(uint16_t v)
     m_reserved = v;
 }
 
-liblas::guid Header::GetProjectId() const
+boost::uuids::uuid Header::GetProjectId() const
 {
-    return liblas::guid(m_projectId1, m_projectId2, m_projectId3, m_projectId4);
+    return m_projectGuid;
 }
 
-void Header::SetProjectId(guid const& v)
+void Header::SetProjectId(boost::uuids::uuid const& v)
 {
-    v.output_data(m_projectId1, m_projectId2, m_projectId3, m_projectId4);
+    m_projectGuid = v;
 }
 
 uint8_t Header::GetVersionMajor() const
@@ -409,7 +398,7 @@ void Header::SetDataFormatId(liblas::PointFormatName v)
 uint16_t Header::GetDataRecordLength() const
 {
     // No matter what the schema says, this must be a a short in size.
-    return static_cast<boost::uint16_t>(m_schema.GetByteSize());
+    return static_cast<uint16_t>(m_schema.GetByteSize());
 }
 
 uint32_t Header::GetPointRecordsCount() const
@@ -580,10 +569,9 @@ void Header::Init()
     }
 
     m_headerSize = eHeaderSize;
-
-    m_sourceId = m_reserved = m_projectId2 = m_projectId3 = uint16_t();
-    m_projectId1 = uint32_t();
-    std::memset(m_projectId4, 0, sizeof(m_projectId4)); 
+    
+    m_projectGuid = boost::uuids::nil_uuid();
+    m_sourceId = m_reserved = uint16_t();
 
     m_dataOffset = eHeaderSize; // excluding 2 bytes of Point Data Start Signature
     m_headerPadding = 0;
@@ -606,7 +594,7 @@ void Header::Init()
     m_isCompressed = false;
 }
 
-bool SameVLRs(std::string const& name, boost::uint16_t id, liblas::VariableRecord const& record)
+bool SameVLRs(std::string const& name, uint16_t id, liblas::VariableRecord const& record)
 {
     if (record.GetUserId(false) == name) {
         if (record.GetRecordId() == id) {
@@ -617,7 +605,7 @@ bool SameVLRs(std::string const& name, boost::uint16_t id, liblas::VariableRecor
 }
 
 
-void Header::DeleteVLRs(std::string const& name, boost::uint16_t id)
+void Header::DeleteVLRs(std::string const& name, uint16_t id)
 {
 
     m_vlrs.erase( std::remove_if( m_vlrs.begin(), 
@@ -713,6 +701,7 @@ liblas::property_tree::ptree Header::GetPTree( ) const
     
     pt.put("filesignature", GetFileSignature());
     pt.put("projectdid", GetProjectId());
+
     pt.put("systemid", GetSystemId());
     pt.put("softwareid", GetSoftwareId());
     
@@ -763,7 +752,7 @@ liblas::property_tree::ptree Header::GetPTree( ) const
 
     ptree return_count;
     liblas::Header::RecordsByReturnArray returns = GetPointRecordsByReturnCount();
-    for (boost::uint32_t i=0; i< 5; i++){
+    for (uint32_t i=0; i< 5; i++){
         ptree r;
         r.put("id", i);
         r.put("count", returns[i]);
@@ -788,7 +777,7 @@ liblas::property_tree::ptree Header::GetPTree( ) const
     pt.put("maximum.z", GetMaxZ());
 
     
-    for (boost::uint32_t i=0; i< GetRecordsCount(); i++) {
+    for (uint32_t i=0; i< GetRecordsCount(); i++) {
         pt.add_child("vlrs.vlr", GetVLR(i).GetPTree());
     }    
 
@@ -811,15 +800,15 @@ void Header::to_rst(std::ostream& os) const
     os << std::endl;
 
     os << "  Version:                     " << tree.get<std::string>("version") << std::endl;
-    os << "  Source ID:                   " << tree.get<boost::uint32_t>("filesourceid") << std::endl;
+    os << "  Source ID:                   " << tree.get<uint32_t>("filesourceid") << std::endl;
     os << "  Reserved:                    " << tree.get<std::string>("reserved") << std::endl;
     os << "  Project ID/GUID:             '" << tree.get<std::string>("projectdid") << "'" << std::endl;
     os << "  System ID:                   '" << tree.get<std::string>("systemid") << "'" << std::endl;
     os << "  Generating Software:         '" << tree.get<std::string>("softwareid") << "'" << std::endl;
     os << "  File Creation Day/Year:      " << tree.get<std::string>("date") << std::endl;
-    os << "  Header Byte Size             " << tree.get<boost::uint32_t>("size") << std::endl;
-    os << "  Data Offset:                 " << tree.get<boost::uint32_t>("dataoffset") << std::endl;
-    os << "  Header Padding:              " << tree.get<boost::uint32_t>("header_padding") << std::endl;
+    os << "  Header Byte Size             " << tree.get<uint32_t>("size") << std::endl;
+    os << "  Data Offset:                 " << tree.get<uint32_t>("dataoffset") << std::endl;
+    os << "  Header Padding:              " << tree.get<uint32_t>("header_padding") << std::endl;
 
     os << "  Number Var. Length Records:  ";
     try {
@@ -831,8 +820,8 @@ void Header::to_rst(std::ostream& os) const
     }
     os << std::endl;
 
-    os << "  Point Data Format:           " << tree.get<boost::uint32_t>("dataformatid") << std::endl;
-    os << "  Number of Point Records:     " << tree.get<boost::uint32_t>("count") << std::endl;
+    os << "  Point Data Format:           " << tree.get<uint32_t>("dataformatid") << std::endl;
+    os << "  Number of Point Records:     " << tree.get<uint32_t>("count") << std::endl;
     os << "  Compressed:                  " << (tree.get<bool>("compressed")?"True":"False") << std::endl;
     if (tree.get<bool>("compressed"))
     {
@@ -843,7 +832,7 @@ void Header::to_rst(std::ostream& os) const
     BOOST_FOREACH(ptree::value_type &v,
           tree.get_child("returns"))
     {
-          os << v.second.get<boost::uint32_t>("count")<< " ";
+          os << v.second.get<uint32_t>("count")<< " ";
 
     }      
     os << std::endl;
@@ -853,13 +842,13 @@ void Header::to_rst(std::ostream& os) const
     double y_scale = tree.get<double>("scale.y");
     double z_scale = tree.get<double>("scale.z");
 
-    boost::uint32_t x_precision = 6;
-    boost::uint32_t y_precision = 6;
-    boost::uint32_t z_precision = 6;
+    uint32_t x_precision = 6;
+    uint32_t y_precision = 6;
+    uint32_t z_precision = 6;
     
-    x_precision = GetStreamPrecision(x_scale);
-    y_precision = GetStreamPrecision(y_scale);
-    z_precision = GetStreamPrecision(z_scale);
+    x_precision = 14;//GetStreamPrecision(x_scale);
+    y_precision = 14; //GetStreamPrecision(y_scale);
+    z_precision = 14; //GetStreamPrecision(z_scale);
 
     os << "  Scale Factor X Y Z:          ";
     os.precision(x_precision);
@@ -869,6 +858,10 @@ void Header::to_rst(std::ostream& os) const
     os.precision(z_precision);
     os << tree.get<double>("scale.z") << std::endl;
 
+    x_precision = GetStreamPrecision(x_scale);
+    y_precision = GetStreamPrecision(y_scale);
+    z_precision = GetStreamPrecision(z_scale);
+
     os << "  Offset X Y Z:                ";
     os.precision(x_precision);
     os << tree.get<double>("offset.x") << " ";
diff --git a/src/index.cpp b/src/index.cpp
old mode 100644
new mode 100755
index ff892ab..ec9fd7e
--- a/src/index.cpp
+++ b/src/index.cpp
@@ -152,8 +152,8 @@ bool Index::IndexInit(void)
 		{
 			m_pointheader = m_reader->GetHeader();
 		} // else
-		boost::uint32_t initialVLRs = m_idxheader.GetRecordsCount();
-		for (boost::uint32_t i = 0; i < initialVLRs; ++i)
+		uint32_t initialVLRs = m_idxheader.GetRecordsCount();
+		for (uint32_t i = 0; i < initialVLRs; ++i)
 		{
 			VariableRecord const& vlr = m_idxheader.GetVLR(i);
 			// a combination of "liblas" and 42 denotes that this is a liblas spatial index id
@@ -190,7 +190,7 @@ bool Index::IndexInit(void)
 			if (! m_readOnly)
 			{
 				Success = BuildIndex();
-				boost::uint32_t test = m_idxheader.GetRecordsCount() - initialVLRs;
+				uint32_t test = m_idxheader.GetRecordsCount() - initialVLRs;
 				if (m_debugOutputLevel > 1)
 					fprintf(m_debugger, "VLRs created %d\n", test);
 			} // if
@@ -204,10 +204,10 @@ bool Index::IndexInit(void)
 
 void Index::ClearOldIndex(void)
 {
-	boost::uint32_t initialVLRs = m_idxheader.GetRecordsCount();
-	boost::uint32_t TempDataVLR_ID = GetDataVLR_ID();
+	uint32_t initialVLRs = m_idxheader.GetRecordsCount();
+	uint32_t TempDataVLR_ID = GetDataVLR_ID();
 
-	for (boost::uint32_t i = 0; i < initialVLRs; ++i)
+	for (uint32_t i = 0; i < initialVLRs; ++i)
 	{
 		VariableRecord const& vlr = m_idxheader.GetVLR(i);
 		// a combination of "liblas" and 42 denotes that this is a liblas spatial index id
@@ -250,12 +250,12 @@ bool Index::Validate(void)
 	
 } // Index::Validate
 
-boost::uint32_t Index::GetDefaultReserve(void)
+uint32_t Index::GetDefaultReserve(void)
 {
 	return (GetPointRecordsCount() < LIBLAS_INDEX_RESERVEFILTERDEFAULT ? GetPointRecordsCount(): LIBLAS_INDEX_RESERVEFILTERDEFAULT);
 } // Index::GetDefaultReserve
 
-const std::vector<boost::uint32_t>& Index::Filter(IndexData & ParamSrc)
+const std::vector<uint32_t>& Index::Filter(IndexData & ParamSrc)
 {
 
 	try {
@@ -269,7 +269,7 @@ const std::vector<boost::uint32_t>& Index::Filter(IndexData & ParamSrc)
 		m_filterResult.reserve(ParamSrc.m_iterator ? ParamSrc.m_iterator->m_chunkSize: GetDefaultReserve());
 		if (m_reader)
 		{
-			boost::uint32_t i;
+			uint32_t i;
 			i = ParamSrc.m_iterator ? ParamSrc.m_iterator->m_curVLR: 0;
 			for (; i < m_idxheader.GetRecordsCount(); ++i)
 			{
@@ -277,7 +277,7 @@ const std::vector<boost::uint32_t>& Index::Filter(IndexData & ParamSrc)
 				// a combination of "liblas" and 42 denotes that this is a liblas spatial index id
 				if (std::string(vlr.GetUserId(false)) == std::string("liblas"))
 				{
-					boost::uint16_t RecordID = vlr.GetRecordId();
+					uint16_t RecordID = vlr.GetRecordId();
 					if (RecordID == 42)
 					{
 						if (! LoadIndexVLR(vlr))
@@ -302,7 +302,7 @@ const std::vector<boost::uint32_t>& Index::Filter(IndexData & ParamSrc)
 					{
 						// some of our data is in this record
 						bool VLRDone = false;
-						const boost::uint32_t HeadVLR = i;
+						const uint32_t HeadVLR = i;
 						if (! FilterOneVLR(vlr, i, ParamSrc, VLRDone))
 							break;
 						if (ParamSrc.m_iterator)
@@ -335,7 +335,7 @@ const std::vector<boost::uint32_t>& Index::Filter(IndexData & ParamSrc)
 
 } // Index::Filter
 
-IndexIterator* Index::Filter(IndexData const& ParamSrc, boost::uint32_t ChunkSize)
+IndexIterator* Index::Filter(IndexData const& ParamSrc, uint32_t ChunkSize)
 {
 	IndexIterator* NewIter = NULL;
 
@@ -351,7 +351,7 @@ IndexIterator* Index::Filter(IndexData const& ParamSrc, boost::uint32_t ChunkSiz
 } // Index::Filter
 
 IndexIterator* Index::Filter(double LowFilterX, double HighFilterX, double LowFilterY, double HighFilterY, 
-	double LowFilterZ, double HighFilterZ, boost::uint32_t ChunkSize)
+	double LowFilterZ, double HighFilterZ, uint32_t ChunkSize)
 {
 	IndexIterator* NewIter = NULL;
 
@@ -367,7 +367,7 @@ IndexIterator* Index::Filter(double LowFilterX, double HighFilterX, double LowFi
 
 } // Index::Filter
 
-IndexIterator* Index::Filter(Bounds<double> const& BoundsSrc, boost::uint32_t ChunkSize)
+IndexIterator* Index::Filter(Bounds<double> const& BoundsSrc, uint32_t ChunkSize)
 {
 	IndexIterator* NewIter = NULL;
 
@@ -408,12 +408,12 @@ void Index::SetCellFilterBounds(IndexData & ParamSrc)
 	HighYCell = floor(filterMaxYCell) - 1.0;
 	LowZCell = ceil(filterMinZCell);
 	HighZCell = floor(filterMaxZCell) - 1.0;
-	ParamSrc.m_LowXCellCompletelyIn = (boost::int32_t)LowXCell;
-	ParamSrc.m_HighXCellCompletelyIn = (boost::int32_t)HighXCell;
-	ParamSrc.m_LowYCellCompletelyIn = (boost::int32_t)LowYCell;
-	ParamSrc.m_HighYCellCompletelyIn = (boost::int32_t)HighYCell;
-	ParamSrc.m_LowZCellCompletelyIn = (boost::int32_t)LowZCell;
-	ParamSrc.m_HighZCellCompletelyIn = (boost::int32_t)HighZCell;
+	ParamSrc.m_LowXCellCompletelyIn = (int32_t)LowXCell;
+	ParamSrc.m_HighXCellCompletelyIn = (int32_t)HighXCell;
+	ParamSrc.m_LowYCellCompletelyIn = (int32_t)LowYCell;
+	ParamSrc.m_HighYCellCompletelyIn = (int32_t)HighYCell;
+	ParamSrc.m_LowZCellCompletelyIn = (int32_t)LowZCell;
+	ParamSrc.m_HighZCellCompletelyIn = (int32_t)HighZCell;
 
     LowXCell = floor(filterMinXCell);
     HighXCell = ceil(filterMaxXCell) - 1.0;
@@ -421,12 +421,12 @@ void Index::SetCellFilterBounds(IndexData & ParamSrc)
     HighYCell = ceil(filterMaxYCell) - 1.0;
     LowZCell = floor(filterMinZCell);
     HighZCell = ceil(filterMaxZCell) - 1.0;
-    ParamSrc.m_LowXBorderCell = (boost::int32_t)LowXCell;
-    ParamSrc.m_HighXBorderCell = (boost::int32_t)HighXCell;
-    ParamSrc.m_LowYBorderCell = (boost::int32_t)LowYCell;
-    ParamSrc.m_HighYBorderCell = (boost::int32_t)HighYCell;
-    ParamSrc.m_LowZBorderCell = (boost::int32_t)LowZCell;
-    ParamSrc.m_HighZBorderCell = (boost::int32_t)HighZCell;
+    ParamSrc.m_LowXBorderCell = (int32_t)LowXCell;
+    ParamSrc.m_HighXBorderCell = (int32_t)HighXCell;
+    ParamSrc.m_LowYBorderCell = (int32_t)LowYCell;
+    ParamSrc.m_HighYBorderCell = (int32_t)HighYCell;
+    ParamSrc.m_LowZBorderCell = (int32_t)LowZCell;
+    ParamSrc.m_HighZBorderCell = (int32_t)HighZCell;
     
     ParamSrc.m_LowXBorderPartCell = filterMinXCell - LowXCell;
     ParamSrc.m_HighXBorderPartCell = filterMaxXCell - HighXCell;
@@ -438,12 +438,12 @@ void Index::SetCellFilterBounds(IndexData & ParamSrc)
 bool Index::LoadIndexVLR(VariableRecord const& vlr)
 {
 	char DestStr[512];
-	boost::uint16_t StringLen;
-	boost::uint16_t ReadPos = 0;
+	uint16_t StringLen;
+	uint16_t ReadPos = 0;
 
 	try {
-		//boost::uint16_t VLRIndexRecLen = vlr.GetRecordLength();
-		// GetData returns a vector of boost::uint8_t
+		//uint16_t VLRIndexRecLen = vlr.GetRecordLength();
+		// GetData returns a vector of uint8_t
 		// std::vector<uint8_t>
 		// read the first record of our index data
 		IndexVLRData const& VLRIndexData = vlr.GetData();
@@ -482,7 +482,7 @@ bool Index::LoadIndexVLR(VariableRecord const& vlr)
 		
 		// ID number of associated data VLR's - normally 43 but may use heigher numbers
 		// in order to store more than one index in a file
-		boost::uint32_t TempLong;
+		uint32_t TempLong;
 		ReadVLRData_n(TempLong, VLRIndexData, ReadPos);
 		SetDataVLR_ID(TempLong);
 		
@@ -510,17 +510,17 @@ bool Index::LoadIndexVLR(VariableRecord const& vlr)
 
 } // Index::LoadIndexVLR
 
-bool Index::FilterOneVLR(VariableRecord const& vlr, boost::uint32_t& i, IndexData & ParamSrc, bool & VLRDone)
+bool Index::FilterOneVLR(VariableRecord const& vlr, uint32_t& i, IndexData & ParamSrc, bool & VLRDone)
 {
 
-	boost::uint32_t ReadPos = 0;
-	boost::uint32_t MinCellX, MinCellY, MaxCellX, MaxCellY, PointsThisRecord = 0, PointsThisCell = 0, DataRecordSize = 0,
+	uint32_t ReadPos = 0;
+	uint32_t MinCellX, MinCellY, MaxCellX, MaxCellY, PointsThisRecord = 0, PointsThisCell = 0, DataRecordSize = 0,
 		PointsScannedThisTime = 0, PointsScannedCurVLR = 0, PointsToIgnore = 0;
 	IndexVLRData CompositeData;
 	
 	try {
 		IndexVLRData const& VLRIndexRecordData = vlr.GetData();
-		boost::uint16_t VLRIndexRecLen = vlr.GetRecordLength();
+		uint16_t VLRIndexRecLen = vlr.GetRecordLength();
 		CompositeData.resize(VLRIndexRecLen);
 		ReadVLRDataNoInc_str((char *)&CompositeData[0], VLRIndexRecordData, VLRIndexRecLen, 0);
 			
@@ -539,14 +539,14 @@ bool Index::FilterOneVLR(VariableRecord const& vlr, boost::uint32_t& i, IndexDat
 		{
 			CompositeData.resize(DataRecordSize);
 			// read more records and concatenate data
-			boost::uint32_t ReadData = VLRIndexRecLen;
-			boost::uint32_t UnreadData = DataRecordSize - ReadData;
+			uint32_t ReadData = VLRIndexRecLen;
+			uint32_t UnreadData = DataRecordSize - ReadData;
 			while (UnreadData)
 			{
 				++i;
 				VariableRecord const& vlr2 = m_idxheader.GetVLR(i);
 				IndexVLRData const& TempData = vlr2.GetData();
-				boost::uint16_t TempRecLen = vlr2.GetRecordLength();
+				uint16_t TempRecLen = vlr2.GetRecordLength();
 				ReadVLRDataNoInc_str((char *)&CompositeData[ReadData], TempData, TempRecLen, 0);
 				ReadData += TempRecLen;
 				if (UnreadData >= TempRecLen)
@@ -567,7 +567,7 @@ bool Index::FilterOneVLR(VariableRecord const& vlr, boost::uint32_t& i, IndexDat
 				PointsScannedCurVLR = ParamSrc.m_iterator->m_ptsScannedCurVLR;
 			} // if
 			// translate the data for this VLR
-			while (ReadPos + sizeof (boost::uint32_t) < DataRecordSize)
+			while (ReadPos + sizeof (uint32_t) < DataRecordSize)
 			{
 				if (ParamSrc.m_iterator)
 				{
@@ -575,7 +575,7 @@ bool Index::FilterOneVLR(VariableRecord const& vlr, boost::uint32_t& i, IndexDat
 					ParamSrc.m_iterator->m_ptsScannedCurCell = 0;
 				} // if
 				// current cell, x, y
-				boost::uint32_t x, y, PtRecords, SubCellsXY, SubCellsZ;
+				uint32_t x, y, PtRecords, SubCellsXY, SubCellsZ;
 				ReadVLRData_n(x, CompositeData, ReadPos);
 				ReadVLRData_n(y, CompositeData, ReadPos);
 				if (ParamSrc.m_iterator)
@@ -598,16 +598,16 @@ bool Index::FilterOneVLR(VariableRecord const& vlr, boost::uint32_t& i, IndexDat
 				ReadVLRData_n(SubCellsZ, CompositeData, ReadPos);
 				
 				// read the data stored in Z cells, if any
-				for (boost::uint32_t SubCellZ = 0; SubCellZ < SubCellsZ; ++SubCellZ)
+				for (uint32_t SubCellZ = 0; SubCellZ < SubCellsZ; ++SubCellZ)
 				{
-					boost::uint32_t ZCellID;
+					uint32_t ZCellID;
 					ReadVLRData_n(ZCellID, CompositeData, ReadPos);
 					// number of point records in subcell
-					boost::uint32_t ZCellNumRecords;
+					uint32_t ZCellNumRecords;
 					ReadVLRData_n(ZCellNumRecords, CompositeData, ReadPos);
-					for (boost::uint32_t SubCellZPt = 0; SubCellZPt < ZCellNumRecords; ++SubCellZPt)
+					for (uint32_t SubCellZPt = 0; SubCellZPt < ZCellNumRecords; ++SubCellZPt)
 					{
-						boost::uint32_t PointID;
+						uint32_t PointID;
 						ReadVLRData_n(PointID, CompositeData, ReadPos);
 						assert(PointID < m_pointRecordsCount);
 						liblas::detail::ConsecPtAccumulator ConsecutivePts;
@@ -630,16 +630,16 @@ bool Index::FilterOneVLR(VariableRecord const& vlr, boost::uint32_t& i, IndexDat
 						break;
 				} // for
 				// read the data stored in XY quadtree cells
-				for (boost::uint32_t SubCellXY = 0; SubCellXY < SubCellsXY; ++SubCellXY)
+				for (uint32_t SubCellXY = 0; SubCellXY < SubCellsXY; ++SubCellXY)
 				{
-					boost::uint32_t SubCellID;
+					uint32_t SubCellID;
 					ReadVLRData_n(SubCellID, CompositeData, ReadPos);
 					// number of point records in subcell
-					boost::uint32_t SubCellNumRecords;
+					uint32_t SubCellNumRecords;
 					ReadVLRData_n(SubCellNumRecords, CompositeData, ReadPos);
-					for (boost::uint32_t SubCellPt = 0; SubCellPt < SubCellNumRecords; ++SubCellPt)
+					for (uint32_t SubCellPt = 0; SubCellPt < SubCellNumRecords; ++SubCellPt)
 					{
-						boost::uint32_t PointID;
+						uint32_t PointID;
 						ReadVLRData_n(PointID, CompositeData, ReadPos);
 						assert(PointID < m_pointRecordsCount);
 						liblas::detail::ConsecPtAccumulator ConsecutivePts;
@@ -664,9 +664,9 @@ bool Index::FilterOneVLR(VariableRecord const& vlr, boost::uint32_t& i, IndexDat
 				// read data in unsubdivided cells
 				if (! (SubCellsZ || SubCellsXY))
 				{
-					for (boost::uint32_t CurPt = 0; CurPt < PtRecords; ++CurPt)
+					for (uint32_t CurPt = 0; CurPt < PtRecords; ++CurPt)
 					{
-						boost::uint32_t PointID;
+						uint32_t PointID;
 						ReadVLRData_n(PointID, CompositeData, ReadPos);
 						assert(PointID < m_pointRecordsCount);
 						liblas::detail::ConsecPtAccumulator ConsecutivePts;
@@ -718,16 +718,16 @@ bool Index::FilterOneVLR(VariableRecord const& vlr, boost::uint32_t& i, IndexDat
 	
 } // Index::FilterOneVLR
 
-bool Index::FilterPointSeries(boost::uint32_t & PointID, boost::uint32_t & PointsScanned, 
-	boost::uint32_t const PointsToIgnore, boost::uint32_t const x, boost::uint32_t const y, boost::uint32_t const z, 
+bool Index::FilterPointSeries(uint32_t & PointID, uint32_t & PointsScanned, 
+	uint32_t const PointsToIgnore, uint32_t const x, uint32_t const y, uint32_t const z, 
 	liblas::detail::ConsecPtAccumulator const ConsecutivePts, IndexIterator *Iterator, 
 	IndexData const& ParamSrc)
 {
 	bool LastPtRead = 0;
-	boost::uint32_t LastPointID = static_cast<boost::uint32_t>(~0);
+	uint32_t LastPointID = static_cast<uint32_t>(~0);
 	
 	try {	
-		for (boost::uint32_t PtCt = 0; PtCt < ConsecutivePts; ++PointID, ++PtCt)
+		for (uint32_t PtCt = 0; PtCt < ConsecutivePts; ++PointID, ++PtCt)
 		{
 			++PointsScanned;
 			if (Iterator)
@@ -765,7 +765,7 @@ bool Index::FilterPointSeries(boost::uint32_t & PointID, boost::uint32_t & Point
 
 } // Index::FilterPointSeries
 
-bool Index::VLRInteresting(boost::int32_t MinCellX, boost::int32_t MinCellY, boost::int32_t MaxCellX, boost::int32_t MaxCellY, IndexData const& ParamSrc)
+bool Index::VLRInteresting(int32_t MinCellX, int32_t MinCellY, int32_t MaxCellX, int32_t MaxCellY, IndexData const& ParamSrc)
 {
 
 	// cells are written in south to north cell order columns (x) and west to east rows (y)
@@ -781,7 +781,7 @@ bool Index::VLRInteresting(boost::int32_t MinCellX, boost::int32_t MinCellY, boo
 	
 } // Index::VLRInteresting
 
-bool Index::CellInteresting(boost::int32_t XCellID, boost::int32_t YCellID, IndexData const& ParamSrc)
+bool Index::CellInteresting(int32_t XCellID, int32_t YCellID, IndexData const& ParamSrc)
 {
 
 	if (ParamSrc.m_noFilterX || (XCellID >= ParamSrc.m_LowXBorderCell && XCellID <= ParamSrc.m_HighXBorderCell))
@@ -793,7 +793,7 @@ bool Index::CellInteresting(boost::int32_t XCellID, boost::int32_t YCellID, Inde
 
 } // Index::CellInteresting
 
-bool Index::ZCellInteresting(boost::int32_t ZCellID, IndexData const& ParamSrc)
+bool Index::ZCellInteresting(int32_t ZCellID, IndexData const& ParamSrc)
 {
 
 	if (ParamSrc.m_noFilterZ || (ZCellID >= ParamSrc.m_LowZBorderCell && ZCellID <= ParamSrc.m_HighZBorderCell))
@@ -804,7 +804,7 @@ bool Index::ZCellInteresting(boost::int32_t ZCellID, IndexData const& ParamSrc)
 
 } // Index::ZCellInteresting
 
-bool Index::SubCellInteresting(boost::int32_t SubCellID, boost::int32_t XCellID, boost::int32_t YCellID, IndexData const& ParamSrc)
+bool Index::SubCellInteresting(int32_t SubCellID, int32_t XCellID, int32_t YCellID, IndexData const& ParamSrc)
 {
 	bool XGood = false, YGood = false;
 
@@ -896,7 +896,7 @@ bool Index::SubCellInteresting(boost::int32_t SubCellID, boost::int32_t XCellID,
 
 } // Index::SubCellInteresting
 
-bool Index::FilterOnePoint(boost::int32_t x, boost::int32_t y, boost::int32_t z, boost::int32_t PointID, boost::int32_t LastPointID, bool &LastPtRead, 
+bool Index::FilterOnePoint(int32_t x, int32_t y, int32_t z, int32_t PointID, int32_t LastPointID, bool &LastPtRead, 
 	IndexData const& ParamSrc)
 {
 	bool XGood = false, YGood = false, ZGood = false, PtRead = false;
@@ -922,7 +922,7 @@ bool Index::FilterOnePoint(boost::int32_t x, boost::int32_t y, boost::int32_t z,
 		if (! PtRead)
 		{
 			// seek and read
-			assert(static_cast<boost::uint32_t>(PointID) < m_pointRecordsCount);
+			assert(static_cast<uint32_t>(PointID) < m_pointRecordsCount);
 			PtRead = (m_reader->Seek(PointID) && m_reader->ReadNextPoint());
 		} // if
 		if (PtRead)
@@ -965,7 +965,7 @@ bool Index::FilterOnePoint(boost::int32_t x, boost::int32_t y, boost::int32_t z,
 				if (! PtRead)
 				{
 					// seek and read
-					assert(static_cast<boost::uint32_t>(PointID) < m_pointRecordsCount);
+					assert(static_cast<uint32_t>(PointID) < m_pointRecordsCount);
 					PtRead = (m_reader->Seek(PointID) && m_reader->ReadNextPoint());
 				} // if
 				if (PtRead)
@@ -1009,7 +1009,7 @@ bool Index::FilterOnePoint(boost::int32_t x, boost::int32_t y, boost::int32_t z,
 				if (! PtRead)
 				{
 					// seek and read
-					assert(static_cast<boost::uint32_t>(PointID) < m_pointRecordsCount);
+					assert(static_cast<uint32_t>(PointID) < m_pointRecordsCount);
 					PtRead = (m_reader->Seek(PointID) && m_reader->ReadNextPoint());
 				} // if
 				if (PtRead)
@@ -1030,7 +1030,7 @@ bool Index::FilterOnePoint(boost::int32_t x, boost::int32_t y, boost::int32_t z,
 bool Index::BuildIndex(void)
 {
 	// Build an array of two dimensions. Sort data points into
-	boost::uint32_t MaximumCells = LIBLAS_INDEX_MAXCELLS;
+	uint32_t MaximumCells = LIBLAS_INDEX_MAXCELLS;
 	m_versionMajor = LIBLAS_INDEX_VERSIONMAJOR;
 	m_versionMinor = LIBLAS_INDEX_VERSIONMINOR;
 	
@@ -1051,7 +1051,7 @@ bool Index::BuildIndex(void)
 	CalcRangeZ();
 
 	if (m_cellSizeZ > 0.0 && ! detail::compare_distance(m_cellSizeZ, 0.0))
-		m_cellsZ = static_cast<boost::uint32_t>(ceil(m_rangeZ / m_cellSizeZ));
+		m_cellsZ = static_cast<uint32_t>(ceil(m_rangeZ / m_cellSizeZ));
 	else
 		m_cellsZ = 1;
 		
@@ -1066,11 +1066,11 @@ bool Index::BuildIndex(void)
 	double YRatio = m_rangeY >= m_rangeX ? 1.0: m_rangeY / m_rangeX;
 	
 	m_totalCells = m_pointRecordsCount / LIBLAS_INDEX_OPTPTSPERCELL;
-	m_totalCells = static_cast<boost::uint32_t>(sqrt((double)m_totalCells));
+	m_totalCells = static_cast<uint32_t>(sqrt((double)m_totalCells));
 	if (m_totalCells < 10)
 		m_totalCells = 10;	// let's set a minimum number of cells to make the effort worthwhile
-	m_cellsX = static_cast<boost::uint32_t>(XRatio * m_totalCells);
-	m_cellsY = static_cast<boost::uint32_t>(YRatio * m_totalCells);
+	m_cellsX = static_cast<uint32_t>(XRatio * m_totalCells);
+	m_cellsY = static_cast<uint32_t>(YRatio * m_totalCells);
 	if (m_cellsX < 1)
 		m_cellsX = 1;
 	if (m_cellsY < 1)
@@ -1080,8 +1080,8 @@ bool Index::BuildIndex(void)
 	{
 		double CellReductionRatio = (double)MaximumCells / (double)m_totalCells;
 		CellReductionRatio = sqrt(CellReductionRatio);
-		m_cellsX = static_cast<boost::uint32_t>(m_cellsX * CellReductionRatio);
-		m_cellsY = static_cast<boost::uint32_t>(m_cellsY * CellReductionRatio);
+		m_cellsX = static_cast<uint32_t>(m_cellsX * CellReductionRatio);
+		m_cellsY = static_cast<uint32_t>(m_cellsY * CellReductionRatio);
 		m_totalCells = m_cellsX * m_cellsY;
 	} // if
 	m_cellSizeX = m_rangeX / m_cellsX;
@@ -1107,23 +1107,23 @@ bool Index::BuildIndex(void)
 		liblas::detail::IndexOutput IndexOut(this);
 		
 		// for Z bounds debugging
-		boost::uint32_t ZRangeSum = 0;
-		boost::uint32_t PointSum = 0;
+		uint32_t ZRangeSum = 0;
+		uint32_t PointSum = 0;
 		// read each point in the file
 		// figure out what cell in X and Y
 		// test to see if it is the same as the last cell
-		boost::uint32_t LastCellX = static_cast<boost::uint32_t>(~0), LastCellY = static_cast<boost::uint32_t>(~0);
+		uint32_t LastCellX = static_cast<uint32_t>(~0), LastCellY = static_cast<uint32_t>(~0);
 		liblas::detail::ElevRange ZRange;
-		boost::uint32_t PointID = 0;
-		boost::uint32_t LastPointID = 0;
-		boost::uint32_t PtsIndexed = 0;
-		boost::uint32_t PointsInMemory = 0, MaxPointsInMemory;
+		uint32_t PointID = 0;
+		uint32_t LastPointID = 0;
+		uint32_t PtsIndexed = 0;
+		uint32_t PointsInMemory = 0, MaxPointsInMemory;
 		MaxPointsInMemory = m_maxMemoryUsage / sizeof(liblas::detail::IndexCell);
 		// ReadNextPoint() throws a std::out_of_range error when it hits end of range so don't 
 		// get excited when you see it in the debug output
 		while (m_reader->ReadNextPoint())
 		{
-			boost::uint32_t CurCellX, CurCellY;
+			uint32_t CurCellX, CurCellY;
 			// analyze the point to determine its cell ID
 			Point const& CurPt = m_reader->GetPoint();
 			if (IdentifyCell(CurPt, CurCellX, CurCellY))
@@ -1176,9 +1176,9 @@ bool Index::BuildIndex(void)
 		
 		if (IndexOut.InitiateOutput())
 		{
-			for (boost::uint32_t x = 0; x < m_cellsX; ++x)
+			for (uint32_t x = 0; x < m_cellsX; ++x)
 			{
-				for (boost::uint32_t y = 0; y < m_cellsY; ++y)
+				for (uint32_t y = 0; y < m_cellsY; ++y)
 				{
 					if (m_debugOutputLevel > 3)
 						fprintf(m_debugger, "reloading %d %d\n", x, y);
@@ -1201,8 +1201,8 @@ bool Index::BuildIndex(void)
 								assert(MapIt->first < m_pointRecordsCount);
 								if (m_reader->Seek(MapIt->first) && m_reader->ReadNextPoint())
 								{
-									boost::uint32_t FirstPt = 0, LastCellZ = static_cast<boost::uint32_t>(~0);
-									boost::uint32_t LastSubCell = static_cast<boost::uint32_t>(~0);
+									uint32_t FirstPt = 0, LastCellZ = static_cast<uint32_t>(~0);
+									uint32_t LastSubCell = static_cast<uint32_t>(~0);
 									for (liblas::detail::ConsecPtAccumulator PtsTested = 0; PtsTested < MapIt->second; )
 									{
 										Point const& CurPt = m_reader->GetPoint();
@@ -1210,7 +1210,7 @@ bool Index::BuildIndex(void)
 										if (m_cellsZ > 1 && ZRange > m_cellSizeZ)
 										{
 											// for the number of consecutive points, identify the Z cell
-											boost::uint32_t CurCellZ;
+											uint32_t CurCellZ;
 											if (IdentifyCellZ(CurPt, CurCellZ))
 											{
 												// add a record to the z cell chain or increment existing record
@@ -1224,7 +1224,7 @@ bool Index::BuildIndex(void)
 										} // if
 										else
 										{
-											boost::uint32_t CurSubCell;
+											uint32_t CurSubCell;
 											// for the number of consecutive points, identify the sub cell in a 2x2 matrix
 											// 0 is lower left, 1 is lower right, 2 is upper left, 3 is upper right
 											if (IdentifySubCell(CurPt, x, y, CurSubCell))
@@ -1309,13 +1309,13 @@ bool Index::BuildIndex(void)
 
 } // Index::BuildIndex
 
-bool Index::IdentifyCell(Point const& CurPt, boost::uint32_t& CurCellX, boost::uint32_t& CurCellY) const
+bool Index::IdentifyCell(Point const& CurPt, uint32_t& CurCellX, uint32_t& CurCellY) const
 {
 	double OffsetX, OffsetY;
 
 	OffsetX = (CurPt.GetX() - (m_bounds.min)(0)) / m_rangeX;
 	if (OffsetX >= 0 && OffsetX < 1.0)
-		CurCellX = static_cast<boost::uint32_t>(OffsetX * m_cellsX);
+		CurCellX = static_cast<uint32_t>(OffsetX * m_cellsX);
 	else if (detail::compare_distance(OffsetX, 1.0))
 		CurCellX = m_cellsX - 1;
 	else
@@ -1325,7 +1325,7 @@ bool Index::IdentifyCell(Point const& CurPt, boost::uint32_t& CurCellX, boost::u
 	
 	OffsetY = (CurPt.GetY() - (m_bounds.min)(1)) / m_rangeY;
 	if (OffsetY >= 0 && OffsetY < 1.0)
-		CurCellY = static_cast<boost::uint32_t>(OffsetY * m_cellsY);
+		CurCellY = static_cast<uint32_t>(OffsetY * m_cellsY);
 	else if (detail::compare_distance(OffsetY, 1.0))
 		CurCellY = m_cellsY - 1;
 	else
@@ -1337,13 +1337,13 @@ bool Index::IdentifyCell(Point const& CurPt, boost::uint32_t& CurCellX, boost::u
 
 } // Index::IdentifyCell
 
-bool Index::IdentifyCellZ(Point const& CurPt, boost::uint32_t& CurCellZ) const
+bool Index::IdentifyCellZ(Point const& CurPt, uint32_t& CurCellZ) const
 {
 	double OffsetZ;
 
 	OffsetZ = (CurPt.GetZ() - (m_bounds.min)(2)) / m_rangeZ;
 	if (OffsetZ >= 0 && OffsetZ < 1.0)
-		CurCellZ = static_cast<boost::uint32_t>(OffsetZ * m_cellsZ);
+		CurCellZ = static_cast<uint32_t>(OffsetZ * m_cellsZ);
 	else if (detail::compare_distance(OffsetZ, 1.0))
 		CurCellZ = m_cellsZ - 1;
 	else
@@ -1355,7 +1355,7 @@ bool Index::IdentifyCellZ(Point const& CurPt, boost::uint32_t& CurCellZ) const
 
 } // Index::IdentifyCellZ
 
-bool Index::IdentifySubCell(Point const& CurPt, boost::uint32_t x, boost::uint32_t y, boost::uint32_t& CurSubCell) const
+bool Index::IdentifySubCell(Point const& CurPt, uint32_t x, uint32_t y, uint32_t& CurSubCell) const
 {
 	double Offset, CellMinX, CellMinY;
 
@@ -1397,7 +1397,7 @@ bool Index::PurgePointsToTempFile(IndexCellDataBlock& CellBlock)
 		{
 			// there is some setup of the temp file to be done first
 			// write out a block of file offsets the size of the number of cells
-			for (boost::uint32_t i = 0; i < m_totalCells; ++i)
+			for (uint32_t i = 0; i < m_totalCells; ++i)
 			{
 				if (fwrite(&EmptyOffset, sizeof(liblas::detail::TempFileOffsetType), 1, m_tempFile) < 1)
 				{
@@ -1407,11 +1407,11 @@ bool Index::PurgePointsToTempFile(IndexCellDataBlock& CellBlock)
 			m_tempFileWrittenBytes = m_totalCells * sizeof(liblas::detail::TempFileOffsetType);
 			m_tempFileStarted = true;
 		} // if
-		for (boost::uint32_t x = 0; x < m_cellsX; ++x)
+		for (uint32_t x = 0; x < m_cellsX; ++x)
 		{
-			for (boost::uint32_t y = 0; y < m_cellsY; ++y)
+			for (uint32_t y = 0; y < m_cellsY; ++y)
 			{
-				boost::uint32_t RecordsToWrite = CellBlock[x][y].GetNumRecords();
+				uint32_t RecordsToWrite = CellBlock[x][y].GetNumRecords();
 				if (RecordsToWrite)
 				{
 					// write the current file location in the cell block header
@@ -1442,22 +1442,22 @@ bool Index::PurgePointsToTempFile(IndexCellDataBlock& CellBlock)
 						return (FileError("Index::PurgePointsToTempFile"));
 					m_tempFileWrittenBytes += sizeof(liblas::detail::TempFileOffsetType);
 					// write the number of records stored in this section
-					if (fwrite(&RecordsToWrite, sizeof(boost::uint32_t), 1, m_tempFile) < 1)
+					if (fwrite(&RecordsToWrite, sizeof(uint32_t), 1, m_tempFile) < 1)
 						return (FileError("Index::PurgePointsToTempFile"));
-					m_tempFileWrittenBytes += sizeof(boost::uint32_t);
+					m_tempFileWrittenBytes += sizeof(uint32_t);
 
 					liblas::detail::IndexCellData::iterator MapIt = CellBlock[x][y].GetFirstRecord();
-					for (boost::uint32_t RecordNum = 0; RecordNum < RecordsToWrite && MapIt != CellBlock[x][y].GetEnd(); ++RecordNum, ++MapIt)
+					for (uint32_t RecordNum = 0; RecordNum < RecordsToWrite && MapIt != CellBlock[x][y].GetEnd(); ++RecordNum, ++MapIt)
 					{
 						// write the point ID
-						boost::uint32_t PointID = MapIt->first;
+						uint32_t PointID = MapIt->first;
 						// write the number of consecutive points
 						liblas::detail::ConsecPtAccumulator ConsecutivePoints = MapIt->second;
-						if (fwrite(&PointID, sizeof(boost::uint32_t), 1, m_tempFile) < 1)
+						if (fwrite(&PointID, sizeof(uint32_t), 1, m_tempFile) < 1)
 							return (FileError("Index::PurgePointsToTempFile"));
 						if (fwrite(&ConsecutivePoints, sizeof(liblas::detail::ConsecPtAccumulator), 1, m_tempFile) < 1)
 							return (FileError("Index::PurgePointsToTempFile"));
-						m_tempFileWrittenBytes += sizeof(boost::uint32_t);
+						m_tempFileWrittenBytes += sizeof(uint32_t);
 						m_tempFileWrittenBytes += sizeof(liblas::detail::ConsecPtAccumulator);
 					} // for
 					// purge the records for this cell from active memory
@@ -1475,10 +1475,10 @@ bool Index::PurgePointsToTempFile(IndexCellDataBlock& CellBlock)
 } // Index::PurgePointsToTempFile
 
 bool Index::LoadCellFromTempFile(liblas::detail::IndexCell *CellBlock, 
-	boost::uint32_t CurCellX, boost::uint32_t CurCellY)
+	uint32_t CurCellX, uint32_t CurCellY)
 {
 
-	boost::uint32_t RecordsToRead, FormerNumPts, NewNumPts = 0;
+	uint32_t RecordsToRead, FormerNumPts, NewNumPts = 0;
 	liblas::detail::TempFileOffsetType FileOffset;
 	
 	FormerNumPts = CellBlock->GetNumPoints();
@@ -1510,14 +1510,14 @@ bool Index::LoadCellFromTempFile(liblas::detail::IndexCell *CellBlock,
 			return (FileError("Index::LoadCellFromTempFile"));
 		// read the data for the cell in this block
 		// first is the number of items to read now
-		if (fread(&RecordsToRead, sizeof (boost::uint32_t), 1, m_tempFile) < 1)
+		if (fread(&RecordsToRead, sizeof (uint32_t), 1, m_tempFile) < 1)
 			return (FileError("Index::LoadCellFromTempFile"));
-		for (boost::uint32_t RecordNum = 0; RecordNum < RecordsToRead; ++RecordNum)
+		for (uint32_t RecordNum = 0; RecordNum < RecordsToRead; ++RecordNum)
 		{
-			boost::uint32_t PointID;
+			uint32_t PointID;
 			liblas::detail::ConsecPtAccumulator ConsecutivePoints;
 			// read the point ID
-			if (fread(&PointID, sizeof(boost::uint32_t), 1, m_tempFile) < 1)
+			if (fread(&PointID, sizeof(uint32_t), 1, m_tempFile) < 1)
 				return (FileError("Index::LoadCellFromTempFile"));
 			// read the number of consecutive points
 			if (fread(&ConsecutivePoints, sizeof(liblas::detail::ConsecPtAccumulator), 1, m_tempFile) < 1)
@@ -1682,26 +1682,26 @@ bool Index::InputBoundsError(const char *Reporter) const
 
 bool Index::OutputCellStats(IndexCellDataBlock& CellBlock) const
 {
-	boost::uint32_t MaxPointsPerCell = 0;
+	uint32_t MaxPointsPerCell = 0;
 
-	for (boost::uint32_t x = 0; x < m_cellsX; ++x)
+	for (uint32_t x = 0; x < m_cellsX; ++x)
 	{
-		for (boost::uint32_t y = 0; y < m_cellsY; ++y)
+		for (uint32_t y = 0; y < m_cellsY; ++y)
 		{
-			boost::uint32_t PointsThisCell = CellBlock[x][y].GetNumPoints();
+			uint32_t PointsThisCell = CellBlock[x][y].GetNumPoints();
 			if (PointsThisCell > MaxPointsPerCell)
 				MaxPointsPerCell = PointsThisCell;
 		} // for
 	} // for
 	
-	std::vector<boost::uint32_t> CellPopulation(LIBLAS_INDEX_DEBUGCELLBINS);
+	std::vector<uint32_t> CellPopulation(LIBLAS_INDEX_DEBUGCELLBINS);
 
-	for (boost::uint32_t x = 0; x < m_cellsX; ++x)
+	for (uint32_t x = 0; x < m_cellsX; ++x)
 	{
-		for (boost::uint32_t y = 0; y < m_cellsY; ++y)
+		for (uint32_t y = 0; y < m_cellsY; ++y)
 		{
-			boost::uint32_t PointsThisCell = CellBlock[x][y].GetNumPoints();
-			boost::uint32_t BinThisCell = (boost::uint32_t )(LIBLAS_INDEX_DEBUGCELLBINS * (double)PointsThisCell / (double)MaxPointsPerCell);
+			uint32_t PointsThisCell = CellBlock[x][y].GetNumPoints();
+			uint32_t BinThisCell = (uint32_t )(LIBLAS_INDEX_DEBUGCELLBINS * (double)PointsThisCell / (double)MaxPointsPerCell);
 			if (BinThisCell >= LIBLAS_INDEX_DEBUGCELLBINS)
 				BinThisCell = LIBLAS_INDEX_DEBUGCELLBINS - 1;
 			++CellPopulation[BinThisCell];
@@ -1715,10 +1715,10 @@ bool Index::OutputCellStats(IndexCellDataBlock& CellBlock) const
 	
 } // Index::OutputCellStats
 
-bool Index::OutputCellGraph(std::vector<boost::uint32_t> CellPopulation, boost::uint32_t MaxPointsPerCell) const
+bool Index::OutputCellGraph(std::vector<uint32_t> CellPopulation, uint32_t MaxPointsPerCell) const
 {
 	
-	for (boost::uint32_t i = 0; i < CellPopulation.size(); ++i)
+	for (uint32_t i = 0; i < CellPopulation.size(); ++i)
 	{
 		fprintf(m_debugger,"Bin %2d (%4d-%4d)... Cells in point range bin %d\n", i, (i * MaxPointsPerCell / LIBLAS_INDEX_DEBUGCELLBINS),
 			((i + 1)* MaxPointsPerCell / LIBLAS_INDEX_DEBUGCELLBINS), CellPopulation[i]);
@@ -1857,7 +1857,7 @@ void IndexData::SetValues(void)
 bool IndexData::SetInitialValues(std::istream *ifs, Reader *reader, std::ostream *ofs, Reader *idxreader, 
 	const char *tmpfilenme, const char *indexauthor, 
 	const char *indexcomment, const char *indexdate, double zbinht, 
-	boost::uint32_t maxmem, int debugoutputlevel, bool readonly, bool writestandaloneindex, 
+	uint32_t maxmem, int debugoutputlevel, bool readonly, bool writestandaloneindex, 
 	bool forcenewindex, FILE *debugger)
 {
 
@@ -1889,7 +1889,7 @@ bool IndexData::SetInitialValues(std::istream *ifs, Reader *reader, std::ostream
 
 bool IndexData::SetBuildEmbedValues(Reader *reader, std::ostream *ofs, const char *tmpfilenme, const char *indexauthor, 
 	const char *indexcomment, const char *indexdate, double zbinht, 
-	boost::uint32_t maxmem, int debugoutputlevel, FILE *debugger)
+	uint32_t maxmem, int debugoutputlevel, FILE *debugger)
 {
 
 	m_ifs = 0;
@@ -1915,7 +1915,7 @@ bool IndexData::SetBuildEmbedValues(Reader *reader, std::ostream *ofs, const cha
 
 bool IndexData::SetBuildAloneValues(Reader *reader, std::ostream *ofs, const char *tmpfilenme, const char *indexauthor, 
 	const char *indexcomment, const char *indexdate, double zbinht, 
-	boost::uint32_t maxmem, int debugoutputlevel, FILE *debugger)
+	uint32_t maxmem, int debugoutputlevel, FILE *debugger)
 {
 
 	m_ifs = 0;
@@ -1989,7 +1989,7 @@ bool IndexData::SetReadAloneValues(Reader *reader, Reader *idxreader, int debugo
 
 bool IndexData::SetReadOrBuildEmbedValues(Reader *reader, std::ostream *ofs, const char *tmpfilenme, const char *indexauthor, 
 	const char *indexcomment, const char *indexdate, double zbinht, 
-	boost::uint32_t maxmem, int debugoutputlevel, FILE *debugger)
+	uint32_t maxmem, int debugoutputlevel, FILE *debugger)
 {
 
 	SetBuildEmbedValues(reader, ofs, tmpfilenme, indexauthor, indexcomment, indexdate, zbinht, 
@@ -2002,7 +2002,7 @@ bool IndexData::SetReadOrBuildEmbedValues(Reader *reader, std::ostream *ofs, con
 
 bool IndexData::SetReadOrBuildAloneValues(Reader *reader, std::ostream *ofs, const char *tmpfilenme, const char *indexauthor, 
 	const char *indexcomment, const char *indexdate, double zbinht, 
-	boost::uint32_t maxmem, int debugoutputlevel, FILE *debugger)
+	uint32_t maxmem, int debugoutputlevel, FILE *debugger)
 {
 
 	SetBuildAloneValues(reader, ofs, tmpfilenme, indexauthor, indexcomment, indexdate, zbinht, 
@@ -2059,7 +2059,7 @@ void IndexData::ClampFilterBounds(Bounds<double> const& m_bounds)
 } // IndexData::ClampFilterBounds
 
 IndexIterator::IndexIterator(Index *IndexSrc, double LowFilterX, double HighFilterX, double LowFilterY, double HighFilterY, 
-	double LowFilterZ, double HighFilterZ, boost::uint32_t ChunkSize)
+	double LowFilterZ, double HighFilterZ, uint32_t ChunkSize)
 	: m_indexData(*IndexSrc)
 {
 	m_index = IndexSrc;
@@ -2069,7 +2069,7 @@ IndexIterator::IndexIterator(Index *IndexSrc, double LowFilterX, double HighFilt
 	ResetPosition();
 } // IndexIterator::IndexIterator
 
-IndexIterator::IndexIterator(Index *IndexSrc, IndexData const& IndexDataSrc, boost::uint32_t ChunkSize)
+IndexIterator::IndexIterator(Index *IndexSrc, IndexData const& IndexDataSrc, uint32_t ChunkSize)
 	: m_indexData(IndexDataSrc)
 {
 	m_index = IndexSrc;
@@ -2078,7 +2078,7 @@ IndexIterator::IndexIterator(Index *IndexSrc, IndexData const& IndexDataSrc, boo
 	ResetPosition();
 } // IndexIterator::IndexIterator
 
-IndexIterator::IndexIterator(Index *IndexSrc, Bounds<double> const& BoundsSrc, boost::uint32_t ChunkSize)
+IndexIterator::IndexIterator(Index *IndexSrc, Bounds<double> const& BoundsSrc, uint32_t ChunkSize)
 {
 	m_index = IndexSrc;
 	m_indexData = IndexData(*IndexSrc);
@@ -2125,14 +2125,14 @@ void IndexIterator::ResetPosition(void)
 	m_conformingPtsFound = 0;
 } // IndexIterator::ResetPosition
 
-const std::vector<boost::uint32_t>& IndexIterator::operator()(boost::int32_t n)
+const std::vector<uint32_t>& IndexIterator::operator()(int32_t n)
 {
 	if (n <= 0)
 	{
 		ResetPosition();
 		m_advance = 1;
 	} // if
-	else if ((boost::uint32_t)n < m_conformingPtsFound)
+	else if ((uint32_t)n < m_conformingPtsFound)
 	{
 		ResetPosition();
 		m_advance = n + 1;
@@ -2145,7 +2145,7 @@ const std::vector<boost::uint32_t>& IndexIterator::operator()(boost::int32_t n)
 	return (m_index->Filter(m_indexData));
 } // IndexIterator::operator++
 
-const std::vector<boost::uint32_t>& IndexIterator::advance(boost::int32_t n)
+const std::vector<uint32_t>& IndexIterator::advance(int32_t n)
 {
 	if (n > 0)
 		--n;
diff --git a/src/point.cpp b/src/point.cpp
old mode 100644
new mode 100755
index 4768405..ba3adb1
--- a/src/point.cpp
+++ b/src/point.cpp
@@ -63,28 +63,17 @@ using namespace boost;
 
 namespace liblas {
 
-Point::Point()
-    : 
-     m_header(0)
-    , m_default_header(DefaultHeader::get())
-    
-{
-    m_data.resize(ePointSize3);
-    m_data.assign(ePointSize3, 0);
-}
-
 Point::Point(Header const* hdr)
     : 
      m_header(hdr)
     , m_default_header(DefaultHeader::get())
 {
-    m_data.resize(ePointSize3);
-    m_data.assign(ePointSize3, 0);
+    m_data.resize(hdr->GetDataRecordLength());
+    m_data.assign(hdr->GetDataRecordLength(), 0);
 }
 
 Point::Point(Point const& other)
     : m_data(other.m_data)
-    // , m_header(other.m_header)
     , m_header(other.GetHeader())
     , m_default_header(DefaultHeader::get())
 {
@@ -95,7 +84,6 @@ Point& Point::operator=(Point const& rhs)
     if (&rhs != this)
     {
         m_data = rhs.m_data;
-        // m_header = rhs.m_header;
         m_header = rhs.m_header;
     }
     return *this;
@@ -206,12 +194,12 @@ void Point::SetHeader(Header const* header)
     // This is hopefully faster than copying everything if we don't have 
     // any data set and nothing to worry about.
     const liblas::Schema* schema;
-    boost::uint16_t wanted_length = header->GetDataRecordLength();
+    uint16_t wanted_length = header->GetDataRecordLength();
     schema = &(header->GetSchema());
-    boost::uint32_t sum = std::accumulate(m_data.begin(), m_data.end(), 0);
+    uint32_t sum = std::accumulate(m_data.begin(), m_data.end(), 0);
     
     if (!sum) {
-        std::vector<boost::uint8_t> data;
+        std::vector<uint8_t> data;
         data.resize(wanted_length);
         data.assign(wanted_length, 0);
         m_data = data;
@@ -244,7 +232,7 @@ void Point::SetHeader(Header const* header)
         Point p(*this);
         m_header = header;
 
-        std::vector<boost::uint8_t> data;
+        std::vector<uint8_t> data;
         data.resize(wanted_length);
         data.assign(wanted_length, 0);
         m_data = data;
@@ -375,19 +363,19 @@ std::ostream& operator<<(std::ostream& os, liblas::Point const& p)
     os << "  Time: \t\t" << tree.get<double>("time") << std::endl;
     os.unsetf(std::ios_base::fixed);
     os.unsetf(std::ios_base::floatfield);
-    os << "  Return Number: \t" << tree.get<boost::uint32_t>("returnnumber") << std::endl;
-    os << "  Return Count: \t" << tree.get<boost::uint32_t>("numberofreturns") << std::endl;
-    os << "  Flightline Edge: \t" << tree.get<boost::uint32_t>("flightlineedge") << std::endl;
-    os << "  Intensity: \t\t" << tree.get<boost::uint32_t>("intensity") << std::endl;
-    os << "  Scan Direction: \t" << tree.get<boost::uint32_t>("scandirection") << std::endl;
-    os << "  Scan Angle Rank: \t" << tree.get<boost::int32_t>("scanangle") << std::endl;
+    os << "  Return Number: \t" << tree.get<uint32_t>("returnnumber") << std::endl;
+    os << "  Return Count: \t" << tree.get<uint32_t>("numberofreturns") << std::endl;
+    os << "  Flightline Edge: \t" << tree.get<uint32_t>("flightlineedge") << std::endl;
+    os << "  Intensity: \t\t" << tree.get<uint32_t>("intensity") << std::endl;
+    os << "  Scan Direction: \t" << tree.get<uint32_t>("scandirection") << std::endl;
+    os << "  Scan Angle Rank: \t" << tree.get<int32_t>("scanangle") << std::endl;
     os << "  Classification: \t" << tree.get<std::string>("classification.name") << std::endl;
     os << "         witheld: \t" << tree.get<std::string>("classification.withheld") << std::endl;
     os << "        keypoint: \t" << tree.get<std::string>("classification.keypoint") << std::endl;
     os << "       synthetic: \t" << tree.get<std::string>("classification.synthetic") << std::endl;
-    os << "  RGB Color: \t\t" << tree.get<boost::uint32_t>("color.red") << " " 
-                              << tree.get<boost::uint32_t>("color.green") << " "
-                              << tree.get<boost::uint32_t>("color.blue") << std::endl;
+    os << "  RGB Color: \t\t" << tree.get<uint32_t>("color.red") << " " 
+                              << tree.get<uint32_t>("color.green") << " "
+                              << tree.get<uint32_t>("color.blue") << std::endl;
     os << "---------------------------------------------------------" << std::endl;
 
     return os;
@@ -396,7 +384,7 @@ std::ostream& operator<<(std::ostream& os, liblas::Point const& p)
 
 double Point::GetX() const
 {
-    boost::int32_t v = GetRawX();
+    int32_t v = GetRawX();
     
     double output  = (v * GetHeader()->GetScaleX()) + GetHeader()->GetOffsetX();
     
@@ -405,7 +393,7 @@ double Point::GetX() const
 
 double Point::GetY() const
 {
-    boost::int32_t v = GetRawY();
+    int32_t v = GetRawY();
     
     double output = (v * GetHeader()->GetScaleY()) + GetHeader()->GetOffsetY();
     return output;
@@ -413,7 +401,7 @@ double Point::GetY() const
 
 double Point::GetZ() const
 {
-    boost::int32_t v = GetRawZ();
+    int32_t v = GetRawZ();
     
     double output = 0;
     
@@ -424,7 +412,7 @@ double Point::GetZ() const
 
 void Point::SetX( double const& value ) 
 {
-    boost::int32_t v;
+    int32_t v;
     double scale;
     double offset;
 
@@ -432,14 +420,14 @@ void Point::SetX( double const& value )
     offset = GetHeader()->GetOffsetX();
 
     // descale the value given our scale/offset
-    v = static_cast<boost::int32_t>(
+    v = static_cast<int32_t>(
                          detail::sround((value - offset) / scale));
     SetRawX(v);
 }
 
 void Point::SetY( double const& value ) 
 {
-    boost::int32_t v;
+    int32_t v;
     double scale;
     double offset;
 
@@ -448,14 +436,14 @@ void Point::SetY( double const& value )
 
 
     // descale the value given our scale/offset
-    v = static_cast<boost::int32_t>(
+    v = static_cast<int32_t>(
                          detail::sround((value - offset) / scale));
     SetRawY(v);
 }
 
 void Point::SetZ( double const& value ) 
 {
-    boost::int32_t v;
+    int32_t v;
     double scale;
     double offset;
 
@@ -463,138 +451,138 @@ void Point::SetZ( double const& value )
     offset = GetHeader()->GetOffsetZ();
 
     // descale the value given our scale/offset
-    v = static_cast<boost::int32_t>(
+    v = static_cast<int32_t>(
                          detail::sround((value - offset) / scale));
     SetRawZ(v);
 }
 
-boost::int32_t Point::GetRawX() const
+int32_t Point::GetRawX() const
 {
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionPosition("X");
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(0);
-    std::vector<boost::uint8_t>::size_type pos = 0;
+    // std::vector<uint8_t>::size_type pos = GetDimensionPosition("X");
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(0);
+    std::vector<uint8_t>::size_type pos = 0;
     
 #ifdef LIBLAS_ENDIAN_AWARE
-    boost::int32_t output = liblas::detail::bitsToInt<boost::int32_t>(output, m_data, pos);
+    int32_t output = liblas::detail::bitsToInt<int32_t>(output, m_data, pos);
     return output;
 #else
-    boost::uint8_t* data = const_cast<boost::uint8_t*>(&m_data[0] + pos);
-    boost::int32_t* output = reinterpret_cast<boost::int32_t*>(data);
+    uint8_t* data = const_cast<uint8_t*>(&m_data[0] + pos);
+    int32_t* output = reinterpret_cast<int32_t*>(data);
     return *output;
 #endif
 }
 
-boost::int32_t Point::GetRawY() const
+int32_t Point::GetRawY() const
 {
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionPosition("Y");
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(1);
-    std::vector<boost::uint8_t>::size_type pos = 4;
+    // std::vector<uint8_t>::size_type pos = GetDimensionPosition("Y");
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(1);
+    std::vector<uint8_t>::size_type pos = 4;
 
 #ifdef LIBLAS_ENDIAN_AWARE
-    boost::int32_t output = liblas::detail::bitsToInt<boost::int32_t>(output, m_data, pos);
+    int32_t output = liblas::detail::bitsToInt<int32_t>(output, m_data, pos);
     return output;
 #else
-    boost::uint8_t* data = const_cast<boost::uint8_t*>(&m_data[0] + pos);
-    boost::int32_t* output = reinterpret_cast<boost::int32_t*>(data);
+    uint8_t* data = const_cast<uint8_t*>(&m_data[0] + pos);
+    int32_t* output = reinterpret_cast<int32_t*>(data);
     return *output;
 #endif
 }
 
-boost::int32_t Point::GetRawZ() const
+int32_t Point::GetRawZ() const
 {
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionPosition("Z");
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(2);
-    std::vector<boost::uint8_t>::size_type pos = 8;
+    // std::vector<uint8_t>::size_type pos = GetDimensionPosition("Z");
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(2);
+    std::vector<uint8_t>::size_type pos = 8;
 
 #ifdef LIBLAS_ENDIAN_AWARE
-    boost::int32_t output = liblas::detail::bitsToInt<boost::int32_t>(output, m_data, pos);
+    int32_t output = liblas::detail::bitsToInt<int32_t>(output, m_data, pos);
     return output;
 #else
-    boost::uint8_t* data = const_cast<boost::uint8_t*>(&m_data[0] + pos);
-    boost::int32_t* output = reinterpret_cast<boost::int32_t*>(data);
+    uint8_t* data = const_cast<uint8_t*>(&m_data[0] + pos);
+    int32_t* output = reinterpret_cast<int32_t*>(data);
     return *output;
 #endif
 }
 
-void Point::SetRawX( boost::int32_t const& value)
+void Point::SetRawX( int32_t const& value)
 {
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionPosition("X");
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(0);   
-    std::vector<boost::uint8_t>::size_type pos = 0;     
-    liblas::detail::intToBits<boost::int32_t>(value, m_data, pos);
+    // std::vector<uint8_t>::size_type pos = GetDimensionPosition("X");
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(0);   
+    std::vector<uint8_t>::size_type pos = 0;     
+    liblas::detail::intToBits<int32_t>(value, m_data, pos);
 }
 
-void Point::SetRawY( boost::int32_t const& value)
+void Point::SetRawY( int32_t const& value)
 {
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionPosition("Y");
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(1);
-    std::vector<boost::uint8_t>::size_type pos = 4;
-    liblas::detail::intToBits<boost::int32_t>(value, m_data, pos);
+    // std::vector<uint8_t>::size_type pos = GetDimensionPosition("Y");
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(1);
+    std::vector<uint8_t>::size_type pos = 4;
+    liblas::detail::intToBits<int32_t>(value, m_data, pos);
 }
 
-void Point::SetRawZ( boost::int32_t const& value)
+void Point::SetRawZ( int32_t const& value)
 {
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionPosition("Z");
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(2);
-    std::vector<boost::uint8_t>::size_type pos = 8;    
-    liblas::detail::intToBits<boost::int32_t>(value, m_data, pos);
+    // std::vector<uint8_t>::size_type pos = GetDimensionPosition("Z");
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(2);
+    std::vector<uint8_t>::size_type pos = 8;    
+    liblas::detail::intToBits<int32_t>(value, m_data, pos);
 }
 
-boost::uint16_t Point::GetIntensity() const
+uint16_t Point::GetIntensity() const
 {
     // Intensity's position is always the 4th dimension
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(3);
-    std::vector<boost::uint8_t>::size_type pos = 12;
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(3);
+    std::vector<uint8_t>::size_type pos = 12;
 
 #ifdef LIBLAS_ENDIAN_AWARE
-    boost::uint16_t output = liblas::detail::bitsToInt<boost::uint16_t>(output, m_data, pos);
+    uint16_t output = liblas::detail::bitsToInt<uint16_t>(output, m_data, pos);
     return output;
 #else
-    boost::uint8_t* data = const_cast<boost::uint8_t*>(&m_data[0] + pos);
-    boost::uint16_t* output = reinterpret_cast<boost::uint16_t*>(data);
+    uint8_t* data = const_cast<uint8_t*>(&m_data[0] + pos);
+    uint16_t* output = reinterpret_cast<uint16_t*>(data);
     return *output;
 #endif
 
 }
 
 
-void Point::SetIntensity(boost::uint16_t const& intensity)
+void Point::SetIntensity(uint16_t const& intensity)
 {
     // Intensity's position is always the 4th dimension
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(3);
-    std::vector<boost::uint8_t>::size_type pos = 12;    
-    liblas::detail::intToBits<boost::uint16_t>(intensity, 
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(3);
+    std::vector<uint8_t>::size_type pos = 12;    
+    liblas::detail::intToBits<uint16_t>(intensity, 
                                                m_data, 
                                                pos);
 }
 
-boost::uint8_t Point::GetScanFlags() const
+uint8_t Point::GetScanFlags() const
 {
     // Scan Flag's position is always the 5th dimension 
     // (the entire byte composed of "Return Number", "Number of Returns", 
     // "Scan Direction", and "Flightline Edge")
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(4);
-    std::vector<boost::uint8_t>::size_type pos = 14;    
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(4);
+    std::vector<uint8_t>::size_type pos = 14;    
     return m_data[pos];
 }
 
-void Point::SetScanFlags(boost::uint8_t const& flags)
+void Point::SetScanFlags(uint8_t const& flags)
 {
     // Scan Flag's position is always the 5th dimension 
     // (the entire byte composed of "Return Number", "Number of Returns", 
     // "Scan Direction", and "Flightline Edge")
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(4);       
-    std::vector<boost::uint8_t>::size_type pos = 14;    
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(4);       
+    std::vector<uint8_t>::size_type pos = 14;    
     m_data[pos] = flags;
 }
 
-boost::uint16_t Point::GetReturnNumber() const
+uint16_t Point::GetReturnNumber() const
 {
     // "Return Number" is always the 5th dimension
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(4);
-    std::vector<boost::uint8_t>::size_type pos = 14;    
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(4);
+    std::vector<uint8_t>::size_type pos = 14;    
     
-    boost::uint8_t flags = m_data[pos];
+    uint8_t flags = m_data[pos];
     
     // Read bits 1,2,3 (first 3 bits)
     return (flags & 0x07);
@@ -603,9 +591,9 @@ boost::uint16_t Point::GetReturnNumber() const
 void Point::SetReturnNumber(uint16_t const& num)
 {
     // "Return Number" is always the 5th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(4);
-    std::vector<boost::uint8_t>::size_type pos = 14;    
-    boost::uint8_t flags = m_data[pos];
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(4);
+    std::vector<uint8_t>::size_type pos = 14;    
+    uint8_t flags = m_data[pos];
     
     // Store value in bits 0,1,2
     uint8_t mask = 0x7 << 0; // 0b00000111
@@ -614,13 +602,13 @@ void Point::SetReturnNumber(uint16_t const& num)
     m_data[pos] = flags;
 }
 
-boost::uint16_t Point::GetNumberOfReturns() const
+uint16_t Point::GetNumberOfReturns() const
 {
-    boost::uint8_t flags;
+    uint8_t flags;
 
     // "Number of Returns" is always the 6th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(5);
-    std::vector<boost::uint8_t>::size_type pos = 14;
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(5);
+    std::vector<uint8_t>::size_type pos = 14;
 
     flags = m_data[pos];
 
@@ -631,10 +619,10 @@ boost::uint16_t Point::GetNumberOfReturns() const
 void Point::SetNumberOfReturns(uint16_t const& num)
 {
     // "Number of Returns" is always the 6th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(5);
-    std::vector<boost::uint8_t>::size_type pos = 14;    
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(5);
+    std::vector<uint8_t>::size_type pos = 14;    
     
-    boost::uint8_t flags = m_data[pos];
+    uint8_t flags = m_data[pos];
     
     // Store value in bits 3,4,5
     uint8_t mask = 0x7 << 3; // 0b00111000
@@ -647,10 +635,10 @@ void Point::SetNumberOfReturns(uint16_t const& num)
 void Point::SetScanDirection(uint16_t const& dir)
 {
     // "Scan Direction" is always the 7th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(6);
-    std::vector<boost::uint8_t>::size_type pos = 14;    
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(6);
+    std::vector<uint8_t>::size_type pos = 14;    
     
-    boost::uint8_t flags = m_data[pos];
+    uint8_t flags = m_data[pos];
     
     // Store value in bits 6
     uint8_t mask = 0x1 << 6; // 0b01000000
@@ -659,12 +647,12 @@ void Point::SetScanDirection(uint16_t const& dir)
     m_data[pos] = flags;   
 }
 
-boost::uint16_t Point::GetScanDirection() const
+uint16_t Point::GetScanDirection() const
 {
     // "Scan Direction" is always the 7th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(6);
-    std::vector<boost::uint8_t>::size_type pos = 14;        
-    boost::uint8_t flags = m_data[pos];
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(6);
+    std::vector<uint8_t>::size_type pos = 14;        
+    uint8_t flags = m_data[pos];
 
     // Read 6th bit
     return ((flags >> 6) & 0x01);
@@ -673,10 +661,10 @@ boost::uint16_t Point::GetScanDirection() const
 void Point::SetFlightLineEdge(uint16_t const& edge)
 {
     // "Flightline Edge" is always the 8th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(7);
-    std::vector<boost::uint8_t>::size_type pos = 14;    
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(7);
+    std::vector<uint8_t>::size_type pos = 14;    
 
-    boost::uint8_t flags = m_data[pos];
+    uint8_t flags = m_data[pos];
     
     // Store value in bits 7
     uint8_t mask = 0x1 << 7; // 0b10000000
@@ -686,13 +674,13 @@ void Point::SetFlightLineEdge(uint16_t const& edge)
 
 }
     
-boost::uint16_t Point::GetFlightLineEdge() const
+uint16_t Point::GetFlightLineEdge() const
 {
     // "Flightline Edge" is always the 8th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(7);
-    std::vector<boost::uint8_t>::size_type pos = 14;    
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(7);
+    std::vector<uint8_t>::size_type pos = 14;    
     
-    boost::uint8_t flags = m_data[pos];
+    uint8_t flags = m_data[pos];
 
     // Read 8th bit
     return ((flags >> 7) & 0x01);
@@ -702,95 +690,95 @@ boost::uint16_t Point::GetFlightLineEdge() const
 Classification Point::GetClassification() const
 {
     // "Classification" is always the 9th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(8);
-    std::vector<boost::uint8_t>::size_type pos = 15;
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(8);
+    std::vector<uint8_t>::size_type pos = 15;
     
-    boost::uint8_t kls = m_data[pos];
+    uint8_t kls = m_data[pos];
     return Classification(kls);
 }
 
 void Point::SetClassification(Classification const& cls)
 {
     // "Classification" is always the 9th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(8);
-    std::vector<boost::uint8_t>::size_type const pos = 15;
-    m_data[pos] = static_cast<boost::uint8_t>(cls.GetFlags().to_ulong());
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(8);
+    std::vector<uint8_t>::size_type const pos = 15;
+    m_data[pos] = static_cast<uint8_t>(cls.GetFlags().to_ulong());
 }
 
 void Point::SetClassification(Classification::bitset_type const& flags)
 {
     // "Classification" is always the 9th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(8);
-    std::vector<boost::uint8_t>::size_type const pos = 15;    
-    m_data[pos] = static_cast<boost::uint8_t>(flags.to_ulong());
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(8);
+    std::vector<uint8_t>::size_type const pos = 15;    
+    m_data[pos] = static_cast<uint8_t>(flags.to_ulong());
 }
 
-void Point::SetClassification(boost::uint8_t const& flags)
+void Point::SetClassification(uint8_t const& flags)
 {
     // "Classification" is always the 9th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(8);
-    std::vector<boost::uint8_t>::size_type const  pos = 15;
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(8);
+    std::vector<uint8_t>::size_type const  pos = 15;
     m_data[pos] = flags; 
 }
 
 void Point::SetScanAngleRank(int8_t const& rank)
 {
     // "Scan Angle Rank" is always the 10th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(9);
-    std::vector<boost::uint8_t>::size_type pos = 16;
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(9);
+    std::vector<uint8_t>::size_type pos = 16;
 
     m_data[pos] = rank;
 
 }
-boost::int8_t Point::GetScanAngleRank() const
+int8_t Point::GetScanAngleRank() const
 {
     // "Scan Angle Rank" is always the 10th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(9);
-    std::vector<boost::uint8_t>::size_type pos = 16;
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(9);
+    std::vector<uint8_t>::size_type pos = 16;
 
     return m_data[pos];
 }
 
-boost::uint8_t Point::GetUserData() const
+uint8_t Point::GetUserData() const
 {
     // "User Data" is always the 11th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(10);
-    std::vector<boost::uint8_t>::size_type pos = 17;
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(10);
+    std::vector<uint8_t>::size_type pos = 17;
     return m_data[pos];
 }
 
-void Point::SetUserData(boost::uint8_t const& flags)
+void Point::SetUserData(uint8_t const& flags)
 {
     // "User Data" is always the 11th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(10);
-    std::vector<boost::uint8_t>::size_type pos = 17;
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(10);
+    std::vector<uint8_t>::size_type pos = 17;
     m_data[pos] = flags;
 }
 
-boost::uint16_t Point::GetPointSourceID() const
+uint16_t Point::GetPointSourceID() const
 {
 
     // "Point Source ID" is always the 12th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(11);
-    std::vector<boost::uint8_t>::size_type pos = 18;
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(11);
+    std::vector<uint8_t>::size_type pos = 18;
 
 #ifdef LIBLAS_ENDIAN_AWARE
-    boost::uint16_t output = liblas::detail::bitsToInt<boost::uint16_t>(output, m_data, pos);
+    uint16_t output = liblas::detail::bitsToInt<uint16_t>(output, m_data, pos);
     return output;
 #else
-    boost::uint8_t* data = const_cast<boost::uint8_t*>(&m_data[0] + pos);
-    boost::uint16_t* output = reinterpret_cast<boost::uint16_t*>(data);
+    uint8_t* data = const_cast<uint8_t*>(&m_data[0] + pos);
+    uint16_t* output = reinterpret_cast<uint16_t*>(data);
     return *output;
 #endif
 
 }
 
-void Point::SetPointSourceID(boost::uint16_t const& id)
+void Point::SetPointSourceID(uint16_t const& id)
 {
     // "Point Source ID" is always the 12th dimension    
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(11);
-    std::vector<boost::uint8_t>::size_type pos = 18;    
-    liblas::detail::intToBits<boost::uint16_t>(id, m_data, pos);
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(11);
+    std::vector<uint8_t>::size_type pos = 18;    
+    liblas::detail::intToBits<uint16_t>(id, m_data, pos);
 }
 
 void Point::SetTime(double const& t)
@@ -808,8 +796,8 @@ void Point::SetTime(double const& t)
         throw liblas::invalid_format(msg.str());
     }
 
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(index_pos);
-    std::vector<boost::uint8_t>::size_type pos = 20;
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(index_pos);
+    std::vector<uint8_t>::size_type pos = 20;
     detail::binary::endian_value<double> value(t);
     value.store<detail::binary::little_endian_tag>(&m_data[0] + pos);
 }
@@ -829,15 +817,15 @@ double Point::GetTime() const
 
     // "Time" is the 13th dimension if it exists
     // std::size_t const index_pos = 12;
-    // std::vector<boost::uint8_t>::size_type pos = GetDimensionBytePosition(index_pos);
-    std::vector<boost::uint8_t>::size_type pos = 20;   
+    // std::vector<uint8_t>::size_type pos = GetDimensionBytePosition(index_pos);
+    std::vector<uint8_t>::size_type pos = 20;   
 
 #ifdef LIBLAS_ENDIAN_AWARE
     detail::binary::endian_value<double> output;
     output.load<detail::binary::little_endian_tag>(&m_data[0] + pos);
     return output;
 #else
-    boost::uint8_t* data = const_cast<boost::uint8_t*>(&m_data[0] + pos);
+    uint8_t* data = const_cast<uint8_t*>(&m_data[0] + pos);
     double* output = reinterpret_cast<double*>(data);
     return *output;
 #endif
@@ -868,9 +856,9 @@ Color Point::GetColor() const
         
 
 
-    std::vector<boost::uint8_t>::size_type red_pos = index_pos;
-    std::vector<boost::uint8_t>::size_type green_pos = index_pos + 2;
-    std::vector<boost::uint8_t>::size_type blue_pos = index_pos + 4;
+    std::vector<uint8_t>::size_type red_pos = index_pos;
+    std::vector<uint8_t>::size_type green_pos = index_pos + 2;
+    std::vector<uint8_t>::size_type blue_pos = index_pos + 4;
 
     assert(red_pos <= m_data.size());
     assert(blue_pos <= m_data.size());
@@ -878,24 +866,24 @@ Color Point::GetColor() const
 
 #ifdef LIBLAS_ENDIAN_AWARE
     using liblas::detail::bitsToInt;
-    boost::uint16_t red(0);
-    boost::uint16_t green(0);
-    boost::uint16_t blue(0);
-    red = bitsToInt<boost::uint16_t>(red, m_data, red_pos);
-    green = bitsToInt<boost::uint16_t>(green, m_data, green_pos);
-    blue = bitsToInt<boost::uint16_t>(blue, m_data, blue_pos);
+    uint16_t red(0);
+    uint16_t green(0);
+    uint16_t blue(0);
+    red = bitsToInt<uint16_t>(red, m_data, red_pos);
+    green = bitsToInt<uint16_t>(green, m_data, green_pos);
+    blue = bitsToInt<uint16_t>(blue, m_data, blue_pos);
     color[0] = red;
     color[1] = green;
     color[2] = blue;
 #else
-    boost::uint8_t* red_data = const_cast<boost::uint8_t*>(&m_data[0] + red_pos);
-    boost::uint16_t* p_red = reinterpret_cast<boost::uint16_t*>(red_data);
+    uint8_t* red_data = const_cast<uint8_t*>(&m_data[0] + red_pos);
+    uint16_t* p_red = reinterpret_cast<uint16_t*>(red_data);
 
-    boost::uint8_t* green_data = const_cast<boost::uint8_t*>(&m_data[0] + green_pos);
-    boost::uint16_t* p_green = reinterpret_cast<boost::uint16_t*>(green_data);
+    uint8_t* green_data = const_cast<uint8_t*>(&m_data[0] + green_pos);
+    uint16_t* p_green = reinterpret_cast<uint16_t*>(green_data);
 
-    boost::uint8_t* blue_data = const_cast<boost::uint8_t*>(&m_data[0] + blue_pos);
-    boost::uint16_t* p_blue = reinterpret_cast<boost::uint16_t*>(blue_data);
+    uint8_t* blue_data = const_cast<uint8_t*>(&m_data[0] + blue_pos);
+    uint16_t* p_blue = reinterpret_cast<uint16_t*>(blue_data);
 
     color[0] = *p_red;
     color[1] = *p_green;
@@ -939,22 +927,22 @@ void Point::SetColor(Color const& value)
         index_pos = 20; // increment to include position of Time.
 
     
-    std::vector<boost::uint8_t>::size_type red_pos = index_pos;
-    std::vector<boost::uint8_t>::size_type green_pos = index_pos + 2;
-    std::vector<boost::uint8_t>::size_type blue_pos = index_pos + 4;
+    std::vector<uint8_t>::size_type red_pos = index_pos;
+    std::vector<uint8_t>::size_type green_pos = index_pos + 2;
+    std::vector<uint8_t>::size_type blue_pos = index_pos + 4;
 
     assert(red_pos <= m_data.size());
     assert(blue_pos <= m_data.size());
     assert(green_pos <= m_data.size());
     
-    intToBits<boost::uint16_t>(value.GetRed(), m_data, red_pos);
-    intToBits<boost::uint16_t>(value.GetGreen(), m_data, green_pos);
-    intToBits<boost::uint16_t>(value.GetBlue(), m_data, blue_pos);
+    intToBits<uint16_t>(value.GetRed(), m_data, red_pos);
+    intToBits<uint16_t>(value.GetGreen(), m_data, green_pos);
+    intToBits<uint16_t>(value.GetBlue(), m_data, blue_pos);
 }
 
-std::vector<boost::uint8_t>::size_type Point::GetDimensionBytePosition(std::size_t dim_pos) const
+std::vector<uint8_t>::size_type Point::GetDimensionBytePosition(std::size_t dim_pos) const
 {
-    boost::optional<Dimension const&> d;
+    optional<Dimension const&> d;
     d = m_header->GetSchema().GetDimension(dim_pos);
     
     if (!d)
diff --git a/src/reader.cpp b/src/reader.cpp
old mode 100644
new mode 100755
diff --git a/src/schema.cpp b/src/schema.cpp
old mode 100644
new mode 100755
index b5ff762..c80655d
--- a/src/schema.cpp
+++ b/src/schema.cpp
@@ -338,7 +338,7 @@ void Schema::update_required_dimensions(PointFormatName data_format_id)
 
         default:
             std::ostringstream oss;
-            oss << "Unhandled PointFormatName id " << static_cast<boost::uint32_t>(data_format_id);
+            oss << "Unhandled PointFormatName id " << static_cast<uint32_t>(data_format_id);
             throw std::runtime_error(oss.str());
     }
 
@@ -384,9 +384,9 @@ Schema& Schema::operator=(Schema const& rhs)
 liblas::property_tree::ptree Schema::LoadPTree(VariableRecord const& v) 
 {
     std::ostringstream oss;
-    std::vector<boost::uint8_t> data = v.GetData();
+    std::vector<uint8_t> data = v.GetData();
 
-    std::vector<boost::uint8_t>::const_iterator i;
+    std::vector<uint8_t>::const_iterator i;
     for (i = data.begin(); i != data.end(); ++i)
     {
         oss << *i;
@@ -411,14 +411,14 @@ IndexMap Schema::LoadDimensions(liblas::property_tree::ptree tree)
     for (i = dims.begin(); i != dims.end(); ++i)
     {
         ptree v = (*i).second;
-        boost::uint32_t size = v.get<boost::uint32_t>("size");
+        uint32_t size = v.get<uint32_t>("size");
         std::string name = v.get<std::string>("name");
         std::string description = v.get<std::string>("description");
         bool issigned = v.get<bool>("signed");
         bool isinteger = v.get<bool>("integer");
         bool isactive = v.get<bool>("active");
         bool isrequired = v.get<bool>("required");
-        boost::uint32_t position = v.get<boost::uint32_t>("position");
+        uint32_t position = v.get<uint32_t>("position");
         double min=0;
         double max=0;
         try {
@@ -448,8 +448,8 @@ IndexMap Schema::LoadDimensions(liblas::property_tree::ptree tree)
 
     }
     
-    boost::uint32_t pf =tree.get<boost::uint32_t>("LASSchema.formatid");
-    boost::uint16_t version = tree.get<boost::uint16_t>("LASSchema.version");
+    uint32_t pf =tree.get<uint32_t>("LASSchema.formatid");
+    uint16_t version = tree.get<uint16_t>("LASSchema.version");
     
     SetSchemaVersion(version);
     SetDataFormatId(static_cast<liblas::PointFormatName>(pf));
@@ -501,12 +501,12 @@ std::ostream& operator<<(std::ostream& os, liblas::Schema const& s)
         }
     }   
     
-    boost::uint32_t byte_size = 0;
-    boost::uint32_t bit_size = 0;
+    uint32_t byte_size = 0;
+    uint32_t bit_size = 0;
     BOOST_FOREACH(ptree::value_type &v,
             tree.get_child("LASSchema.dimensions"))
     {
-        bit_size = bit_size + v.second.get<boost::uint32_t>("size");
+        bit_size = bit_size + v.second.get<uint32_t>("size");
     }  
     
     byte_size = bit_size / 8;
@@ -752,7 +752,7 @@ std::vector<std::string> Schema::GetDimensionNames() const
 VariableRecord Schema::GetVLR() const
 {
     VariableRecord vlr;
-    std::vector<boost::uint8_t> data;
+    std::vector<uint8_t> data;
     vlr.SetUserId("liblas");
     vlr.SetRecordId(7);
     
@@ -761,18 +761,18 @@ VariableRecord Schema::GetVLR() const
     liblas::property_tree::write_xml(oss, tree);
     
     std::string s(oss.str());
-    vlr.SetRecordLength(static_cast<boost::uint16_t>(s.size()));
+    vlr.SetRecordLength(static_cast<uint16_t>(s.size()));
 
     std::string::const_iterator i;
     for (i = s.begin(); i != s.end(); ++i)
     {
         data.push_back(*i);
     }
-    if (data.size() > (std::numeric_limits<boost::uint16_t>::max())) {
+    if (data.size() > (std::numeric_limits<uint16_t>::max())) {
         std::ostringstream oss;
         oss << "This schema with length " << data.size() << " does" 
             << " not fit within the maximum VLR size of " 
-            << (std::numeric_limits<boost::uint16_t>::max());
+            << (std::numeric_limits<uint16_t>::max());
         throw std::runtime_error(oss.str());
     }
     vlr.SetData(data);
@@ -788,7 +788,7 @@ bool Schema::operator==(const Schema& input) const
     index_by_index const& other = input.m_index.get<index>();
     
     
-    for (boost::uint32_t i = 0; i!= current.size(); ++i)
+    for (uint32_t i = 0; i!= current.size(); ++i)
     {
         if (other[i] != current[i]) return false;
     }
diff --git a/src/spatialreference.cpp b/src/spatialreference.cpp
old mode 100644
new mode 100755
index 0cbc929..4ad2dfe
--- a/src/spatialreference.cpp
+++ b/src/spatialreference.cpp
@@ -402,13 +402,13 @@ void SpatialReference::ResetVLRs()
          }
          record.SetData(data);
 
-        if (data.size() > (std::numeric_limits<boost::uint16_t>::max()))
+        if (data.size() > (std::numeric_limits<uint16_t>::max()))
         {
             std::ostringstream oss;
-            std::vector<uint8_t>::size_type overrun = data.size() - static_cast<std::vector<uint8_t>::size_type>(std::numeric_limits<boost::uint16_t>::max());
+            std::vector<uint8_t>::size_type overrun = data.size() - static_cast<std::vector<uint8_t>::size_type>(std::numeric_limits<uint16_t>::max());
             oss << "The size of the GeoTIFF GeoAsciiParamsTag, " << data.size() << ", is " << overrun 
                 << " bytes too large to fit inside the maximum size of a VLR which is " 
-                << (std::numeric_limits<boost::uint16_t>::max()) << " bytes.";
+                << (std::numeric_limits<uint16_t>::max()) << " bytes.";
             throw std::runtime_error(oss.str());
 
         }
@@ -439,19 +439,19 @@ void SpatialReference::ResetVLRs()
 
         data.push_back( '\0' );
 
-        if (data.size() > std::numeric_limits<boost::uint16_t>::max())
+        if (data.size() > std::numeric_limits<uint16_t>::max())
         {
             std::ostringstream oss;
-            std::vector<uint8_t>::size_type overrun = data.size() - static_cast<std::vector<uint8_t>::size_type>(std::numeric_limits<boost::uint16_t>::max());
+            std::vector<uint8_t>::size_type overrun = data.size() - static_cast<std::vector<uint8_t>::size_type>(std::numeric_limits<uint16_t>::max());
             oss << "The size of the wkt, " << data.size() << ", is " << overrun 
                 << " bytes too large to fit inside the maximum size of a VLR which is " 
-                << std::numeric_limits<boost::uint16_t>::max() << " bytes.";
+                << std::numeric_limits<uint16_t>::max() << " bytes.";
             throw std::runtime_error(oss.str());
 
         }
 
 
-        wkt_record.SetRecordLength( static_cast<boost::uint16_t>(data.size()) );
+        wkt_record.SetRecordLength( static_cast<uint16_t>(data.size()) );
         wkt_record.SetData(data);
 
         // not to speak of this additional copy!
@@ -500,7 +500,7 @@ const GTIF* SpatialReference::GetGTIF()
         if (uid == record.GetUserId(true).c_str() && 34735 == record.GetRecordId())
         {
             int count = data.size()/sizeof(int16_t);
-            short *data_s = (short *) &(data[0]);
+            short *data_s = reinterpret_cast<short *>( &(data[0]));
 
             // discard invalid "zero" geotags some software emits.
             while( count > 4 
diff --git a/src/tifvsi.cpp b/src/tifvsi.cpp
old mode 100644
new mode 100755
index 7441234..3618da0
--- a/src/tifvsi.cpp
+++ b/src/tifvsi.cpp
@@ -1,5 +1,5 @@
 /******************************************************************************
- * $Id: tifvsi.cpp 10645 2007-01-18 02:22:39Z warmerdam $
+ * $Id: tifvsi.cpp 27044 2014-03-16 23:41:27Z rouault $
  *
  * Project:  GeoTIFF Driver
  * Purpose:  Implement system hook functions for libtiff on top of CPL/VSI,
@@ -9,6 +9,7 @@
  *
  ******************************************************************************
  * Copyright (c) 2005, Frank Warmerdam, warmerdam at pobox.com
+ * Copyright (c) 2010-2012, Even Rouault <even dot rouault at mines-paris dot org>
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the "Software"),
@@ -32,12 +33,18 @@
 /*
  * TIFF Library UNIX-specific Routines.
  */
-#include "tiffio.h"
 #include "cpl_vsi.h"
+#include "tifvsi.h"
+
+#include <errno.h>
 
 // We avoid including xtiffio.h since it drags in the libgeotiff version
 // of the VSI functions.
 
+#ifdef RENAME_INTERNAL_LIBGEOTIFF_SYMBOLS
+#include "gdal_libgeotiff_symbol_rename.h"
+#endif
+
 CPL_C_START
 extern TIFF CPL_DLL * XTIFFClientOpen(const char* name, const char* mode, 
                                       thandle_t thehandle,
@@ -50,28 +57,36 @@ CPL_C_END
 static tsize_t
 _tiffReadProc(thandle_t fd, tdata_t buf, tsize_t size)
 {
-    return VSIFReadL( buf, 1, size, (FILE *) fd );
+    return VSIFReadL( buf, 1, size, (VSILFILE *) fd );
 }
 
 static tsize_t
 _tiffWriteProc(thandle_t fd, tdata_t buf, tsize_t size)
 {
-    return VSIFWriteL( buf, 1, size, (FILE *) fd );
+    tsize_t nRet = VSIFWriteL( buf, 1, size, (VSILFILE *) fd );
+    if (nRet < size)
+    {
+        TIFFErrorExt( fd, "_tiffWriteProc", "%s", VSIStrerror( errno ) );
+    }
+    return nRet;
 }
 
 static toff_t
 _tiffSeekProc(thandle_t fd, toff_t off, int whence)
 {
-    if( VSIFSeekL( (FILE *) fd, off, whence ) == 0 )
-        return (toff_t) VSIFTellL( (FILE *) fd );
+    if( VSIFSeekL( (VSILFILE *) fd, off, whence ) == 0 )
+        return (toff_t) VSIFTellL( (VSILFILE *) fd );
     else
+    {
+        TIFFErrorExt( fd, "_tiffSeekProc", "%s", VSIStrerror( errno ) );
         return (toff_t) -1;
+    }
 }
 
 static int
 _tiffCloseProc(thandle_t fd)
 {
-    return VSIFCloseL( (FILE *) fd );
+    return VSIFCloseL( (VSILFILE *) fd );
 }
 
 static toff_t
@@ -80,11 +95,11 @@ _tiffSizeProc(thandle_t fd)
     vsi_l_offset  old_off;
     toff_t        file_size;
 
-    old_off = VSIFTellL( (FILE *) fd );
-    VSIFSeekL( (FILE *) fd, 0, SEEK_END );
+    old_off = VSIFTellL( (VSILFILE *) fd );
+    VSIFSeekL( (VSILFILE *) fd, 0, SEEK_END );
     
-    file_size = (toff_t) VSIFTellL( (FILE *) fd );
-    VSIFSeekL( (FILE *) fd, old_off, SEEK_SET );
+    file_size = (toff_t) VSIFTellL( (VSILFILE *) fd );
+    VSIFSeekL( (VSILFILE *) fd, old_off, SEEK_SET );
 
     return file_size;
 }
@@ -110,7 +125,7 @@ TIFF* VSI_TIFFOpen(const char* name, const char* mode)
     static const char module[] = "TIFFOpen";
     int           i, a_out;
     char          access[32];
-    FILE          *fp;
+    VSILFILE      *fp;
     TIFF          *tif;
 
     a_out = 0;
diff --git a/src/tifvsi.h b/src/tifvsi.h
old mode 100644
new mode 100755
index bd0f447..17a30c5
--- a/src/tifvsi.h
+++ b/src/tifvsi.h
@@ -1,5 +1,5 @@
 /******************************************************************************
- * $Id: tifvsi.h 21102 2010-11-08 20:47:38Z rouault $
+ * $Id: tifvsi.h 27044 2014-03-16 23:41:27Z rouault $
  *
  * Project:  GeoTIFF Driver
  * Purpose:  Implement system hook functions for libtiff on top of CPL/VSI,
@@ -9,6 +9,7 @@
  *
  ******************************************************************************
  * Copyright (c) 2005, Frank Warmerdam, warmerdam at pobox.com
+ * Copyright (c) 2010, Even Rouault <even dot rouault at mines-paris dot org>
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the "Software"),
diff --git a/src/transform.cpp b/src/transform.cpp
old mode 100644
new mode 100755
index 50ca91c..4d3323f
--- a/src/transform.cpp
+++ b/src/transform.cpp
@@ -192,18 +192,18 @@ bool ReprojectionTransform::transform(Point& point)
     point.SetY(y);
     point.SetZ(z);
     
-    if (detail::compare_distance(point.GetRawX(), (std::numeric_limits<boost::int32_t>::max)()) ||
-        detail::compare_distance(point.GetRawX(), (std::numeric_limits<boost::int32_t>::min)())) {
+    if (detail::compare_distance(point.GetRawX(), (std::numeric_limits<int32_t>::max)()) ||
+        detail::compare_distance(point.GetRawX(), (std::numeric_limits<int32_t>::min)())) {
         throw std::domain_error("X scale and offset combination is insufficient to represent the data");
     }
 
-    if (detail::compare_distance(point.GetRawY(), (std::numeric_limits<boost::int32_t>::max)()) ||
-        detail::compare_distance(point.GetRawY(), (std::numeric_limits<boost::int32_t>::min)())) {
+    if (detail::compare_distance(point.GetRawY(), (std::numeric_limits<int32_t>::max)()) ||
+        detail::compare_distance(point.GetRawY(), (std::numeric_limits<int32_t>::min)())) {
         throw std::domain_error("Y scale and offset combination is insufficient to represent the data");
     }    
 
-    if (detail::compare_distance(point.GetRawZ(), (std::numeric_limits<boost::int32_t>::max)()) ||
-        detail::compare_distance(point.GetRawZ(), (std::numeric_limits<boost::int32_t>::min)())) {
+    if (detail::compare_distance(point.GetRawZ(), (std::numeric_limits<int32_t>::max)()) ||
+        detail::compare_distance(point.GetRawZ(), (std::numeric_limits<int32_t>::min)())) {
         throw std::domain_error("Z scale and offset combination is insufficient to represent the data");
     }        
 
@@ -406,22 +406,22 @@ bool TranslationTransform::transform(Point& point)
 
                 default:
                     std::ostringstream oss;
-                    oss << "Unhandled expression operation id " << static_cast<boost::int32_t>(op->oper);
+                    oss << "Unhandled expression operation id " << static_cast<int32_t>(op->oper);
                     throw std::runtime_error(oss.str());
             }
 
-    if (detail::compare_distance(point.GetRawX(), (std::numeric_limits<boost::int32_t>::max)()) ||
-        detail::compare_distance(point.GetRawX(), (std::numeric_limits<boost::int32_t>::min)())) {
+    if (detail::compare_distance(point.GetRawX(), (std::numeric_limits<int32_t>::max)()) ||
+        detail::compare_distance(point.GetRawX(), (std::numeric_limits<int32_t>::min)())) {
         throw std::domain_error("X scale and offset combination of this file is insufficient to represent the data given the expression ");
     }
 
-    if (detail::compare_distance(point.GetRawY(), (std::numeric_limits<boost::int32_t>::max)()) ||
-        detail::compare_distance(point.GetRawY(), (std::numeric_limits<boost::int32_t>::min)())) {
+    if (detail::compare_distance(point.GetRawY(), (std::numeric_limits<int32_t>::max)()) ||
+        detail::compare_distance(point.GetRawY(), (std::numeric_limits<int32_t>::min)())) {
         throw std::domain_error("Y scale and offset combination of this file is insufficient to represent the data given the expression");
     }    
 
-    if (detail::compare_distance(point.GetRawZ(), (std::numeric_limits<boost::int32_t>::max)()) ||
-        detail::compare_distance(point.GetRawZ(), (std::numeric_limits<boost::int32_t>::min)())) {
+    if (detail::compare_distance(point.GetRawZ(), (std::numeric_limits<int32_t>::max)()) ||
+        detail::compare_distance(point.GetRawZ(), (std::numeric_limits<int32_t>::min)())) {
         throw std::domain_error("Z scale and offset combination of this file is insufficient to represent the data given the expression");
     }   
 
@@ -450,7 +450,7 @@ void CPL_STDCALL ColorFetchingTransformGDALErrorHandler(CPLErr eErrClass, int er
 
 ColorFetchingTransform::ColorFetchingTransform(
     std::string const& datasource, 
-    std::vector<boost::uint32_t> bands
+    std::vector<uint32_t> bands
 )
     : m_new_header(0)
     , m_ds(DataSourcePtr())
@@ -463,7 +463,7 @@ ColorFetchingTransform::ColorFetchingTransform(
 
 ColorFetchingTransform::ColorFetchingTransform(
     std::string const& datasource, 
-    std::vector<boost::uint32_t> bands,
+    std::vector<uint32_t> bands,
     Header const* header
 )
     : m_new_header(header)
@@ -490,7 +490,7 @@ void ColorFetchingTransform::Initialize()
     // user did not supply any bands 
     if( m_bands.size() == 0 )
     {
-        for( boost::int32_t i = 0; i < GDALGetRasterCount( m_ds.get() ); i++ )
+        for( int32_t i = 0; i < GDALGetRasterCount( m_ds.get() ); i++ )
         {
             if (i > 3) break;  
             m_bands.push_back( i+1 );
@@ -505,8 +505,11 @@ void ColorFetchingTransform::Initialize()
         throw std::runtime_error("unable to fetch forward geotransform for raster!");
     }
 
-    GDALInvGeoTransform( &(m_forward_transform.front()), &(m_inverse_transform.front()) );
-
+    if (!GDALInvGeoTransform( &(m_forward_transform.front()), &(m_inverse_transform.front())))
+    {
+        throw std::runtime_error("unable to fetch inverse geotransform for raster!");
+    }
+    
 #endif  
 }
 
@@ -514,8 +517,8 @@ bool ColorFetchingTransform::transform(Point& point)
 {
 #ifdef HAVE_GDAL
     
-    boost::int32_t pixel = 0;
-    boost::int32_t line = 0;
+    int32_t pixel = 0;
+    int32_t line = 0;
     
     double x = point.GetX();
     double y = point.GetY();
@@ -525,11 +528,11 @@ bool ColorFetchingTransform::transform(Point& point)
         point.SetHeader(m_new_header);
     }
     
-    pixel = (boost::int32_t) std::floor(
+    pixel = (int32_t) std::floor(
         m_inverse_transform[0] 
         + m_inverse_transform[1] * x
         + m_inverse_transform[2] * y );
-    line = (boost::int32_t) std::floor(
+    line = (int32_t) std::floor(
         m_inverse_transform[3] 
         + m_inverse_transform[4] * x
         + m_inverse_transform[5] * y );
@@ -548,7 +551,7 @@ bool ColorFetchingTransform::transform(Point& point)
     boost::array<liblas::Color::value_type, 3> color;
     color.assign(0);
     
-    for( std::vector<boost::int32_t>::size_type i = 0; 
+    for( std::vector<int32_t>::size_type i = 0; 
          i < m_bands.size(); i++ )
          {
              GDALRasterBandH hBand = GDALGetRasterBand( m_ds.get(), m_bands[i] );
diff --git a/src/utility.cpp b/src/utility.cpp
old mode 100644
new mode 100755
index b1643e5..aa2a049
--- a/src/utility.cpp
+++ b/src/utility.cpp
@@ -77,8 +77,8 @@ Summary::Summary(Summary const& other)
     , points_by_return(other.points_by_return)
     , returns_of_given_pulse(other.returns_of_given_pulse)
     , first(other.first)
-    , minimum(other.maximum)
-    , maximum(other.maximum)
+    , minimum(boost::shared_ptr<liblas::Point>(new liblas::Point(*other.minimum)))
+    , maximum(boost::shared_ptr<liblas::Point>(new liblas::Point(*other.maximum)))
     , m_header(other.m_header)
     , bHaveHeader(other.bHaveHeader)
     , bHaveColor(other.bHaveColor)
@@ -98,8 +98,8 @@ Summary& Summary::operator=(Summary const& rhs)
         first = rhs.first;
         points_by_return = rhs.points_by_return;
         returns_of_given_pulse = rhs.returns_of_given_pulse;
-        minimum = rhs.minimum;
-        maximum = rhs.maximum;
+        minimum = boost::shared_ptr<liblas::Point>(new liblas::Point(*rhs.minimum));
+        maximum =  boost::shared_ptr<liblas::Point>(new liblas::Point(*rhs.maximum));
         m_header = rhs.m_header;
         bHaveHeader = rhs.bHaveHeader;
         bHaveColor = rhs.bHaveColor;
@@ -114,8 +114,8 @@ void Summary::AddPoint(liblas::Point const& p)
 
         if (first) {
             
-            minimum = p;
-            maximum = p;
+            minimum = boost::shared_ptr<liblas::Point>(new liblas::Point(p));
+            maximum = boost::shared_ptr<liblas::Point>(new liblas::Point(p));
             
             // We only summarize the base dimensions 
             // but we want to be able to read/set them all.  The 
@@ -126,8 +126,8 @@ void Summary::AddPoint(liblas::Point const& p)
 
             if (bHaveHeader)
             {
-                maximum.SetHeader(&m_header);
-                minimum.SetHeader(&m_header);
+                maximum.get()->SetHeader(&m_header);
+                minimum.get()->SetHeader(&m_header);
             }
 
             liblas::Header const* h = p.GetHeader();
@@ -159,76 +159,76 @@ void Summary::AddPoint(liblas::Point const& p)
             first = false;
         }
         
-        if (p.GetRawX() < minimum.GetRawX() )
-            minimum.SetRawX(p.GetRawX());
-        if (p.GetRawX() > maximum.GetRawX() )
-            maximum.SetRawX(p.GetRawX());
-
-        if (p.GetRawY() < minimum.GetRawY() )
-            minimum.SetRawY(p.GetRawY());
-        if (p.GetRawY() > maximum.GetRawY() )
-            maximum.SetRawY(p.GetRawY());
-
-        if (p.GetRawZ() < minimum.GetRawZ() )
-            minimum.SetRawZ(p.GetRawZ());
-        if (p.GetRawZ() > maximum.GetRawZ() )
-            maximum.SetRawZ(p.GetRawZ());
-
-        if (p.GetIntensity() < minimum.GetIntensity() )
-            minimum.SetIntensity(p.GetIntensity());
-        if (p.GetIntensity() > maximum.GetIntensity() )
-            maximum.SetIntensity(p.GetIntensity());
+        if (p.GetRawX() < minimum.get()->GetRawX() )
+            minimum.get()->SetRawX(p.GetRawX());
+        if (p.GetRawX() > maximum.get()->GetRawX() )
+            maximum.get()->SetRawX(p.GetRawX());
+
+        if (p.GetRawY() < minimum.get()->GetRawY() )
+            minimum.get()->SetRawY(p.GetRawY());
+        if (p.GetRawY() > maximum.get()->GetRawY() )
+            maximum.get()->SetRawY(p.GetRawY());
+
+        if (p.GetRawZ() < minimum.get()->GetRawZ() )
+            minimum.get()->SetRawZ(p.GetRawZ());
+        if (p.GetRawZ() > maximum.get()->GetRawZ() )
+            maximum.get()->SetRawZ(p.GetRawZ());
+
+        if (p.GetIntensity() < minimum.get()->GetIntensity() )
+            minimum.get()->SetIntensity(p.GetIntensity());
+        if (p.GetIntensity() > maximum.get()->GetIntensity() )
+            maximum.get()->SetIntensity(p.GetIntensity());
         
         if (bHaveTime)
         {
-            if (p.GetTime() < minimum.GetTime() )
-                minimum.SetTime(p.GetTime());
-            if (p.GetTime() > maximum.GetTime() )
-                maximum.SetTime(p.GetTime());
+            if (p.GetTime() < minimum.get()->GetTime() )
+                minimum.get()->SetTime(p.GetTime());
+            if (p.GetTime() > maximum.get()->GetTime() )
+                maximum.get()->SetTime(p.GetTime());
         }
 
 
-        if (p.GetReturnNumber() < minimum.GetReturnNumber() )
-            minimum.SetReturnNumber(p.GetReturnNumber());
-        if (p.GetReturnNumber() > maximum.GetReturnNumber() )
-            maximum.SetReturnNumber(p.GetReturnNumber());
+        if (p.GetReturnNumber() < minimum.get()->GetReturnNumber() )
+            minimum.get()->SetReturnNumber(p.GetReturnNumber());
+        if (p.GetReturnNumber() > maximum.get()->GetReturnNumber() )
+            maximum.get()->SetReturnNumber(p.GetReturnNumber());
 
-        if (p.GetNumberOfReturns() < minimum.GetNumberOfReturns() )
-            minimum.SetNumberOfReturns(p.GetNumberOfReturns());
-        if (p.GetNumberOfReturns() > maximum.GetNumberOfReturns() )
-            maximum.SetNumberOfReturns(p.GetNumberOfReturns());
+        if (p.GetNumberOfReturns() < minimum.get()->GetNumberOfReturns() )
+            minimum.get()->SetNumberOfReturns(p.GetNumberOfReturns());
+        if (p.GetNumberOfReturns() > maximum.get()->GetNumberOfReturns() )
+            maximum.get()->SetNumberOfReturns(p.GetNumberOfReturns());
 
-        if (p.GetScanDirection() < minimum.GetScanDirection() )
-            minimum.SetScanDirection(p.GetScanDirection());
-        if (p.GetScanDirection() > maximum.GetScanDirection() )
-            maximum.SetScanDirection(p.GetScanDirection());
+        if (p.GetScanDirection() < minimum.get()->GetScanDirection() )
+            minimum.get()->SetScanDirection(p.GetScanDirection());
+        if (p.GetScanDirection() > maximum.get()->GetScanDirection() )
+            maximum.get()->SetScanDirection(p.GetScanDirection());
 
 
-        if (p.GetFlightLineEdge() < minimum.GetFlightLineEdge() )
-            minimum.SetFlightLineEdge(p.GetFlightLineEdge());
-        if (p.GetFlightLineEdge() > maximum.GetFlightLineEdge() )
-            maximum.SetFlightLineEdge(p.GetFlightLineEdge());
+        if (p.GetFlightLineEdge() < minimum.get()->GetFlightLineEdge() )
+            minimum.get()->SetFlightLineEdge(p.GetFlightLineEdge());
+        if (p.GetFlightLineEdge() > maximum.get()->GetFlightLineEdge() )
+            maximum.get()->SetFlightLineEdge(p.GetFlightLineEdge());
 
-        if (p.GetScanAngleRank() < minimum.GetScanAngleRank() )
-            minimum.SetScanAngleRank(p.GetScanAngleRank());
-        if (p.GetScanAngleRank() > maximum.GetScanAngleRank() )
-            maximum.SetScanAngleRank(p.GetScanAngleRank());
+        if (p.GetScanAngleRank() < minimum.get()->GetScanAngleRank() )
+            minimum.get()->SetScanAngleRank(p.GetScanAngleRank());
+        if (p.GetScanAngleRank() > maximum.get()->GetScanAngleRank() )
+            maximum.get()->SetScanAngleRank(p.GetScanAngleRank());
 
-        if (p.GetUserData() < minimum.GetUserData() )
-            minimum.SetUserData(p.GetUserData());
-        if (p.GetUserData() > maximum.GetUserData() )
-            maximum.SetUserData(p.GetUserData());
+        if (p.GetUserData() < minimum.get()->GetUserData() )
+            minimum.get()->SetUserData(p.GetUserData());
+        if (p.GetUserData() > maximum.get()->GetUserData() )
+            maximum.get()->SetUserData(p.GetUserData());
 
-        if (p.GetPointSourceID() < minimum.GetPointSourceID() )
-            minimum.SetPointSourceID(p.GetPointSourceID());
-        if (p.GetPointSourceID() > maximum.GetPointSourceID() )
-            maximum.SetPointSourceID(p.GetPointSourceID());
+        if (p.GetPointSourceID() < minimum.get()->GetPointSourceID() )
+            minimum.get()->SetPointSourceID(p.GetPointSourceID());
+        if (p.GetPointSourceID() > maximum.get()->GetPointSourceID() )
+            maximum.get()->SetPointSourceID(p.GetPointSourceID());
 
      
         liblas::Classification const& cls = p.GetClassification();
         
-        boost::uint8_t minc = (std::min)(cls.GetClass(), minimum.GetClassification().GetClass());
-        boost::uint8_t maxc = (std::max)(cls.GetClass(), maximum.GetClassification().GetClass());
+        uint8_t minc = (std::min)(cls.GetClass(), minimum.get()->GetClassification().GetClass());
+        uint8_t maxc = (std::max)(cls.GetClass(), maximum.get()->GetClassification().GetClass());
         
         classes[cls.GetClass()]++;
         
@@ -236,21 +236,21 @@ void Summary::AddPoint(liblas::Point const& p)
         if (cls.IsKeyPoint()) keypoint++;
         if (cls.IsSynthetic()) synthetic++;
         
-        if (minc < minimum.GetClassification().GetClass())
-            minimum.SetClassification(liblas::Classification(minc));
-        if (maxc > maximum.GetClassification().GetClass())
-            maximum.SetClassification(liblas::Classification(maxc));
+        if (minc < minimum.get()->GetClassification().GetClass())
+            minimum.get()->SetClassification(liblas::Classification(minc));
+        if (maxc > maximum.get()->GetClassification().GetClass())
+            maximum.get()->SetClassification(liblas::Classification(maxc));
         
         if (bHaveColor)
         {
             liblas::Color const& color = p.GetColor();
-            liblas::Color::value_type min_red = minimum.GetColor().GetRed();
-            liblas::Color::value_type min_green = minimum.GetColor().GetGreen();
-            liblas::Color::value_type min_blue = minimum.GetColor().GetBlue();
+            liblas::Color::value_type min_red = minimum.get()->GetColor().GetRed();
+            liblas::Color::value_type min_green = minimum.get()->GetColor().GetGreen();
+            liblas::Color::value_type min_blue = minimum.get()->GetColor().GetBlue();
 
-            liblas::Color::value_type max_red = maximum.GetColor().GetRed();
-            liblas::Color::value_type max_green = maximum.GetColor().GetGreen();
-            liblas::Color::value_type max_blue = maximum.GetColor().GetBlue();
+            liblas::Color::value_type max_red = maximum.get()->GetColor().GetRed();
+            liblas::Color::value_type max_green = maximum.get()->GetColor().GetGreen();
+            liblas::Color::value_type max_blue = maximum.get()->GetColor().GetBlue();
                         
             bool bSetMinColor = false;
             if (color.GetRed() < min_red)
@@ -290,11 +290,11 @@ void Summary::AddPoint(liblas::Point const& p)
             }
 
             if (bSetMinColor)
-                minimum.SetColor(liblas::Color( min_red, 
+                minimum.get()->SetColor(liblas::Color( min_red, 
                                             min_green,
                                             min_blue));
             if (bSetMaxColor)
-                maximum.SetColor(liblas::Color( max_red, 
+                maximum.get()->SetColor(liblas::Color( max_red, 
                                             max_green, 
                                             max_blue));
         }
@@ -307,8 +307,10 @@ void Summary::AddPoint(liblas::Point const& p)
 void Summary::SetHeader(liblas::Header const& h) 
 {
     m_header = h;
-    minimum.SetHeader(&m_header);
-    maximum.SetHeader(&m_header);
+
+    minimum = boost::shared_ptr<liblas::Point>(new liblas::Point(&m_header));
+    maximum = boost::shared_ptr<liblas::Point>(new liblas::Point(&m_header));
+
     bHaveHeader = true;
 }
 
@@ -322,8 +324,8 @@ ptree Summary::GetPTree() const
 {
     ptree pt;
     
-    ptree pmin = minimum.GetPTree();
-    ptree pmax = maximum.GetPTree();
+    ptree pmin = minimum.get()->GetPTree();
+    ptree pmax = maximum.get()->GetPTree();
     
      
     pt.add_child("minimum", pmin);
@@ -350,7 +352,7 @@ ptree Summary::GetPTree() const
     
     ptree returns;
     bool have_returns = false;
-    for (boost::array<boost::uint32_t,8>::size_type i=0; i < points_by_return.size(); i++) {
+    for (boost::array<uint32_t,8>::size_type i=0; i < points_by_return.size(); i++) {
         if (i == 0) continue;
 
         if (points_by_return[i] != 0)
@@ -371,7 +373,7 @@ ptree Summary::GetPTree() const
     }
     
     ptree pulses;
-    for (boost::array<boost::uint32_t,8>::size_type i=0; i < returns_of_given_pulse.size(); i++) {
+    for (boost::array<uint32_t,8>::size_type i=0; i < returns_of_given_pulse.size(); i++) {
         if (returns_of_given_pulse[i] != 0) {
             pulses.put("id",i);
             pulses.put("count", returns_of_given_pulse[i]);
@@ -396,21 +398,21 @@ std::ostream& operator<<(std::ostream& os, liblas::Summary const& s)
     os << "  Point Inspection Summary" << std::endl;
     os << "---------------------------------------------------------" << std::endl;
 
-    if (tree.get<boost::uint32_t>("summary.points.count") == 0 )
+    if (tree.get<uint32_t>("summary.points.count") == 0 )
     {
         os << "  File has no points ...";
         return os;
     }
-    os << "  Header Point Count: " << tree.get<boost::uint32_t>("summary.header.count") << std::endl;
-    os << "  Actual Point Count: " << tree.get<boost::uint32_t>("summary.points.count") << std::endl;
+    os << "  Header Point Count: " << tree.get<uint32_t>("summary.header.count") << std::endl;
+    os << "  Actual Point Count: " << tree.get<uint32_t>("summary.points.count") << std::endl;
     
     os << std::endl;
     os << "  Minimum and Maximum Attributes (min,max)" << std::endl;
     os << "---------------------------------------------------------" << std::endl;
     
-    boost::uint32_t x_precision = 6;
-    boost::uint32_t y_precision = 6;
-    boost::uint32_t z_precision = 6;
+    uint32_t x_precision = 6;
+    uint32_t y_precision = 6;
+    uint32_t z_precision = 6;
 
     try {
         double x_scale = tree.get<double>("summary.header.scale.x");
@@ -464,52 +466,52 @@ std::ostream& operator<<(std::ostream& os, liblas::Summary const& s)
 
     os << std::endl;
     os.setf(std::ios::floatfield);
-    os << "  Return Number:\t" << tree.get<boost::uint32_t>("summary.points.minimum.returnnumber") << ", "
-       << tree.get<boost::uint32_t>("summary.points.maximum.returnnumber");
+    os << "  Return Number:\t" << tree.get<uint32_t>("summary.points.minimum.returnnumber") << ", "
+       << tree.get<uint32_t>("summary.points.maximum.returnnumber");
 
     os << std::endl;
-    os << "  Return Count:\t\t" << tree.get<boost::uint32_t>("summary.points.minimum.numberofreturns") << ", "
-       << tree.get<boost::uint32_t>("summary.points.maximum.numberofreturns");
+    os << "  Return Count:\t\t" << tree.get<uint32_t>("summary.points.minimum.numberofreturns") << ", "
+       << tree.get<uint32_t>("summary.points.maximum.numberofreturns");
 
     os << std::endl;
-    os << "  Flightline Edge:\t" << tree.get<boost::uint32_t>("summary.points.minimum.flightlineedge") << ", "
-       << tree.get<boost::uint32_t>("summary.points.maximum.flightlineedge");
+    os << "  Flightline Edge:\t" << tree.get<uint32_t>("summary.points.minimum.flightlineedge") << ", "
+       << tree.get<uint32_t>("summary.points.maximum.flightlineedge");
 
     os << std::endl;
-    os << "  Intensity:\t\t" << tree.get<boost::uint32_t>("summary.points.minimum.intensity") << ", "
-       << tree.get<boost::uint32_t>("summary.points.maximum.intensity");
+    os << "  Intensity:\t\t" << tree.get<uint32_t>("summary.points.minimum.intensity") << ", "
+       << tree.get<uint32_t>("summary.points.maximum.intensity");
 
     os << std::endl;
-    os << "  Scan Direction Flag:\t" << tree.get<boost::int32_t>("summary.points.minimum.scandirection") << ", "
-       << tree.get<boost::int32_t>("summary.points.maximum.scandirection");
+    os << "  Scan Direction Flag:\t" << tree.get<int32_t>("summary.points.minimum.scandirection") << ", "
+       << tree.get<int32_t>("summary.points.maximum.scandirection");
 
     os << std::endl;
-    os << "  Scan Angle Rank:\t" << tree.get<boost::int32_t>("summary.points.minimum.scanangle") << ", "
-       << tree.get<boost::int32_t>("summary.points.maximum.scanangle");
+    os << "  Scan Angle Rank:\t" << tree.get<int32_t>("summary.points.minimum.scanangle") << ", "
+       << tree.get<int32_t>("summary.points.maximum.scanangle");
 
     os << std::endl;
-    os << "  Classification:\t" << tree.get<boost::int32_t>("summary.points.minimum.classification.id") << ", "
-       << tree.get<boost::int32_t>("summary.points.maximum.classification.id");
+    os << "  Classification:\t" << tree.get<int32_t>("summary.points.minimum.classification.id") << ", "
+       << tree.get<int32_t>("summary.points.maximum.classification.id");
 
     os << std::endl;
-    os << "  Point Source Id:\t" << tree.get<boost::uint32_t>("summary.points.minimum.pointsourceid") << ", "
-       << tree.get<boost::uint32_t>("summary.points.maximum.pointsourceid");
+    os << "  Point Source Id:\t" << tree.get<uint32_t>("summary.points.minimum.pointsourceid") << ", "
+       << tree.get<uint32_t>("summary.points.maximum.pointsourceid");
 
     os << std::endl;
-    os << "  User Data:\t\t" << tree.get<boost::uint32_t>("summary.points.minimum.userdata") << ", "
-       << tree.get<boost::uint32_t>("summary.points.maximum.userdata");
+    os << "  User Data:\t\t" << tree.get<uint32_t>("summary.points.minimum.userdata") << ", "
+       << tree.get<uint32_t>("summary.points.maximum.userdata");
 
     os << std::endl;
     os << "  Minimum Color (RGB):\t" 
-       << tree.get<boost::uint32_t>("summary.points.minimum.color.red") << " "
-       << tree.get<boost::uint32_t>("summary.points.minimum.color.green") << " "
-       << tree.get<boost::uint32_t>("summary.points.minimum.color.blue") << " ";
+       << tree.get<uint32_t>("summary.points.minimum.color.red") << " "
+       << tree.get<uint32_t>("summary.points.minimum.color.green") << " "
+       << tree.get<uint32_t>("summary.points.minimum.color.blue") << " ";
 
     os << std::endl;
     os << "  Maximum Color (RGB):\t" 
-       << tree.get<boost::uint32_t>("summary.points.maximum.color.red") << " "
-       << tree.get<boost::uint32_t>("summary.points.maximum.color.green") << " "
-       << tree.get<boost::uint32_t>("summary.points.maximum.color.blue") << " ";
+       << tree.get<uint32_t>("summary.points.maximum.color.red") << " "
+       << tree.get<uint32_t>("summary.points.maximum.color.green") << " "
+       << tree.get<uint32_t>("summary.points.maximum.color.blue") << " ";
 
     os << std::endl;
     os << std::endl;
@@ -519,8 +521,8 @@ std::ostream& operator<<(std::ostream& os, liblas::Summary const& s)
     BOOST_FOREACH(ptree::value_type &v,
             tree.get_child("summary.points.points_by_return"))
     {
-        boost::uint32_t i = v.second.get<boost::uint32_t>("id");
-        boost::uint32_t count = v.second.get<boost::uint32_t>("count");
+        uint32_t i = v.second.get<uint32_t>("id");
+        uint32_t count = v.second.get<uint32_t>("count");
         os << "\t(" << i << ") " << count;
     }
     
@@ -532,8 +534,8 @@ std::ostream& operator<<(std::ostream& os, liblas::Summary const& s)
     BOOST_FOREACH(ptree::value_type &v,
             tree.get_child("summary.points.returns_of_given_pulse"))
     {
-        boost::uint32_t i = v.second.get<boost::uint32_t>("id");
-        boost::uint32_t count = v.second.get<boost::uint32_t>("count");
+        uint32_t i = v.second.get<uint32_t>("id");
+        uint32_t count = v.second.get<uint32_t>("count");
         os << "\t(" << i << ") " << count;
     }     
 
@@ -546,16 +548,16 @@ std::ostream& operator<<(std::ostream& os, liblas::Summary const& s)
     BOOST_FOREACH(ptree::value_type &v,
             tree.get_child("summary.points.classification"))
     {
-        boost::uint32_t i = v.second.get<boost::uint32_t>("id");
-        boost::uint32_t count = v.second.get<boost::uint32_t>("count");
+        uint32_t i = v.second.get<uint32_t>("id");
+        uint32_t count = v.second.get<uint32_t>("count");
         std::string name = v.second.get<std::string>("name");
         os << "\t" << count << " " << name << " (" << i << ") " << std::endl;;
     }
 
     os << "  -------------------------------------------------------" << std::endl;
-    os << "  \t" << tree.get<boost::uint32_t>("summary.points.encoding.withheld") << " withheld" << std::endl;
-    os << "  \t" << tree.get<boost::uint32_t>("summary.points.encoding.keypoint") << " keypoint" << std::endl;
-    os << "  \t" << tree.get<boost::uint32_t>("summary.points.encoding.synthetic") << " synthetic" << std::endl;
+    os << "  \t" << tree.get<uint32_t>("summary.points.encoding.withheld") << " withheld" << std::endl;
+    os << "  \t" << tree.get<uint32_t>("summary.points.encoding.keypoint") << " keypoint" << std::endl;
+    os << "  \t" << tree.get<uint32_t>("summary.points.encoding.synthetic") << " synthetic" << std::endl;
     os << "  -------------------------------------------------------" << std::endl;
 
     return os;
@@ -581,8 +583,8 @@ CoordinateSummary::CoordinateSummary(CoordinateSummary const& other)
     , points_by_return(other.points_by_return)
     , returns_of_given_pulse(other.returns_of_given_pulse)
     , first(other.first)
-    , minimum(other.minimum)
-    , maximum(other.maximum)
+    , minimum(boost::shared_ptr<liblas::Point>(new liblas::Point(*other.minimum)))
+    , maximum(boost::shared_ptr<liblas::Point>(new liblas::Point(*other.maximum)))
     , m_header(other.m_header)
     , bHaveHeader(other.bHaveHeader)
     , bHaveColor(other.bHaveColor)
@@ -599,8 +601,8 @@ CoordinateSummary& CoordinateSummary::operator=(CoordinateSummary const& rhs)
         first = rhs.first;
         points_by_return = rhs.points_by_return;
         returns_of_given_pulse = rhs.returns_of_given_pulse;
-        minimum = rhs.minimum;
-        maximum = rhs.maximum;
+        minimum = boost::shared_ptr<liblas::Point>(new liblas::Point(*rhs.minimum));
+        maximum = boost::shared_ptr<liblas::Point>(new liblas::Point(*rhs.maximum));
         m_header = rhs.m_header;
         bHaveHeader = rhs.bHaveHeader;
         bHaveColor = rhs.bHaveColor;
@@ -614,13 +616,13 @@ void CoordinateSummary::AddPoint(liblas::Point const& p)
         count++;
 
         if (first) {
-            minimum = p;
-            maximum = p;
-
+            minimum = boost::shared_ptr<liblas::Point>(new liblas::Point(p));
+            maximum = boost::shared_ptr<liblas::Point>(new liblas::Point(p));
+            
             if (bHaveHeader)
             {
-                maximum.SetHeader(&m_header);
-                minimum.SetHeader(&m_header);
+                maximum.get()->SetHeader(&m_header);
+                minimum.get()->SetHeader(&m_header);
             }
             
             // We only summarize the base dimensions 
@@ -646,20 +648,20 @@ void CoordinateSummary::AddPoint(liblas::Point const& p)
             first = false;
         }
         
-        if (p.GetRawX() < minimum.GetRawX() )
-            minimum.SetRawX(p.GetRawX());
-        if (p.GetRawX() > maximum.GetRawX() )
-            maximum.SetRawX(p.GetRawX());
+        if (p.GetRawX() < minimum.get()->GetRawX() )
+            minimum.get()->SetRawX(p.GetRawX());
+        if (p.GetRawX() > maximum.get()->GetRawX() )
+            maximum.get()->SetRawX(p.GetRawX());
 
-        if (p.GetRawY() < minimum.GetRawY() )
-            minimum.SetRawY(p.GetRawY());
-        if (p.GetRawY() > maximum.GetRawY() )
-            maximum.SetRawY(p.GetRawY());
+        if (p.GetRawY() < minimum.get()->GetRawY() )
+            minimum.get()->SetRawY(p.GetRawY());
+        if (p.GetRawY() > maximum.get()->GetRawY() )
+            maximum.get()->SetRawY(p.GetRawY());
 
-        if (p.GetRawZ() < minimum.GetRawZ() )
-            minimum.SetRawZ(p.GetRawZ());
-        if (p.GetRawZ() > maximum.GetRawZ() )
-            maximum.SetRawZ(p.GetRawZ());
+        if (p.GetRawZ() < minimum.get()->GetRawZ() )
+            minimum.get()->SetRawZ(p.GetRawZ());
+        if (p.GetRawZ() > maximum.get()->GetRawZ() )
+            maximum.get()->SetRawZ(p.GetRawZ());
 
         points_by_return[p.GetReturnNumber()]++;
         returns_of_given_pulse[p.GetNumberOfReturns()]++;    
@@ -668,8 +670,8 @@ void CoordinateSummary::AddPoint(liblas::Point const& p)
 void CoordinateSummary::SetHeader(liblas::Header const& h) 
 {
     m_header = h;
-    minimum.SetHeader(&m_header);
-    maximum.SetHeader(&m_header);
+    minimum = boost::shared_ptr<liblas::Point>(new liblas::Point(&m_header));
+    maximum = boost::shared_ptr<liblas::Point>(new liblas::Point(&m_header));
     bHaveHeader = true;
 }
 
@@ -677,8 +679,8 @@ ptree CoordinateSummary::GetPTree() const
 {
     ptree pt;
     
-    ptree pmin = minimum.GetPTree();
-    ptree pmax = maximum.GetPTree();
+    ptree pmin = minimum.get()->GetPTree();
+    ptree pmax = maximum.get()->GetPTree();
     
      
     pt.add_child("minimum", pmin);
@@ -686,7 +688,7 @@ ptree CoordinateSummary::GetPTree() const
 
     ptree returns;
     bool have_returns = false;
-    for (boost::array<boost::uint32_t,8>::size_type i=0; i < points_by_return.size(); i++) {
+    for (boost::array<uint32_t,8>::size_type i=0; i < points_by_return.size(); i++) {
         if (i == 0) continue;
 
         if (points_by_return[i] != 0)
@@ -707,7 +709,7 @@ ptree CoordinateSummary::GetPTree() const
     }
     
     ptree pulses;
-    for (boost::array<boost::uint32_t,8>::size_type i=0; i < returns_of_given_pulse.size(); i++) {
+    for (boost::array<uint32_t,8>::size_type i=0; i < returns_of_given_pulse.size(); i++) {
         if (returns_of_given_pulse[i] != 0) {
             pulses.put("id",i);
             pulses.put("count", returns_of_given_pulse[i]);
@@ -731,7 +733,7 @@ bool CoordinateSummary::filter(liblas::Point const& p)
 }
 
 
-boost::uint32_t GetStreamPrecision(double scale)
+uint32_t GetStreamPrecision(double scale)
 {
     double frac = 0;
     double integer = 0;
@@ -739,7 +741,7 @@ boost::uint32_t GetStreamPrecision(double scale)
     frac = std::modf(scale, &integer);
     double precision = std::fabs(std::floor(std::log10(frac)));
     
-    boost::uint32_t output = static_cast<boost::uint32_t>(precision);
+    uint32_t output = static_cast<uint32_t>(precision);
     return output;
 }
 } // namespace liblas
diff --git a/src/variablerecord.cpp b/src/variablerecord.cpp
old mode 100644
new mode 100755
index 0e95c6e..e8f558f
--- a/src/variablerecord.cpp
+++ b/src/variablerecord.cpp
@@ -237,9 +237,9 @@ std::ostream& operator<<(std::ostream& os, liblas::VariableRecord const& v)
              << tree.get<std::string>("description") 
              <<"'" 
              << std::endl;
-    os << "    ID: " << tree.get<boost::uint32_t>("id")
-             << " Length: " << tree.get<boost::uint32_t>("length")
-             << " Total Size: " << tree.get<boost::uint32_t>("total_length")
+    os << "    ID: " << tree.get<uint32_t>("id")
+             << " Length: " << tree.get<uint32_t>("length")
+             << " Total Size: " << tree.get<uint32_t>("total_length")
              << std::endl;
         
     return os;
diff --git a/src/version.cpp b/src/version.cpp
old mode 100644
new mode 100755
diff --git a/src/writer.cpp b/src/writer.cpp
old mode 100644
new mode 100755
diff --git a/test/CMakeFiles/CMakeDirectoryInformation.cmake b/test/CMakeFiles/CMakeDirectoryInformation.cmake
deleted file mode 100644
index fecdbe6..0000000
--- a/test/CMakeFiles/CMakeDirectoryInformation.cmake
+++ /dev/null
@@ -1,22 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# Relative path conversion top directories.
-SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/hobu/foo/clean")
-SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/hobu/foo/clean")
-
-# Force unix paths in dependencies.
-SET(CMAKE_FORCE_UNIX_PATHS 1)
-
-# The C and CXX include file search paths:
-SET(CMAKE_C_INCLUDE_PATH
-  "/usr/local/include"
-  )
-SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
-SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
-
-# The C and CXX include file regular expressions for this directory.
-SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
-SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
-SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
-SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/test/CMakeFiles/progress.marks b/test/CMakeFiles/progress.marks
deleted file mode 100644
index ea90ee3..0000000
--- a/test/CMakeFiles/progress.marks
+++ /dev/null
@@ -1 +0,0 @@
-45
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
old mode 100644
new mode 100755
diff --git a/test/CTestTestfile.cmake b/test/CTestTestfile.cmake
deleted file mode 100644
index 1a1f5c1..0000000
--- a/test/CTestTestfile.cmake
+++ /dev/null
@@ -1,7 +0,0 @@
-# CMake generated Testfile for 
-# Source directory: /Users/hobu/foo/clean/test
-# Build directory: /Users/hobu/foo/clean/test
-# 
-# This file includes the relevent testing commands required for 
-# testing this directory and lists subdirectories to be tested as well.
-SUBDIRS(unit)
diff --git a/test/Makefile b/test/Makefile
deleted file mode 100644
index fa32a92..0000000
--- a/test/Makefile
+++ /dev/null
@@ -1,200 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# Default target executed when no arguments are given to make.
-default_target: all
-.PHONY : default_target
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-#=============================================================================
-# Targets provided globally by CMake.
-
-# Special rule for the target edit_cache
-edit_cache:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
-.PHONY : edit_cache
-
-# Special rule for the target edit_cache
-edit_cache/fast: edit_cache
-.PHONY : edit_cache/fast
-
-# Special rule for the target install
-install: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
-.PHONY : install
-
-# Special rule for the target install
-install/fast: preinstall/fast
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
-.PHONY : install/fast
-
-# Special rule for the target install/local
-install/local: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
-.PHONY : install/local
-
-# Special rule for the target install/local
-install/local/fast: install/local
-.PHONY : install/local/fast
-
-# Special rule for the target install/strip
-install/strip: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
-.PHONY : install/strip
-
-# Special rule for the target install/strip
-install/strip/fast: install/strip
-.PHONY : install/strip/fast
-
-# Special rule for the target list_install_components
-list_install_components:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
-.PHONY : list_install_components
-
-# Special rule for the target list_install_components
-list_install_components/fast: list_install_components
-.PHONY : list_install_components/fast
-
-# Special rule for the target package
-package: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..."
-	cd /Users/hobu/foo/clean && "/Applications/CMake 2.8-6.app/Contents/bin/cpack" --config ./CPackConfig.cmake
-.PHONY : package
-
-# Special rule for the target package
-package/fast: package
-.PHONY : package/fast
-
-# Special rule for the target package_source
-package_source:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..."
-	cd /Users/hobu/foo/clean && "/Applications/CMake 2.8-6.app/Contents/bin/cpack" --config ./CPackSourceConfig.cmake /Users/hobu/foo/clean/CPackSourceConfig.cmake
-.PHONY : package_source
-
-# Special rule for the target package_source
-package_source/fast: package_source
-.PHONY : package_source/fast
-
-# Special rule for the target rebuild_cache
-rebuild_cache:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
-.PHONY : rebuild_cache
-
-# Special rule for the target rebuild_cache
-rebuild_cache/fast: rebuild_cache
-.PHONY : rebuild_cache/fast
-
-# Special rule for the target test
-test:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running tests..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/ctest" --force-new-ctest-process $(ARGS)
-.PHONY : test
-
-# Special rule for the target test
-test/fast: test
-.PHONY : test/fast
-
-# The main all target
-all: cmake_check_build_system
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles /Users/hobu/foo/clean/test/CMakeFiles/progress.marks
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 test/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : all
-
-# The main clean target
-clean:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 test/clean
-.PHONY : clean
-
-# The main clean target
-clean/fast: clean
-.PHONY : clean/fast
-
-# Prepare targets for installation.
-preinstall: all
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 test/preinstall
-.PHONY : preinstall
-
-# Prepare targets for installation.
-preinstall/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 test/preinstall
-.PHONY : preinstall/fast
-
-# clear depends
-depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
-.PHONY : depend
-
-# Help Target
-help:
-	@echo "The following are some of the valid targets for this Makefile:"
-	@echo "... all (the default if no target is provided)"
-	@echo "... clean"
-	@echo "... depend"
-	@echo "... edit_cache"
-	@echo "... install"
-	@echo "... install/local"
-	@echo "... install/strip"
-	@echo "... list_install_components"
-	@echo "... package"
-	@echo "... package_source"
-	@echo "... rebuild_cache"
-	@echo "... test"
-.PHONY : help
-
-
-
-#=============================================================================
-# Special targets to cleanup operation of make.
-
-# Special rule to run CMake to check the build system integrity.
-# No rule that depends on this can have commands that come from listfiles
-# because they might be regenerated.
-cmake_check_build_system:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
-.PHONY : cmake_check_build_system
-
diff --git a/test/cmake_install.cmake b/test/cmake_install.cmake
deleted file mode 100644
index 9bccd8a..0000000
--- a/test/cmake_install.cmake
+++ /dev/null
@@ -1,35 +0,0 @@
-# Install script for directory: /Users/hobu/foo/clean/test
-
-# Set the install prefix
-IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
-  SET(CMAKE_INSTALL_PREFIX "/usr/local")
-ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
-STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
-
-# Set the install configuration name.
-IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
-  IF(BUILD_TYPE)
-    STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
-           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
-  ELSE(BUILD_TYPE)
-    SET(CMAKE_INSTALL_CONFIG_NAME "Release")
-  ENDIF(BUILD_TYPE)
-  MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
-ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
-
-# Set the component getting installed.
-IF(NOT CMAKE_INSTALL_COMPONENT)
-  IF(COMPONENT)
-    MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
-    SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
-  ELSE(COMPONENT)
-    SET(CMAKE_INSTALL_COMPONENT)
-  ENDIF(COMPONENT)
-ENDIF(NOT CMAKE_INSTALL_COMPONENT)
-
-IF(NOT CMAKE_INSTALL_LOCAL_ONLY)
-  # Include the install script for each subdirectory.
-  INCLUDE("/Users/hobu/foo/clean/test/unit/cmake_install.cmake")
-
-ENDIF(NOT CMAKE_INSTALL_LOCAL_ONLY)
-
diff --git a/test/data/1.0_0.las b/test/data/1.0_0.las
old mode 100644
new mode 100755
diff --git a/test/data/1.0_1.las b/test/data/1.0_1.las
old mode 100644
new mode 100755
diff --git a/test/data/1.1_0.las b/test/data/1.1_0.las
old mode 100644
new mode 100755
diff --git a/test/data/1.1_1.las b/test/data/1.1_1.las
old mode 100644
new mode 100755
diff --git a/test/data/1.2-with-color.las b/test/data/1.2-with-color.las
old mode 100644
new mode 100755
diff --git a/test/data/1.2-with-color.laz b/test/data/1.2-with-color.laz
old mode 100644
new mode 100755
diff --git a/test/data/1.2_0.las b/test/data/1.2_0.las
old mode 100644
new mode 100755
diff --git a/test/data/1.2_1.las b/test/data/1.2_1.las
old mode 100644
new mode 100755
diff --git a/test/data/1.2_2.las b/test/data/1.2_2.las
old mode 100644
new mode 100755
diff --git a/test/data/1.2_3.las b/test/data/1.2_3.las
old mode 100644
new mode 100755
diff --git a/test/data/TO_core_last_clip.las b/test/data/TO_core_last_clip.las
old mode 100644
new mode 100755
diff --git a/test/data/autzen.jpg b/test/data/autzen.jpg
old mode 100644
new mode 100755
diff --git a/test/data/autzen.jpg.aux.xml b/test/data/autzen.jpg.aux.xml
old mode 100644
new mode 100755
diff --git a/test/data/autzen.las b/test/data/autzen.las
old mode 100644
new mode 100755
diff --git a/test/data/autzen.wld b/test/data/autzen.wld
old mode 100644
new mode 100755
diff --git a/test/data/bad_points_1.1.las b/test/data/bad_points_1.1.las
old mode 100644
new mode 100755
diff --git a/test/data/certainty3d-color-utm-feet-navd88.las b/test/data/certainty3d-color-utm-feet-navd88.las
old mode 100644
new mode 100755
diff --git a/test/data/lots_of_vlr.las b/test/data/lots_of_vlr.las
old mode 100644
new mode 100755
diff --git a/test/data/make_bad_points.py b/test/data/make_bad_points.py
old mode 100644
new mode 100755
diff --git a/test/data/srs.las b/test/data/srs.las
old mode 100644
new mode 100755
diff --git a/test/data/srs_utm17.las b/test/data/srs_utm17.las
old mode 100644
new mode 100755
diff --git a/test/data/srs_vertcs.las b/test/data/srs_vertcs.las
old mode 100644
new mode 100755
diff --git a/test/sample/CMakeLists.txt b/test/sample/CMakeLists.txt
old mode 100644
new mode 100755
diff --git a/test/sample/files.cpp b/test/sample/files.cpp
old mode 100644
new mode 100755
diff --git a/test/sample/files.vcproj b/test/sample/files.vcproj
old mode 100644
new mode 100755
diff --git a/test/sample/liblas.vsprops b/test/sample/liblas.vsprops
old mode 100644
new mode 100755
diff --git a/test/sample/liblas_sample.sln b/test/sample/liblas_sample.sln
old mode 100644
new mode 100755
diff --git a/test/sample/read.cpp b/test/sample/read.cpp
old mode 100644
new mode 100755
diff --git a/test/sample/read.vcproj b/test/sample/read.vcproj
old mode 100644
new mode 100755
diff --git a/test/sample/update.cpp b/test/sample/update.cpp
old mode 100644
new mode 100755
index 0fe0c73..3cdbee8
--- a/test/sample/update.cpp
+++ b/test/sample/update.cpp
@@ -12,7 +12,6 @@
 #include <liblas/laserror.hpp>
 #include <liblas/laswriter.hpp>
 #include <liblas/lasfile.hpp>
-#include <liblas/guid.hpp>
 
 #include <string>
 #include <stack>
diff --git a/test/sample/update.vcproj b/test/sample/update.vcproj
old mode 100644
new mode 100755
diff --git a/test/sample/utility.hpp b/test/sample/utility.hpp
old mode 100644
new mode 100755
diff --git a/test/sample/write.cpp b/test/sample/write.cpp
old mode 100644
new mode 100755
index 57582f3..b6a6b62
--- a/test/sample/write.cpp
+++ b/test/sample/write.cpp
@@ -13,7 +13,6 @@
 #include <liblas/lasheader.hpp>
 #include <liblas/laspoint.hpp>
 #include <liblas/laswriter.hpp>
-#include <liblas/guid.hpp>
 // std
 #include <algorithm>
 #include <exception>
diff --git a/test/sample/write.vcproj b/test/sample/write.vcproj
old mode 100644
new mode 100755
diff --git a/test/unit/CMakeFiles/CMakeDirectoryInformation.cmake b/test/unit/CMakeFiles/CMakeDirectoryInformation.cmake
deleted file mode 100644
index ce09308..0000000
--- a/test/unit/CMakeFiles/CMakeDirectoryInformation.cmake
+++ /dev/null
@@ -1,24 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# Relative path conversion top directories.
-SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/hobu/foo/clean")
-SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/hobu/foo/clean")
-
-# Force unix paths in dependencies.
-SET(CMAKE_FORCE_UNIX_PATHS 1)
-
-# The C and CXX include file search paths:
-SET(CMAKE_C_INCLUDE_PATH
-  "test/unit/."
-  "test/unit/../../include"
-  "/usr/local/include"
-  )
-SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
-SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
-
-# The C and CXX include file regular expressions for this directory.
-SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
-SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
-SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
-SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/test/unit/CMakeFiles/liblas_test.dir/DependInfo.cmake b/test/unit/CMakeFiles/liblas_test.dir/DependInfo.cmake
deleted file mode 100644
index ef35826..0000000
--- a/test/unit/CMakeFiles/liblas_test.dir/DependInfo.cmake
+++ /dev/null
@@ -1,33 +0,0 @@
-# The set of languages for which implicit dependencies are needed:
-SET(CMAKE_DEPENDS_LANGUAGES
-  "CXX"
-  )
-# The set of files for implicit dependencies of each language:
-SET(CMAKE_DEPENDS_CHECK_CXX
-  "/Users/hobu/foo/clean/test/unit/bounds_test.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/common.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/common.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/error_test.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/guid_test.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/header_test.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/liblas_test_suite.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/point_test.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/reader_iterator_test.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/reader_test.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/spatialreference_test.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/transform_test.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/variablerecord_test.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/writer_test.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/zipreader_test.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o"
-  "/Users/hobu/foo/clean/test/unit/zipwriter_test.cpp" "/Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o"
-  )
-SET(CMAKE_CXX_COMPILER_ID "GNU")
-
-# Preprocessor definitions for this target.
-SET(CMAKE_TARGET_DEFINITIONS
-  "LAS_DLL_IMPORT"
-  )
-
-# Targets to which this target links.
-SET(CMAKE_TARGET_LINKED_INFO_FILES
-  "/Users/hobu/foo/clean/src/CMakeFiles/las.dir/DependInfo.cmake"
-  )
diff --git a/test/unit/CMakeFiles/liblas_test.dir/build.make b/test/unit/CMakeFiles/liblas_test.dir/build.make
deleted file mode 100644
index 023f005..0000000
--- a/test/unit/CMakeFiles/liblas_test.dir/build.make
+++ /dev/null
@@ -1,469 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-# Include any dependencies generated for this target.
-include test/unit/CMakeFiles/liblas_test.dir/depend.make
-
-# Include the progress variables for this target.
-include test/unit/CMakeFiles/liblas_test.dir/progress.make
-
-# Include the compile flags for this target's objects.
-include test/unit/CMakeFiles/liblas_test.dir/flags.make
-
-test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o: test/unit/bounds_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_1)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/bounds_test.cpp.o -c /Users/hobu/foo/clean/test/unit/bounds_test.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/bounds_test.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/bounds_test.cpp > CMakeFiles/liblas_test.dir/bounds_test.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/bounds_test.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/bounds_test.cpp -o CMakeFiles/liblas_test.dir/bounds_test.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/common.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/common.cpp.o: test/unit/common.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_2)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/common.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/common.cpp.o -c /Users/hobu/foo/clean/test/unit/common.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/common.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/common.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/common.cpp > CMakeFiles/liblas_test.dir/common.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/common.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/common.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/common.cpp -o CMakeFiles/liblas_test.dir/common.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/common.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/common.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/common.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/common.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/common.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/common.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/common.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/common.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o: test/unit/error_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_3)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/error_test.cpp.o -c /Users/hobu/foo/clean/test/unit/error_test.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/error_test.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/error_test.cpp > CMakeFiles/liblas_test.dir/error_test.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/error_test.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/error_test.cpp -o CMakeFiles/liblas_test.dir/error_test.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o: test/unit/guid_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_4)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/guid_test.cpp.o -c /Users/hobu/foo/clean/test/unit/guid_test.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/guid_test.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/guid_test.cpp > CMakeFiles/liblas_test.dir/guid_test.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/guid_test.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/guid_test.cpp -o CMakeFiles/liblas_test.dir/guid_test.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o: test/unit/header_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_5)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/header_test.cpp.o -c /Users/hobu/foo/clean/test/unit/header_test.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/header_test.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/header_test.cpp > CMakeFiles/liblas_test.dir/header_test.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/header_test.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/header_test.cpp -o CMakeFiles/liblas_test.dir/header_test.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o: test/unit/point_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_6)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/point_test.cpp.o -c /Users/hobu/foo/clean/test/unit/point_test.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/point_test.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/point_test.cpp > CMakeFiles/liblas_test.dir/point_test.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/point_test.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/point_test.cpp -o CMakeFiles/liblas_test.dir/point_test.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o: test/unit/reader_iterator_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_7)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o -c /Users/hobu/foo/clean/test/unit/reader_iterator_test.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/reader_iterator_test.cpp > CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/reader_iterator_test.cpp -o CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o: test/unit/reader_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_8)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/reader_test.cpp.o -c /Users/hobu/foo/clean/test/unit/reader_test.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/reader_test.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/reader_test.cpp > CMakeFiles/liblas_test.dir/reader_test.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/reader_test.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/reader_test.cpp -o CMakeFiles/liblas_test.dir/reader_test.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o: test/unit/spatialreference_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_9)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o -c /Users/hobu/foo/clean/test/unit/spatialreference_test.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/spatialreference_test.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/spatialreference_test.cpp > CMakeFiles/liblas_test.dir/spatialreference_test.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/spatialreference_test.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/spatialreference_test.cpp -o CMakeFiles/liblas_test.dir/spatialreference_test.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o: test/unit/transform_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_10)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/transform_test.cpp.o -c /Users/hobu/foo/clean/test/unit/transform_test.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/transform_test.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/transform_test.cpp > CMakeFiles/liblas_test.dir/transform_test.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/transform_test.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/transform_test.cpp -o CMakeFiles/liblas_test.dir/transform_test.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o: test/unit/variablerecord_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_11)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o -c /Users/hobu/foo/clean/test/unit/variablerecord_test.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/variablerecord_test.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/variablerecord_test.cpp > CMakeFiles/liblas_test.dir/variablerecord_test.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/variablerecord_test.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/variablerecord_test.cpp -o CMakeFiles/liblas_test.dir/variablerecord_test.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o: test/unit/writer_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_12)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/writer_test.cpp.o -c /Users/hobu/foo/clean/test/unit/writer_test.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/writer_test.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/writer_test.cpp > CMakeFiles/liblas_test.dir/writer_test.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/writer_test.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/writer_test.cpp -o CMakeFiles/liblas_test.dir/writer_test.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o: test/unit/zipreader_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_13)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/zipreader_test.cpp.o -c /Users/hobu/foo/clean/test/unit/zipreader_test.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/zipreader_test.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/zipreader_test.cpp > CMakeFiles/liblas_test.dir/zipreader_test.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/zipreader_test.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/zipreader_test.cpp -o CMakeFiles/liblas_test.dir/zipreader_test.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o: test/unit/zipwriter_test.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_14)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o -c /Users/hobu/foo/clean/test/unit/zipwriter_test.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/zipwriter_test.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/zipwriter_test.cpp > CMakeFiles/liblas_test.dir/zipwriter_test.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/zipwriter_test.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/zipwriter_test.cpp -o CMakeFiles/liblas_test.dir/zipwriter_test.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o
-
-test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o: test/unit/CMakeFiles/liblas_test.dir/flags.make
-test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o: test/unit/liblas_test_suite.cpp
-	$(CMAKE_COMMAND) -E cmake_progress_report /Users/hobu/foo/clean/CMakeFiles $(CMAKE_PROGRESS_15)
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++   $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o -c /Users/hobu/foo/clean/test/unit/liblas_test_suite.cpp
-
-test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.i: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.i"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/hobu/foo/clean/test/unit/liblas_test_suite.cpp > CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.i
-
-test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.s: cmake_force
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.s"
-	cd /Users/hobu/foo/clean/test/unit && /usr/bin/c++  $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/hobu/foo/clean/test/unit/liblas_test_suite.cpp -o CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.s
-
-test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o.requires:
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o.requires
-
-test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o.provides: test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o.requires
-	$(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o.provides.build
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o.provides
-
-test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o.provides.build: test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o
-
-# Object files for target liblas_test
-liblas_test_OBJECTS = \
-"CMakeFiles/liblas_test.dir/bounds_test.cpp.o" \
-"CMakeFiles/liblas_test.dir/common.cpp.o" \
-"CMakeFiles/liblas_test.dir/error_test.cpp.o" \
-"CMakeFiles/liblas_test.dir/guid_test.cpp.o" \
-"CMakeFiles/liblas_test.dir/header_test.cpp.o" \
-"CMakeFiles/liblas_test.dir/point_test.cpp.o" \
-"CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o" \
-"CMakeFiles/liblas_test.dir/reader_test.cpp.o" \
-"CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o" \
-"CMakeFiles/liblas_test.dir/transform_test.cpp.o" \
-"CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o" \
-"CMakeFiles/liblas_test.dir/writer_test.cpp.o" \
-"CMakeFiles/liblas_test.dir/zipreader_test.cpp.o" \
-"CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o" \
-"CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o"
-
-# External object files for target liblas_test
-liblas_test_EXTERNAL_OBJECTS =
-
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/common.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o
-bin/Release/liblas_test: bin/Release/liblas.2.2.0.dylib
-bin/Release/liblas_test: /usr/local/lib/libboost_program_options.a
-bin/Release/liblas_test: /usr/local/lib/libboost_thread.a
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/build.make
-bin/Release/liblas_test: test/unit/CMakeFiles/liblas_test.dir/link.txt
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX executable ../../bin/Release/liblas_test"
-	cd /Users/hobu/foo/clean/test/unit && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/liblas_test.dir/link.txt --verbose=$(VERBOSE)
-
-# Rule to build all files generated by this target.
-test/unit/CMakeFiles/liblas_test.dir/build: bin/Release/liblas_test
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/build
-
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/common.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o.requires
-test/unit/CMakeFiles/liblas_test.dir/requires: test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o.requires
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/requires
-
-test/unit/CMakeFiles/liblas_test.dir/clean:
-	cd /Users/hobu/foo/clean/test/unit && $(CMAKE_COMMAND) -P CMakeFiles/liblas_test.dir/cmake_clean.cmake
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/clean
-
-test/unit/CMakeFiles/liblas_test.dir/depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/hobu/foo/clean /Users/hobu/foo/clean/test/unit /Users/hobu/foo/clean /Users/hobu/foo/clean/test/unit /Users/hobu/foo/clean/test/unit/CMakeFiles/liblas_test.dir/DependInfo.cmake --color=$(COLOR)
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/depend
-
diff --git a/test/unit/CMakeFiles/liblas_test.dir/cmake_clean.cmake b/test/unit/CMakeFiles/liblas_test.dir/cmake_clean.cmake
deleted file mode 100644
index cfd6d10..0000000
--- a/test/unit/CMakeFiles/liblas_test.dir/cmake_clean.cmake
+++ /dev/null
@@ -1,24 +0,0 @@
-FILE(REMOVE_RECURSE
-  "CMakeFiles/liblas_test.dir/bounds_test.cpp.o"
-  "CMakeFiles/liblas_test.dir/common.cpp.o"
-  "CMakeFiles/liblas_test.dir/error_test.cpp.o"
-  "CMakeFiles/liblas_test.dir/guid_test.cpp.o"
-  "CMakeFiles/liblas_test.dir/header_test.cpp.o"
-  "CMakeFiles/liblas_test.dir/point_test.cpp.o"
-  "CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o"
-  "CMakeFiles/liblas_test.dir/reader_test.cpp.o"
-  "CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o"
-  "CMakeFiles/liblas_test.dir/transform_test.cpp.o"
-  "CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o"
-  "CMakeFiles/liblas_test.dir/writer_test.cpp.o"
-  "CMakeFiles/liblas_test.dir/zipreader_test.cpp.o"
-  "CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o"
-  "CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o"
-  "../../bin/Release/liblas_test.pdb"
-  "../../bin/Release/liblas_test"
-)
-
-# Per-language clean rules from dependency scanning.
-FOREACH(lang CXX)
-  INCLUDE(CMakeFiles/liblas_test.dir/cmake_clean_${lang}.cmake OPTIONAL)
-ENDFOREACH(lang)
diff --git a/test/unit/CMakeFiles/liblas_test.dir/depend.make b/test/unit/CMakeFiles/liblas_test.dir/depend.make
deleted file mode 100644
index 59537ec..0000000
--- a/test/unit/CMakeFiles/liblas_test.dir/depend.make
+++ /dev/null
@@ -1,2 +0,0 @@
-# Empty dependencies file for liblas_test.
-# This may be replaced when dependencies are built.
diff --git a/test/unit/CMakeFiles/liblas_test.dir/flags.make b/test/unit/CMakeFiles/liblas_test.dir/flags.make
deleted file mode 100644
index 139d2b8..0000000
--- a/test/unit/CMakeFiles/liblas_test.dir/flags.make
+++ /dev/null
@@ -1,8 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# compile CXX with /usr/bin/c++
-CXX_FLAGS =  -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -I/Users/hobu/foo/clean/test/unit/. -I/Users/hobu/foo/clean/test/unit/../../include -I/usr/local/include   
-
-CXX_DEFINES = -DLAS_DLL_IMPORT
-
diff --git a/test/unit/CMakeFiles/liblas_test.dir/link.txt b/test/unit/CMakeFiles/liblas_test.dir/link.txt
deleted file mode 100644
index 7a79135..0000000
--- a/test/unit/CMakeFiles/liblas_test.dir/link.txt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/c++    -pedantic -ansi -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=c++98 -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/liblas_test.dir/bounds_test.cpp.o CMakeFiles/liblas_test.dir/common.cpp.o CMakeFiles/liblas_test.dir/error_test.cpp.o CMakeFiles/liblas_test.dir/guid_test.cpp.o CMakeFiles/liblas_test.dir/header_test.cpp.o CMakeFiles/liblas_test.dir/point_test.cpp.o CMakeFiles/liblas_test [...]
diff --git a/test/unit/CMakeFiles/liblas_test.dir/progress.make b/test/unit/CMakeFiles/liblas_test.dir/progress.make
deleted file mode 100644
index c75c27f..0000000
--- a/test/unit/CMakeFiles/liblas_test.dir/progress.make
+++ /dev/null
@@ -1,16 +0,0 @@
-CMAKE_PROGRESS_1 = 50
-CMAKE_PROGRESS_2 = 51
-CMAKE_PROGRESS_3 = 52
-CMAKE_PROGRESS_4 = 53
-CMAKE_PROGRESS_5 = 54
-CMAKE_PROGRESS_6 = 55
-CMAKE_PROGRESS_7 = 56
-CMAKE_PROGRESS_8 = 57
-CMAKE_PROGRESS_9 = 58
-CMAKE_PROGRESS_10 = 59
-CMAKE_PROGRESS_11 = 60
-CMAKE_PROGRESS_12 = 61
-CMAKE_PROGRESS_13 = 62
-CMAKE_PROGRESS_14 = 63
-CMAKE_PROGRESS_15 = 64
-
diff --git a/test/unit/CMakeFiles/progress.marks b/test/unit/CMakeFiles/progress.marks
deleted file mode 100644
index ea90ee3..0000000
--- a/test/unit/CMakeFiles/progress.marks
+++ /dev/null
@@ -1 +0,0 @@
-45
diff --git a/test/unit/CMakeLists.txt b/test/unit/CMakeLists.txt
old mode 100644
new mode 100755
index 8995be1..22d2c2e
--- a/test/unit/CMakeLists.txt
+++ b/test/unit/CMakeLists.txt
@@ -1,45 +1,44 @@
-###############################################################################
-#
-# test/unit/CMakeLists.txt controls building of libLAS unit tests suite
-#
-# Copyright (c) 2009 Mateusz Loskot <mateusz at loskot.net>
-#
-###############################################################################
-SET(LIBLAS_UNIT_TEST liblas_test)
-
-SET(LIBLAS_UNIT_TEST_SRC
-    bounds_test.cpp
-    common.cpp
-    error_test.cpp
-    guid_test.cpp
-    header_test.cpp
-    point_test.cpp
-    reader_iterator_test.cpp
-    reader_test.cpp
-    spatialreference_test.cpp
-    transform_test.cpp
-    variablerecord_test.cpp
-    writer_test.cpp
-    zipreader_test.cpp
-    zipwriter_test.cpp
-    liblas_test_suite.cpp)
-
-INCLUDE_DIRECTORIES(
-    .
-    ../../include
-    ${GDAL_INCLUDE_DIR}
-    ${GEOTIFF_INCLUDE_DIR})
-
-ADD_EXECUTABLE(${LIBLAS_UNIT_TEST} ${LIBLAS_UNIT_TEST_SRC} )
-
-set_target_properties(${LIBLAS_UNIT_TEST} PROPERTIES COMPILE_DEFINITIONS LAS_DLL_IMPORT)
-
-TARGET_LINK_LIBRARIES(${LIBLAS_UNIT_TEST} 
-    ${LIBLAS_LIB_NAME}
-    ${ZLIB_LIBRARIES}
-    ${TIFF_LIBRARY}
-    ${GEOTIFF_LIBRARY}
-    ${GDAL_LIBRARY}
-    ${SPATIALINDEX_LIBRARY})
-
-ADD_TEST(liblas_test ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/liblas_test ${CMAKE_SOURCE_DIR}/test/data)
+###############################################################################
+#
+# test/unit/CMakeLists.txt controls building of libLAS unit tests suite
+#
+# Copyright (c) 2009 Mateusz Loskot <mateusz at loskot.net>
+#
+###############################################################################
+SET(LIBLAS_UNIT_TEST liblas_test)
+
+SET(LIBLAS_UNIT_TEST_SRC
+    bounds_test.cpp
+    common.cpp
+    error_test.cpp
+    header_test.cpp
+    point_test.cpp
+    reader_iterator_test.cpp
+    reader_test.cpp
+    spatialreference_test.cpp
+    transform_test.cpp
+    variablerecord_test.cpp
+    writer_test.cpp
+    zipreader_test.cpp
+    zipwriter_test.cpp
+    liblas_test_suite.cpp)
+
+INCLUDE_DIRECTORIES(
+    .
+    ../../include
+    ${GDAL_INCLUDE_DIR}
+    ${GEOTIFF_INCLUDE_DIR})
+
+ADD_EXECUTABLE(${LIBLAS_UNIT_TEST} ${LIBLAS_UNIT_TEST_SRC} )
+
+set_target_properties(${LIBLAS_UNIT_TEST} PROPERTIES COMPILE_DEFINITIONS LAS_DLL_IMPORT)
+
+TARGET_LINK_LIBRARIES(${LIBLAS_UNIT_TEST} 
+    ${LIBLAS_LIB_NAME}
+    ${ZLIB_LIBRARIES}
+    ${TIFF_LIBRARY}
+    ${GEOTIFF_LIBRARY}
+    ${GDAL_LIBRARY}
+    ${SPATIALINDEX_LIBRARY})
+
+ADD_TEST(liblas_test ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/liblas_test ${CMAKE_SOURCE_DIR}/test/data)
diff --git a/test/unit/CTestTestfile.cmake b/test/unit/CTestTestfile.cmake
deleted file mode 100644
index 262c9b3..0000000
--- a/test/unit/CTestTestfile.cmake
+++ /dev/null
@@ -1,7 +0,0 @@
-# CMake generated Testfile for 
-# Source directory: /Users/hobu/foo/clean/test/unit
-# Build directory: /Users/hobu/foo/clean/test/unit
-# 
-# This file includes the relevent testing commands required for 
-# testing this directory and lists subdirectories to be tested as well.
-ADD_TEST(liblas_test "/Users/hobu/foo/clean/bin/Release/liblas_test" "/Users/hobu/foo/clean/test/data")
diff --git a/test/unit/Makefile b/test/unit/Makefile
deleted file mode 100644
index 3bec22b..0000000
--- a/test/unit/Makefile
+++ /dev/null
@@ -1,620 +0,0 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 2.8
-
-# Default target executed when no arguments are given to make.
-default_target: all
-.PHONY : default_target
-
-#=============================================================================
-# Special targets provided by cmake.
-
-# Disable implicit rules so canoncical targets will work.
-.SUFFIXES:
-
-# Remove some rules from gmake that .SUFFIXES does not remove.
-SUFFIXES =
-
-.SUFFIXES: .hpux_make_needs_suffix_list
-
-# Suppress display of executed commands.
-$(VERBOSE).SILENT:
-
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-
-#=============================================================================
-# Set environment variables for the build.
-
-# The shell in which to execute make rules.
-SHELL = /bin/sh
-
-# The CMake executable.
-CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
-
-# The command to remove a file.
-RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
-
-# The program to use to edit the cache.
-CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
-
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/hobu/foo/clean
-
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/hobu/foo/clean
-
-#=============================================================================
-# Targets provided globally by CMake.
-
-# Special rule for the target edit_cache
-edit_cache:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
-.PHONY : edit_cache
-
-# Special rule for the target edit_cache
-edit_cache/fast: edit_cache
-.PHONY : edit_cache/fast
-
-# Special rule for the target install
-install: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
-.PHONY : install
-
-# Special rule for the target install
-install/fast: preinstall/fast
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
-.PHONY : install/fast
-
-# Special rule for the target install/local
-install/local: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
-.PHONY : install/local
-
-# Special rule for the target install/local
-install/local/fast: install/local
-.PHONY : install/local/fast
-
-# Special rule for the target install/strip
-install/strip: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
-.PHONY : install/strip
-
-# Special rule for the target install/strip
-install/strip/fast: install/strip
-.PHONY : install/strip/fast
-
-# Special rule for the target list_install_components
-list_install_components:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
-.PHONY : list_install_components
-
-# Special rule for the target list_install_components
-list_install_components/fast: list_install_components
-.PHONY : list_install_components/fast
-
-# Special rule for the target package
-package: preinstall
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..."
-	cd /Users/hobu/foo/clean && "/Applications/CMake 2.8-6.app/Contents/bin/cpack" --config ./CPackConfig.cmake
-.PHONY : package
-
-# Special rule for the target package
-package/fast: package
-.PHONY : package/fast
-
-# Special rule for the target package_source
-package_source:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..."
-	cd /Users/hobu/foo/clean && "/Applications/CMake 2.8-6.app/Contents/bin/cpack" --config ./CPackSourceConfig.cmake /Users/hobu/foo/clean/CPackSourceConfig.cmake
-.PHONY : package_source
-
-# Special rule for the target package_source
-package_source/fast: package_source
-.PHONY : package_source/fast
-
-# Special rule for the target rebuild_cache
-rebuild_cache:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
-.PHONY : rebuild_cache
-
-# Special rule for the target rebuild_cache
-rebuild_cache/fast: rebuild_cache
-.PHONY : rebuild_cache/fast
-
-# Special rule for the target test
-test:
-	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running tests..."
-	"/Applications/CMake 2.8-6.app/Contents/bin/ctest" --force-new-ctest-process $(ARGS)
-.PHONY : test
-
-# Special rule for the target test
-test/fast: test
-.PHONY : test/fast
-
-# The main all target
-all: cmake_check_build_system
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles /Users/hobu/foo/clean/test/unit/CMakeFiles/progress.marks
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 test/unit/all
-	$(CMAKE_COMMAND) -E cmake_progress_start /Users/hobu/foo/clean/CMakeFiles 0
-.PHONY : all
-
-# The main clean target
-clean:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 test/unit/clean
-.PHONY : clean
-
-# The main clean target
-clean/fast: clean
-.PHONY : clean/fast
-
-# Prepare targets for installation.
-preinstall: all
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 test/unit/preinstall
-.PHONY : preinstall
-
-# Prepare targets for installation.
-preinstall/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 test/unit/preinstall
-.PHONY : preinstall/fast
-
-# clear depends
-depend:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
-.PHONY : depend
-
-# Convenience name for target.
-test/unit/CMakeFiles/liblas_test.dir/rule:
-	cd /Users/hobu/foo/clean && $(MAKE) -f CMakeFiles/Makefile2 test/unit/CMakeFiles/liblas_test.dir/rule
-.PHONY : test/unit/CMakeFiles/liblas_test.dir/rule
-
-# Convenience name for target.
-liblas_test: test/unit/CMakeFiles/liblas_test.dir/rule
-.PHONY : liblas_test
-
-# fast build rule for target.
-liblas_test/fast:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/build
-.PHONY : liblas_test/fast
-
-bounds_test.o: bounds_test.cpp.o
-.PHONY : bounds_test.o
-
-# target to build an object file
-bounds_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.o
-.PHONY : bounds_test.cpp.o
-
-bounds_test.i: bounds_test.cpp.i
-.PHONY : bounds_test.i
-
-# target to preprocess a source file
-bounds_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.i
-.PHONY : bounds_test.cpp.i
-
-bounds_test.s: bounds_test.cpp.s
-.PHONY : bounds_test.s
-
-# target to generate assembly for a file
-bounds_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/bounds_test.cpp.s
-.PHONY : bounds_test.cpp.s
-
-common.o: common.cpp.o
-.PHONY : common.o
-
-# target to build an object file
-common.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/common.cpp.o
-.PHONY : common.cpp.o
-
-common.i: common.cpp.i
-.PHONY : common.i
-
-# target to preprocess a source file
-common.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/common.cpp.i
-.PHONY : common.cpp.i
-
-common.s: common.cpp.s
-.PHONY : common.s
-
-# target to generate assembly for a file
-common.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/common.cpp.s
-.PHONY : common.cpp.s
-
-error_test.o: error_test.cpp.o
-.PHONY : error_test.o
-
-# target to build an object file
-error_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.o
-.PHONY : error_test.cpp.o
-
-error_test.i: error_test.cpp.i
-.PHONY : error_test.i
-
-# target to preprocess a source file
-error_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.i
-.PHONY : error_test.cpp.i
-
-error_test.s: error_test.cpp.s
-.PHONY : error_test.s
-
-# target to generate assembly for a file
-error_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/error_test.cpp.s
-.PHONY : error_test.cpp.s
-
-guid_test.o: guid_test.cpp.o
-.PHONY : guid_test.o
-
-# target to build an object file
-guid_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.o
-.PHONY : guid_test.cpp.o
-
-guid_test.i: guid_test.cpp.i
-.PHONY : guid_test.i
-
-# target to preprocess a source file
-guid_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.i
-.PHONY : guid_test.cpp.i
-
-guid_test.s: guid_test.cpp.s
-.PHONY : guid_test.s
-
-# target to generate assembly for a file
-guid_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/guid_test.cpp.s
-.PHONY : guid_test.cpp.s
-
-header_test.o: header_test.cpp.o
-.PHONY : header_test.o
-
-# target to build an object file
-header_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.o
-.PHONY : header_test.cpp.o
-
-header_test.i: header_test.cpp.i
-.PHONY : header_test.i
-
-# target to preprocess a source file
-header_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.i
-.PHONY : header_test.cpp.i
-
-header_test.s: header_test.cpp.s
-.PHONY : header_test.s
-
-# target to generate assembly for a file
-header_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/header_test.cpp.s
-.PHONY : header_test.cpp.s
-
-liblas_test_suite.o: liblas_test_suite.cpp.o
-.PHONY : liblas_test_suite.o
-
-# target to build an object file
-liblas_test_suite.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.o
-.PHONY : liblas_test_suite.cpp.o
-
-liblas_test_suite.i: liblas_test_suite.cpp.i
-.PHONY : liblas_test_suite.i
-
-# target to preprocess a source file
-liblas_test_suite.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.i
-.PHONY : liblas_test_suite.cpp.i
-
-liblas_test_suite.s: liblas_test_suite.cpp.s
-.PHONY : liblas_test_suite.s
-
-# target to generate assembly for a file
-liblas_test_suite.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/liblas_test_suite.cpp.s
-.PHONY : liblas_test_suite.cpp.s
-
-point_test.o: point_test.cpp.o
-.PHONY : point_test.o
-
-# target to build an object file
-point_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.o
-.PHONY : point_test.cpp.o
-
-point_test.i: point_test.cpp.i
-.PHONY : point_test.i
-
-# target to preprocess a source file
-point_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.i
-.PHONY : point_test.cpp.i
-
-point_test.s: point_test.cpp.s
-.PHONY : point_test.s
-
-# target to generate assembly for a file
-point_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/point_test.cpp.s
-.PHONY : point_test.cpp.s
-
-reader_iterator_test.o: reader_iterator_test.cpp.o
-.PHONY : reader_iterator_test.o
-
-# target to build an object file
-reader_iterator_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.o
-.PHONY : reader_iterator_test.cpp.o
-
-reader_iterator_test.i: reader_iterator_test.cpp.i
-.PHONY : reader_iterator_test.i
-
-# target to preprocess a source file
-reader_iterator_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.i
-.PHONY : reader_iterator_test.cpp.i
-
-reader_iterator_test.s: reader_iterator_test.cpp.s
-.PHONY : reader_iterator_test.s
-
-# target to generate assembly for a file
-reader_iterator_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/reader_iterator_test.cpp.s
-.PHONY : reader_iterator_test.cpp.s
-
-reader_test.o: reader_test.cpp.o
-.PHONY : reader_test.o
-
-# target to build an object file
-reader_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.o
-.PHONY : reader_test.cpp.o
-
-reader_test.i: reader_test.cpp.i
-.PHONY : reader_test.i
-
-# target to preprocess a source file
-reader_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.i
-.PHONY : reader_test.cpp.i
-
-reader_test.s: reader_test.cpp.s
-.PHONY : reader_test.s
-
-# target to generate assembly for a file
-reader_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/reader_test.cpp.s
-.PHONY : reader_test.cpp.s
-
-spatialreference_test.o: spatialreference_test.cpp.o
-.PHONY : spatialreference_test.o
-
-# target to build an object file
-spatialreference_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.o
-.PHONY : spatialreference_test.cpp.o
-
-spatialreference_test.i: spatialreference_test.cpp.i
-.PHONY : spatialreference_test.i
-
-# target to preprocess a source file
-spatialreference_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.i
-.PHONY : spatialreference_test.cpp.i
-
-spatialreference_test.s: spatialreference_test.cpp.s
-.PHONY : spatialreference_test.s
-
-# target to generate assembly for a file
-spatialreference_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/spatialreference_test.cpp.s
-.PHONY : spatialreference_test.cpp.s
-
-transform_test.o: transform_test.cpp.o
-.PHONY : transform_test.o
-
-# target to build an object file
-transform_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.o
-.PHONY : transform_test.cpp.o
-
-transform_test.i: transform_test.cpp.i
-.PHONY : transform_test.i
-
-# target to preprocess a source file
-transform_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.i
-.PHONY : transform_test.cpp.i
-
-transform_test.s: transform_test.cpp.s
-.PHONY : transform_test.s
-
-# target to generate assembly for a file
-transform_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/transform_test.cpp.s
-.PHONY : transform_test.cpp.s
-
-variablerecord_test.o: variablerecord_test.cpp.o
-.PHONY : variablerecord_test.o
-
-# target to build an object file
-variablerecord_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.o
-.PHONY : variablerecord_test.cpp.o
-
-variablerecord_test.i: variablerecord_test.cpp.i
-.PHONY : variablerecord_test.i
-
-# target to preprocess a source file
-variablerecord_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.i
-.PHONY : variablerecord_test.cpp.i
-
-variablerecord_test.s: variablerecord_test.cpp.s
-.PHONY : variablerecord_test.s
-
-# target to generate assembly for a file
-variablerecord_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/variablerecord_test.cpp.s
-.PHONY : variablerecord_test.cpp.s
-
-writer_test.o: writer_test.cpp.o
-.PHONY : writer_test.o
-
-# target to build an object file
-writer_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.o
-.PHONY : writer_test.cpp.o
-
-writer_test.i: writer_test.cpp.i
-.PHONY : writer_test.i
-
-# target to preprocess a source file
-writer_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.i
-.PHONY : writer_test.cpp.i
-
-writer_test.s: writer_test.cpp.s
-.PHONY : writer_test.s
-
-# target to generate assembly for a file
-writer_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/writer_test.cpp.s
-.PHONY : writer_test.cpp.s
-
-zipreader_test.o: zipreader_test.cpp.o
-.PHONY : zipreader_test.o
-
-# target to build an object file
-zipreader_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.o
-.PHONY : zipreader_test.cpp.o
-
-zipreader_test.i: zipreader_test.cpp.i
-.PHONY : zipreader_test.i
-
-# target to preprocess a source file
-zipreader_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.i
-.PHONY : zipreader_test.cpp.i
-
-zipreader_test.s: zipreader_test.cpp.s
-.PHONY : zipreader_test.s
-
-# target to generate assembly for a file
-zipreader_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/zipreader_test.cpp.s
-.PHONY : zipreader_test.cpp.s
-
-zipwriter_test.o: zipwriter_test.cpp.o
-.PHONY : zipwriter_test.o
-
-# target to build an object file
-zipwriter_test.cpp.o:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.o
-.PHONY : zipwriter_test.cpp.o
-
-zipwriter_test.i: zipwriter_test.cpp.i
-.PHONY : zipwriter_test.i
-
-# target to preprocess a source file
-zipwriter_test.cpp.i:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.i
-.PHONY : zipwriter_test.cpp.i
-
-zipwriter_test.s: zipwriter_test.cpp.s
-.PHONY : zipwriter_test.s
-
-# target to generate assembly for a file
-zipwriter_test.cpp.s:
-	cd /Users/hobu/foo/clean && $(MAKE) -f test/unit/CMakeFiles/liblas_test.dir/build.make test/unit/CMakeFiles/liblas_test.dir/zipwriter_test.cpp.s
-.PHONY : zipwriter_test.cpp.s
-
-# Help Target
-help:
-	@echo "The following are some of the valid targets for this Makefile:"
-	@echo "... all (the default if no target is provided)"
-	@echo "... clean"
-	@echo "... depend"
-	@echo "... edit_cache"
-	@echo "... install"
-	@echo "... install/local"
-	@echo "... install/strip"
-	@echo "... liblas_test"
-	@echo "... list_install_components"
-	@echo "... package"
-	@echo "... package_source"
-	@echo "... rebuild_cache"
-	@echo "... test"
-	@echo "... bounds_test.o"
-	@echo "... bounds_test.i"
-	@echo "... bounds_test.s"
-	@echo "... common.o"
-	@echo "... common.i"
-	@echo "... common.s"
-	@echo "... error_test.o"
-	@echo "... error_test.i"
-	@echo "... error_test.s"
-	@echo "... guid_test.o"
-	@echo "... guid_test.i"
-	@echo "... guid_test.s"
-	@echo "... header_test.o"
-	@echo "... header_test.i"
-	@echo "... header_test.s"
-	@echo "... liblas_test_suite.o"
-	@echo "... liblas_test_suite.i"
-	@echo "... liblas_test_suite.s"
-	@echo "... point_test.o"
-	@echo "... point_test.i"
-	@echo "... point_test.s"
-	@echo "... reader_iterator_test.o"
-	@echo "... reader_iterator_test.i"
-	@echo "... reader_iterator_test.s"
-	@echo "... reader_test.o"
-	@echo "... reader_test.i"
-	@echo "... reader_test.s"
-	@echo "... spatialreference_test.o"
-	@echo "... spatialreference_test.i"
-	@echo "... spatialreference_test.s"
-	@echo "... transform_test.o"
-	@echo "... transform_test.i"
-	@echo "... transform_test.s"
-	@echo "... variablerecord_test.o"
-	@echo "... variablerecord_test.i"
-	@echo "... variablerecord_test.s"
-	@echo "... writer_test.o"
-	@echo "... writer_test.i"
-	@echo "... writer_test.s"
-	@echo "... zipreader_test.o"
-	@echo "... zipreader_test.i"
-	@echo "... zipreader_test.s"
-	@echo "... zipwriter_test.o"
-	@echo "... zipwriter_test.i"
-	@echo "... zipwriter_test.s"
-.PHONY : help
-
-
-
-#=============================================================================
-# Special targets to cleanup operation of make.
-
-# Special rule to run CMake to check the build system integrity.
-# No rule that depends on this can have commands that come from listfiles
-# because they might be regenerated.
-cmake_check_build_system:
-	cd /Users/hobu/foo/clean && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
-.PHONY : cmake_check_build_system
-
diff --git a/test/unit/bounds_test.cpp b/test/unit/bounds_test.cpp
old mode 100644
new mode 100755
index 57bea81..9f3af0a
--- a/test/unit/bounds_test.cpp
+++ b/test/unit/bounds_test.cpp
@@ -4,7 +4,6 @@
 // http://www.opensource.org/licenses/bsd-license.php)
 //
 #include <liblas/bounds.hpp>
-#include <liblas/guid.hpp>
 #include <tut/tut.hpp>
 #include <string>
 #include <vector>
diff --git a/test/unit/classification_test.cpp b/test/unit/classification_test.cpp
old mode 100644
new mode 100755
diff --git a/test/unit/cmake_install.cmake b/test/unit/cmake_install.cmake
deleted file mode 100644
index 1c62599..0000000
--- a/test/unit/cmake_install.cmake
+++ /dev/null
@@ -1,29 +0,0 @@
-# Install script for directory: /Users/hobu/foo/clean/test/unit
-
-# Set the install prefix
-IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
-  SET(CMAKE_INSTALL_PREFIX "/usr/local")
-ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
-STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
-
-# Set the install configuration name.
-IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
-  IF(BUILD_TYPE)
-    STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
-           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
-  ELSE(BUILD_TYPE)
-    SET(CMAKE_INSTALL_CONFIG_NAME "Release")
-  ENDIF(BUILD_TYPE)
-  MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
-ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
-
-# Set the component getting installed.
-IF(NOT CMAKE_INSTALL_COMPONENT)
-  IF(COMPONENT)
-    MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
-    SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
-  ELSE(COMPONENT)
-    SET(CMAKE_INSTALL_COMPONENT)
-  ENDIF(COMPONENT)
-ENDIF(NOT CMAKE_INSTALL_COMPONENT)
-
diff --git a/test/unit/common.cpp b/test/unit/common.cpp
old mode 100644
new mode 100755
index 2e7548b..a785ca0
--- a/test/unit/common.cpp
+++ b/test/unit/common.cpp
@@ -6,7 +6,6 @@
 // http://www.opensource.org/licenses/bsd-license.php)
 //
 #include <liblas/header.hpp>
-#include <liblas/guid.hpp>
 #include <tut/tut.hpp>
 #include "common.hpp"
 // boost
@@ -30,7 +29,7 @@ void test_default_header(liblas::Header const& h)
     ensure_equals("wrong default reserved value",
         h.GetReserved(), 0);
 
-    liblas::guid g;
+    boost::uuids::uuid g = boost::uuids::nil_uuid();
     ensure_equals("wrong default project guid",
         h.GetProjectId(), g);
 
@@ -130,8 +129,8 @@ void test_file10_header(liblas::Header const& h)
     ensure_equals(h.GetFileSourceId(), 0);
     ensure_equals(h.GetReserved(), 0);
 
-    liblas::guid g;
-    ensure(g.is_null());
+    boost::uuids::uuid g = boost::uuids::nil_uuid();
+    ensure_equals(g, boost::uuids::nil_uuid());
     ensure_equals("wrong ProjectId", h.GetProjectId(), g);
 
     ensure_equals("wrong VersionMajor", h.GetVersionMajor(), 1);
diff --git a/test/unit/common.hpp b/test/unit/common.hpp
old mode 100644
new mode 100755
diff --git a/test/unit/error_test.cpp b/test/unit/error_test.cpp
old mode 100644
new mode 100755
diff --git a/test/unit/guid_test.cpp b/test/unit/guid_test.cpp
deleted file mode 100644
index 9495860..0000000
--- a/test/unit/guid_test.cpp
+++ /dev/null
@@ -1,181 +0,0 @@
-// $Id$
-//
-// (C) Copyright Mateusz Loskot 2008, mateusz at loskot.net
-// Distributed under the BSD License
-// (See accompanying file LICENSE.txt or copy at
-// http://www.opensource.org/licenses/bsd-license.php)
-//
-#include <liblas/liblas.hpp>
-#include <liblas/guid.hpp>
-#include <tut/tut.hpp>
-#include <string>
-#include <algorithm> // std::std::transform
-#include <cstring> // std::memset
-#include <cstdlib> // std::size_t
-#include <cctype> // std::toupper
-
-namespace tut
-{ 
-    struct guid_data
-    {
-        guid_data()
-            : m_dstr("00000000-0000-0000-0000-000000000000")
-        {}
-
-        std::string m_dstr;
-        liblas::guid m_d;
-    };
-
-    typedef test_group<guid_data> tg;
-    typedef tg::object to;
-
-    tg test_group_guid("liblas::guid");
-
-    // Test default construction
-    template<>
-    template<>
-    void to::test<1>()
-    {
-        ensure(m_d.is_null());
-
-        std::size_t const len = 16;
-        ensure_equals(len, m_d.byte_count());
-
-        std::string s = m_d.to_string();
-        ensure_equals(s, m_dstr);
-
-        liblas::guid g;
-        ensure_equals(len, g.byte_count());
-        ensure_equals(g, m_d);
-    }
-
-    // Test construction from C string
-    template<>
-    template<>
-    void to::test<2>()
-    {
-        std::string s1("3F2504E0-4F89-11D3-9A0C-0305E82C3301");
-        liblas::guid g(s1.c_str());
-
-        ensure_not(g.is_null());
-        ensure_not(m_d == g);
-
-        std::string s2 = m_d.to_string();
-        std::transform(s2.begin(), s2.end(), s2.begin(), (int(*)(int))std::toupper);
-        ensure_not(s1 == s2);
-
-        s2 = g.to_string();
-        std::transform(s2.begin(), s2.end(), s2.begin(), (int(*)(int))std::toupper);
-        ensure_equals(s2, s1);
-    }
-
-    // Test construction from std::string
-    template<>
-    template<>
-    void to::test<3>()
-    {
-        std::string s1("3F2504E0-4F89-11D3-9A0C-0305E82C3301");
-        liblas::guid g(s1.c_str());
-
-        ensure_not(g.is_null());
-        ensure_not(m_d == g);
-
-        std::string s2 = g.to_string();
-        std::transform(s2.begin(), s2.end(), s2.begin(), (int(*)(int))std::toupper);
-        ensure_equals(s2, s1);
-    }
-
-    // Test construction from 4-2-2-8-bytes long fields
-    template<>
-    template<>
-    void to::test<4>()
-    {
-        boost::uint32_t d1(0);
-        boost::uint16_t d2(0);
-        boost::uint16_t d3(0);
-        boost::uint8_t d4[8] = { 0 };
-
-        liblas::guid g(d1, d2, d3, d4);
-
-        ensure(g.is_null());
-        ensure_equals(g, m_d);
-
-    }
-
-    // Test copy constructor
-    template<>
-    template<>
-    void to::test<5>()
-    {
-        liblas::guid g(m_d);
-
-        ensure(g.is_null());
-        ensure_equals(g, m_d);
-
-        std::string s1("3F2504E0-4F89-11D3-9A0C-0305E82C3301");
-        liblas::guid g1(s1.c_str());
-
-        liblas::guid g2(g1);
-        ensure_equals(g2, g1);
-    }
-
-    // Test assignment operator
-    template<>
-    template<>
-    void to::test<6>()
-    {
-        liblas::guid g;
-        ensure(g.is_null());
-
-        g = m_d;
-        ensure(g.is_null());
-        ensure_equals(g, m_d);
-
-        std::string s1("3F2504E0-4F89-11D3-9A0C-0305E82C3301");
-        liblas::guid g1(s1.c_str());
-
-        liblas::guid g2;
-        ensure(g.is_null());
-        ensure_equals(g, m_d);
-
-        g2 = g1;
-        ensure_equals(g2, g1);
-    }
-
-    // Test guid construction with 4-parts data
-    template<>
-    template<>
-    void to::test<7>()
-    {
-        std::string strguid("01234567-89ab-cdef-0123-456789abcdef");
-        liblas::guid g1(strguid);
-        ensure_equals(g1.to_string(), strguid);
-
-        // Binary representation of "01234567-89ab-cdef-0123-456789abcdef"
-        boost::uint32_t n1 = 19088743;
-        boost::uint16_t n2 = 35243;
-        boost::uint16_t n3 = 52719;
-        boost::uint8_t n4[8] = { 0 };
-        n4[0] = 0x01;
-        n4[1] = 0x23;
-        n4[2] = 0x45;
-        n4[3] = 0x67;
-        n4[4] = 0x89;
-        n4[5] = 0xab;
-        n4[6] = 0xcd;
-        n4[7] = 0xef;
-
-        liblas::guid g2(n1, n2, n3, n4);
-        ensure_equals(g1, g2);
-
-        n1 = n2 = n3 = 0;
-        std::memset(n4, 0, 8);
-
-        g2.output_data(n1, n2, n3, n4);
-        liblas::guid g3(n1, n2, n3, n4);
-
-        ensure_equals(g1, g3);
-        ensure_equals(g2, g3);
-    }
-}
-
diff --git a/test/unit/header_test.cpp b/test/unit/header_test.cpp
old mode 100644
new mode 100755
index 1641128..d5ba74d
--- a/test/unit/header_test.cpp
+++ b/test/unit/header_test.cpp
@@ -118,10 +118,18 @@ namespace tut
 # pragma warning(disable: 4305) //  truncation from 'int' to 'boost::uint16_t'
 # pragma warning(disable: 4309) // conditional expression is constant.
 #endif
+
+#ifndef _MSC_VER
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wconstant-conversion"
+#endif
         // Unsigned overflow
         // Likely compiler warning: truncation from int to boost::uint16_t
         h1.SetFileSourceId(id2 + 1);
         ensure_equals(h1.GetFileSourceId(), overflowed);
+#ifndef _MSC_VER
+#pragma clang diagnostic pop
+#endif
 
 #ifdef _MSC_VER
 # pragma warning(push)
@@ -145,12 +153,12 @@ namespace tut
     void to::test<7>()
     {
         std::string strid("030B4A82-1B7C-11CF-9D53-00AA003C9CB6");
-        liblas::guid id(strid.c_str());
+        boost::uuids::uuid id = boost::uuids::string_generator()(strid);        
 
         liblas::Header h;
         h.SetProjectId(id);
         
-        ensure_not(h.GetProjectId().is_null());
+        ensure_not(h.GetProjectId() == boost::uuids::nil_uuid());
         ensure_equals(h.GetProjectId(), id);
     }
 
diff --git a/test/unit/liblas_test.hpp b/test/unit/liblas_test.hpp
old mode 100644
new mode 100755
diff --git a/test/unit/liblas_test_suite.cpp b/test/unit/liblas_test_suite.cpp
old mode 100644
new mode 100755
diff --git a/test/unit/point_test.cpp b/test/unit/point_test.cpp
old mode 100644
new mode 100755
index 111cf95..8aa0106
--- a/test/unit/point_test.cpp
+++ b/test/unit/point_test.cpp
@@ -24,7 +24,8 @@ namespace tut
         std::string file10_;
 
         laspoint_data()
-            : file10_(g_test_data_path + "//TO_core_last_clip.las")
+            : m_default(&liblas::DefaultHeader::get())
+            , file10_(g_test_data_path + "//TO_core_last_clip.las")
         {}
     };
 
@@ -56,7 +57,7 @@ namespace tut
     template<>
     void to::test<3>()
     {
-        liblas::Point p;
+        liblas::Point p(&liblas::DefaultHeader::get());
         p = m_default;
 
         test_default_point(p);
@@ -67,7 +68,7 @@ namespace tut
     template<>
     void to::test<4>()
     {
-        liblas::Point p;
+        liblas::Point p(&liblas::DefaultHeader::get());
         
         ensure("points are not equal", m_default == p);
     }
@@ -77,7 +78,7 @@ namespace tut
     template<>
     void to::test<5>()
     {
-        liblas::Point p;
+        liblas::Point p(&liblas::DefaultHeader::get());
         p.SetCoordinates(1.123, 2.456, 3.789);
         
         ensure("points are equal", m_default != p);
@@ -364,7 +365,7 @@ namespace tut
     void to::test<15>()
     {
         {
-            liblas::Point p;
+            liblas::Point p(&liblas::DefaultHeader::get());
             boost::uint16_t const outofrange = 8;
             p.SetReturnNumber(outofrange);
             // XXX: Bit flag overflowed, so point data recognized as valid
@@ -372,7 +373,7 @@ namespace tut
         }
 
         {
-            liblas::Point p;
+            liblas::Point p(&liblas::DefaultHeader::get());
             boost::uint16_t const outofrange = 8;
             p.SetNumberOfReturns(outofrange);
             // XXX: Bit flag overflowed, so point data recognized as valid
@@ -380,7 +381,7 @@ namespace tut
         }
 
         {
-            liblas::Point p;
+            liblas::Point p(&liblas::DefaultHeader::get());
             boost::uint16_t const outofrange = 2;
             p.SetScanDirection(outofrange);
             // XXX: Bit flag overflowed, so point data recognized as valid
@@ -388,7 +389,7 @@ namespace tut
         }
 
         {
-            liblas::Point p;
+            liblas::Point p(&liblas::DefaultHeader::get());
             boost::uint16_t const outofrange = 2;
             p.SetFlightLineEdge(outofrange);
             // XXX: Bit flag overflowed, so point data recognized as valid
@@ -396,7 +397,7 @@ namespace tut
         }
 
         {
-            liblas::Point p;
+            liblas::Point p(&liblas::DefaultHeader::get());
             boost::int8_t const outofrange = 91;
             p.SetScanAngleRank(outofrange);
             ensure_not(p.IsValid());
@@ -519,8 +520,7 @@ namespace tut
         liblas::Header header;
         header.SetDataFormatId(liblas::ePointFormat2);
         
-        liblas::Point p;
-        p.SetHeader(&header);
+        liblas::Point p(&header);
         
         liblas::Color c;
         c.SetRed(123);
diff --git a/test/unit/reader_iterator_test.cpp b/test/unit/reader_iterator_test.cpp
old mode 100644
new mode 100755
index f59f2c1..6834bec
--- a/test/unit/reader_iterator_test.cpp
+++ b/test/unit/reader_iterator_test.cpp
@@ -269,8 +269,8 @@ namespace tut
     void to::test<18>()
     {
         // Construct copy of 2nd point record from tested file
-        Point pt;
         Header h;
+        Point pt(&h);
         h.SetScale(0.01, 0.01, 0.01);
         pt.SetHeader(&h);
         pt.SetCoordinates(630282.45, 4834500, 51.63);
@@ -334,8 +334,8 @@ namespace tut
     void to::test<20>()
     {
         // Construct copy of 2nd point record from tested file
-        Point pt;
         Header h;
+        Point pt(&h);
         h.SetScale(0.01, 0.01, 0.01);
         pt.SetHeader(&h);        
         pt.SetCoordinates(630282.45, 4834500, 51.63);
@@ -381,7 +381,6 @@ namespace tut
         lasreader_iterator it(reader_);
         lasreader_iterator end;
 
-        typedef liblas::detail::Point<double> point_t;
         typedef liblas::Bounds<double> bbox_t;
 
         Header const& h = reader_.GetHeader();
diff --git a/test/unit/reader_test.cpp b/test/unit/reader_test.cpp
old mode 100644
new mode 100755
index 7a21e0c..07cfde7
--- a/test/unit/reader_test.cpp
+++ b/test/unit/reader_test.cpp
@@ -67,7 +67,8 @@ namespace tut
 
         // uninitialized point object, a null-point
         liblas::Point const& p = reader.GetPoint();
-        ensure(p == liblas::Point());
+        liblas::Point t(&liblas::DefaultHeader::get());
+        ensure(p == t);
     }
 
     // Test ReadPoint and GetPoint pair
diff --git a/test/unit/spatialreference_test.cpp b/test/unit/spatialreference_test.cpp
old mode 100644
new mode 100755
index a4c2590..c7ef6f7
--- a/test/unit/spatialreference_test.cpp
+++ b/test/unit/spatialreference_test.cpp
@@ -263,7 +263,7 @@ namespace tut
 
             liblas::Writer writer(ofs, header);
             
-            liblas::Point point;
+            liblas::Point point(&writer.GetHeader());
             point.SetCoordinates( -117, 33, 100 );
             writer.WritePoint( point );
         }
@@ -308,7 +308,7 @@ namespace tut
 
             liblas::Writer writer(ofs, header);
             
-            liblas::Point point;
+            liblas::Point point(&writer.GetHeader());
             point.SetCoordinates( -117, 33, 100 );
             writer.WritePoint( point );
         }
diff --git a/test/unit/transform_test.cpp b/test/unit/transform_test.cpp
old mode 100644
new mode 100755
index ddb026f..d013294
--- a/test/unit/transform_test.cpp
+++ b/test/unit/transform_test.cpp
@@ -4,7 +4,6 @@
 // http://www.opensource.org/licenses/bsd-license.php)
 //
 #include <liblas/bounds.hpp>
-#include <liblas/guid.hpp>
 #include <tut/tut.hpp>
 #include <string>
 #include <vector>
diff --git a/test/unit/tut/tut.hpp b/test/unit/tut/tut.hpp
old mode 100644
new mode 100755
diff --git a/test/unit/tut/tut_assert.hpp b/test/unit/tut/tut_assert.hpp
old mode 100644
new mode 100755
index bd08fcb..f85fffe
--- a/test/unit/tut/tut_assert.hpp
+++ b/test/unit/tut/tut_assert.hpp
@@ -15,6 +15,11 @@
 
 #include "tut_exception.hpp"
 
+#ifndef _MSC_VER
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wunused-function"
+#endif
+
 namespace tut
 {
 
@@ -302,5 +307,9 @@ void skip(const M& msg)
 
 }
 
+#ifndef _MSC_VER
+#pragma clang diagnostic pop
+#endif
+
 #endif
 
diff --git a/test/unit/tut/tut_config.hpp b/test/unit/tut/tut_config.hpp
old mode 100644
new mode 100755
diff --git a/test/unit/tut/tut_console_reporter.hpp b/test/unit/tut/tut_console_reporter.hpp
old mode 100644
new mode 100755
diff --git a/test/unit/tut/tut_exception.hpp b/test/unit/tut/tut_exception.hpp
old mode 100644
new mode 100755
diff --git a/test/unit/tut/tut_posix.hpp b/test/unit/tut/tut_posix.hpp
old mode 100644
new mode 100755
diff --git a/test/unit/tut/tut_reporter.hpp b/test/unit/tut/tut_reporter.hpp
old mode 100644
new mode 100755
diff --git a/test/unit/tut/tut_restartable.hpp b/test/unit/tut/tut_restartable.hpp
old mode 100644
new mode 100755
diff --git a/test/unit/tut/tut_result.hpp b/test/unit/tut/tut_result.hpp
old mode 100644
new mode 100755
diff --git a/test/unit/tut/tut_runner.hpp b/test/unit/tut/tut_runner.hpp
old mode 100644
new mode 100755
diff --git a/test/unit/variablerecord_test.cpp b/test/unit/variablerecord_test.cpp
old mode 100644
new mode 100755
diff --git a/test/unit/writer_test.cpp b/test/unit/writer_test.cpp
old mode 100644
new mode 100755
index ccb4fcf..417d53d
--- a/test/unit/writer_test.cpp
+++ b/test/unit/writer_test.cpp
@@ -91,7 +91,7 @@ namespace tut
             liblas::Header header;
             liblas::Writer writer(ofs, header);
 
-            liblas::Point point;
+            liblas::Point point(&header);
 
             // Write 1st point
             point.SetCoordinates(10, 20, 30);
@@ -125,11 +125,9 @@ namespace tut
             ensure(ifs.is_open());
             liblas::Reader reader(ifs);
 
-            liblas::Point point; // reusable cache
-
             // read 1st point
             reader.ReadNextPoint();
-            point = reader.GetPoint();
+            liblas::Point point = reader.GetPoint();
             ensure_distance(point.GetX(), 10.0, 0.1);
             ensure_distance(point.GetY(), 20.0, 0.1);
             ensure_distance(point.GetZ(), 30.0, 0.1);
@@ -266,7 +264,7 @@ namespace tut
             size_t count = 500;
             for ( size_t i = 0; i < count ; i++ )
             {
-                liblas::Point point;
+                liblas::Point point(&test2Writer.GetHeader());
                 point.SetCoordinates( 10.0 + i, 20.0 + i, 30.0 + i );
                 test2Writer.WritePoint( point );
             }
@@ -332,7 +330,7 @@ namespace tut
             
             for ( size_t i = 0; i < count ; i++ )
             {
-                liblas::Point point;
+                liblas::Point point(&writer.GetHeader());
                 point.SetCoordinates( 10.0 + i, 20.0 + i, 30.0 + i );
                 writer.WritePoint( point );
             }
diff --git a/test/unit/zipreader_test.cpp b/test/unit/zipreader_test.cpp
old mode 100644
new mode 100755
diff --git a/test/unit/zipwriter_test.cpp b/test/unit/zipwriter_test.cpp
old mode 100644
new mode 100755
index ec84b1b..3694e74
--- a/test/unit/zipwriter_test.cpp
+++ b/test/unit/zipwriter_test.cpp
@@ -80,7 +80,7 @@ namespace tut
 
             liblas::Writer writer(ofs, header);
 
-            liblas::Point point;
+            liblas::Point point(&writer.GetHeader());
 
             // Write 1st point
             point.SetCoordinates(10, 20, 30);
@@ -196,7 +196,7 @@ namespace tut
 
             liblas::Writer writer(ofs, header);
 
-            liblas::Point point;
+            liblas::Point point(&writer.GetHeader());
 
             // Write 1st point
             point.SetCoordinates(10, 20, 30);
@@ -234,7 +234,7 @@ namespace tut
             
             ensure_equals(reader.GetHeader().Compressed(), true);
 
-            liblas::Point point; // reusable cache
+            liblas::Point point(&reader.GetHeader()); // reusable cache
 
             // read 1st point
             bool ok = reader.ReadNextPoint();

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/liblas.git



More information about the Pkg-grass-devel mailing list