[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