[Geotiff] CMakeList.txt

David Burken dburken at comcast.net
Thu Jun 16 15:10:42 EST 2011


Done, thanks Howard.
Dave


On 06/16/2011 03:16 PM, Howard Butler wrote:
> Dave,
>
> Can you file a patch in http://trac.osgeo.org/geotiff/ and assign it to 'hobu' and I'll take care of it.
>
> Thanks,
>
> Howard
>
>
> On Jun 16, 2011, at 11:45 AM, David Burken wrote:
>
>> Hi Everyone,
>>
>> Very happy to see the addition of the CMakeList.txt to libgeotiff.  Just
>> some comments.  Please I'm not picking on anyone just trying to give
>> some useful feedback.  I really appreciate the addition.
>>
>> This was a build from linux (Fedora flavor).
>>
>> 1) Seems there is a file that is not under svn so the initial "make
>> install" was failing.
>>
>> CMake Error at cmake_install.cmake:49 (FILE):
>>    file INSTALL cannot find "/work/osgeo/libgeotiff/csv/codes.csv".
>>
>> 2) My libraries went to bin on unix on a make.
>>
>> 3) I typically install to some prefix so I usually set
>> "CMAKE_INSTALL_PREFIX" and rely on it putting things in bin, include,
>> lib, share, doc.  The way it was coded I could not override.  Or I
>> should say I couldn't figure it out without setting a bunch of variables
>> in my cmake command.
>>
>> After a little tweaking I got a good "make install".
>>
>> I hope this is useful to someone.  See below for more.  I can send my
>> CMakeList.txt if anyone would like.
>>
>> Take care,
>> Dave
>>
>>
>> Here's my cmake out of source build script if anyone is interested.
>> Note all my other stuff, i.e. libtiff, proj4 was installed to
>> /work/osgeo/local sandbox.
>>
>> //--------------
>> #!/bin/sh
>> # File: libgeotiff-cmake-config.sh
>> build_dir="/work/osgeo";
>> cmake -G "Unix Makefiles" \
>> -DCMAKE_BUILD_TYPE=Release \
>> -DCMAKE_INCLUDE_PATH=${build_dir}/local/include \
>> -DCMAKE_INSTALL_PREFIX=${build_dir}/local \
>> -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=${build_dir}/local \
>> -DCMAKE_LIBRARY_PATH=${build_dir}/local/lib \
>> -DCMAKE_MODULE_PATH=${build_dir}/ossim_package_support/cmake/CMakeModules \
>> ../../libgeotiff/
>> //-------------
>>
>>
>> Here's the patch to CMakeList.txt.  Note this has hard coded things in
>> it like "lib" that should be variables.  And probably should add version
>> to the library output for unix's...
>>
>> //----------------
>> --- CMakeLists.txt    (revision 2053)
>> +++ CMakeLists.txt    (working copy)
>> @@ -41,13 +41,16 @@
>>   SET(GEOTIFF_BUILD_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin)
>>
>>   # Output directory in which to build RUNTIME target files.
>> -SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${GEOTIFF_BUILD_OUTPUT_DIRECTORY})
>> +# SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${GEOTIFF_BUILD_OUTPUT_DIRECTORY})
>> +SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin)
>>
>>   # Output directory in which to build LIBRARY target files
>> -SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${GEOTIFF_BUILD_OUTPUT_DIRECTORY})
>> +# SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${GEOTIFF_BUILD_OUTPUT_DIRECTORY})
>> +SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
>>
>>   # Output directory in which to build ARCHIVE target files.
>> -SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${GEOTIFF_BUILD_OUTPUT_DIRECTORY})
>> +# SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${GEOTIFF_BUILD_OUTPUT_DIRECTORY})
>> +SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
>>
>>   ###############################################################################
>>   # Platform and compiler specific settings
>> @@ -200,7 +203,6 @@
>>       csv/alias.csv
>>       csv/area.csv
>>       csv/change.csv
>> -    csv/codes.csv
>>       csv/coordinate_axis.csv
>>       csv/coordinate_axis_name.csv
>>       csv/coordinate_operation.csv
>> @@ -223,6 +225,7 @@
>>       csv/stateplane.csv
>>       csv/unit_of_measure.csv
>>       csv/version_history.csv)
>> +#    csv/codes.csv
>>
>>   SET(GEOTIFF_LIB_HEADERS
>>       geotiff.h
>> @@ -247,6 +250,8 @@
>>       epsg_vertcs.inc
>>       geokeys.inc)
>>
>> +
>> +
>>   IF(WIN32)
>>       SET(DEFAULT_LIB_SUBDIR lib)
>>       SET(DEFAULT_DATA_SUBDIR .)
>> @@ -288,13 +293,16 @@
>>   # Install doc files
>>   INSTALL(FILES
>>       AUTHORS ChangeLog COPYING INSTALL LICENSE README README_BIN README.WIN
>> -    DESTINATION ${GEOTIFF_DATA_DIR}/doc)
>> +    DESTINATION doc)
>> +#    DESTINATION ${GEOTIFF_DATA_DIR}/doc)
>>
>>   # Install CSV data files
>> -INSTALL(FILES ${GEOTIFF_CSV_DATA} DESTINATION ${GEOTIFF_DATA_DIR}/epsg_csv)
>> +# INSTALL(FILES ${GEOTIFF_CSV_DATA} DESTINATION
>> ${GEOTIFF_DATA_DIR}/epsg_csv)
>> +INSTALL(FILES ${GEOTIFF_CSV_DATA} DESTINATION share/epsg_csv)
>>
>>   # Install header files for development distribution
>> -INSTALL(FILES ${GEOTIFF_LIB_HEADERS} DESTINATION ${GEOTIFF_INCLUDE_DIR})
>> +# INSTALL(FILES ${GEOTIFF_LIB_HEADERS} DESTINATION ${GEOTIFF_INCLUDE_DIR})
>> +INSTALL(FILES ${GEOTIFF_LIB_HEADERS} DESTINATION include)
>>
>>   ###############################################################################
>>   # Build libxtiff library
>> @@ -348,7 +356,7 @@
>>   ENDIF()
>>
>>   SET_TARGET_PROPERTIES(${GEOTIFF_LIBRARY_TARGET} PROPERTIES
>> -    OUTPUT_NAME ${GEOTIFF_LIB_NAME})
>> +   OUTPUT_NAME ${GEOTIFF_LIB_NAME})
>>
>>   TARGET_LINK_LIBRARIES(${GEOTIFF_LIBRARY_TARGET}
>>       ${TIFF_LIBRARIES}
>> @@ -356,11 +364,16 @@
>>       ${ZLIB_LIBRARIES}
>>       ${JPEG_LIBRARIES})
>>
>> -INSTALL(TARGETS ${GEOTIFF_ARCHIVE_TARGET} ${GEOTIFF_LIBRARY_TARGET}
>> -    RUNTIME DESTINATION ${GEOTIFF_BIN_DIR}
>> -    LIBRARY DESTINATION ${GEOTIFF_LIB_DIR}
>> -    ARCHIVE DESTINATION ${GEOTIFF_LIB_DIR})
>> +# INSTALL(TARGETS ${GEOTIFF_ARCHIVE_TARGET} ${GEOTIFF_LIBRARY_TARGET}
>> +#    RUNTIME DESTINATION ${GEOTIFF_BIN_DIR}
>> +#   LIBRARY DESTINATION ${GEOTIFF_LIB_DIR}
>> +#   ARCHIVE DESTINATION ${GEOTIFF_LIB_DIR})
>>
>> +INSTALL( TARGETS ${GEOTIFF_ARCHIVE_TARGET} ${GEOTIFF_LIBRARY_TARGET}
>> +     RUNTIME DESTINATION bin
>> +         LIBRARY DESTINATION lib
>> +     ARCHIVE DESTINATION lib )
>> +
>>   # Define grouping of source files in PROJECT file (e.g. Visual Studio)
>>   SOURCE_GROUP("CMake Files" FILES CMakeLists.txt)
>>   SOURCE_GROUP("Header Files" FILES ${GEOTIFF_LIB_HEADERS})
>> //---------------------------------------
>>
>>
>> Make install output:
>> $ make install
>> [ 42%] Built target geotiff_archive
>> [ 85%] Built target geotiff_library
>> [ 88%] Built target xtiff
>> [ 91%] Built target applygeo
>> [ 94%] Built target geotifcp
>> [ 97%] Built target listgeo
>> [100%] Built target makegeo
>> Install the project...
>> -- Install configuration: "Release"
>> -- Installing: /work/osgeo/local/doc/AUTHORS
>> -- Installing: /work/osgeo/local/doc/ChangeLog
>> -- Installing: /work/osgeo/local/doc/COPYING
>> -- Installing: /work/osgeo/local/doc/INSTALL
>> -- Installing: /work/osgeo/local/doc/LICENSE
>> -- Installing: /work/osgeo/local/doc/README
>> -- Installing: /work/osgeo/local/doc/README_BIN
>> -- Installing: /work/osgeo/local/doc/README.WIN
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/alias.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/area.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/change.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/coordinate_axis.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/coordinate_axis_name.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/coordinate_operation.csv
>> -- Up-to-date:
>> /work/osgeo/local/share/epsg_csv/coordinate_operation_method.csv
>> -- Up-to-date:
>> /work/osgeo/local/share/epsg_csv/coordinate_operation_parameter.csv
>> -- Up-to-date:
>> /work/osgeo/local/share/epsg_csv/coordinate_operation_parameter_value.csv
>> -- Up-to-date:
>> /work/osgeo/local/share/epsg_csv/coordinate_operation_path.csv
>> -- Up-to-date:
>> /work/osgeo/local/share/epsg_csv/coordinate_reference_system.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/coordinate_system.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/datum.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/ellipsoid.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/esri_datum_override.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/gcs.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/gcs.override.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/naming_system.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/pcs.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/pcs.override.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/prime_meridian.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/projop_wparm.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/stateplane.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/unit_of_measure.csv
>> -- Up-to-date: /work/osgeo/local/share/epsg_csv/version_history.csv
>> -- Up-to-date: /work/osgeo/local/include/geotiff.h
>> -- Up-to-date: /work/osgeo/local/include/geotiffio.h
>> -- Up-to-date: /work/osgeo/local/include/geovalues.h
>> -- Up-to-date: /work/osgeo/local/include/geonames.h
>> -- Up-to-date: /work/osgeo/local/include/geokeys.h
>> -- Up-to-date: /work/osgeo/local/include/geo_config.h
>> -- Up-to-date: /work/osgeo/local/include/geo_tiffp.h
>> -- Up-to-date: /work/osgeo/local/include/geo_keyp.h
>> -- Up-to-date: /work/osgeo/local/include/geo_normalize.h
>> -- Up-to-date: /work/osgeo/local/include/cpl_serv.h
>> -- Up-to-date: /work/osgeo/local/include/geo_simpletags.h
>> -- Up-to-date: /work/osgeo/local/include/epsg_datum.inc
>> -- Up-to-date: /work/osgeo/local/include/epsg_gcs.inc
>> -- Up-to-date: /work/osgeo/local/include/epsg_pm.inc
>> -- Up-to-date: /work/osgeo/local/include/epsg_units.inc
>> -- Up-to-date: /work/osgeo/local/include/geo_ctrans.inc
>> -- Up-to-date: /work/osgeo/local/include/epsg_ellipse.inc
>> -- Up-to-date: /work/osgeo/local/include/epsg_pcs.inc
>> -- Up-to-date: /work/osgeo/local/include/epsg_proj.inc
>> -- Up-to-date: /work/osgeo/local/include/epsg_vertcs.inc
>> -- Up-to-date: /work/osgeo/local/include/geokeys.inc
>> -- Installing: /work/osgeo/local/lib/libgeotiff.a
>> -- Installing: /work/osgeo/local/lib/libgeotiff.so
>> -- Removed runtime path from "/work/osgeo/local/lib/libgeotiff.so"
>> -- Installing: /work/osgeo/local/bin/makegeo
>> -- Removed runtime path from "/work/osgeo/local/bin/makegeo"
>> -- Installing: /work/osgeo/local/bin/listgeo
>> -- Removed runtime path from "/work/osgeo/local/bin/listgeo"
>> -- Installing: /work/osgeo/local/bin/applygeo
>> -- Removed runtime path from "/work/osgeo/local/bin/applygeo"
>> -- Installing: /work/osgeo/local/bin/geotifcp
>> -- Removed runtime path from "/work/osgeo/local/bin/geotifcp"
>>
>> _______________________________________________
>> Geotiff mailing list
>> Geotiff at lists.maptools.org
>> http://lists.maptools.org/mailman/listinfo/geotiff
>


More information about the Geotiff mailing list