For zlib you can use the FIND_PACKAGE(Zlib). For others you can make up your own scripts. I will include the contents of one I wrote to find the HDF libraries. Hope it helps out.

#----------------------------------------------------------------------- ----
# This will find the HDF5 libraries and define the following variables:
#  HDF5_FOUND - Is the base HDF5 library and include file found
# HDF5_INCLUDE_DIR - The Include directory containing all the HDF5 include files
#  HDF5_LIBRARY - The Actual HDF5 library
#  HDF5_HL_FOUND - Is the High Level HDF5 API Found
#  HDF5_HL_INCLUDE_DIR - The High Level Include Directory
#  HDF5_HL_LIBRARY - The Actual High Level Library
# HDF5_USE_HIGH_LEVEL - Set this to TRUE if you need to link against the HDF5 High level APIs. # HDF_INSTALL - This is an Environment variable that can be used to help find the HDF5 libraries and Include Directories # HDF5_LIBRARIES - The List of HDF5 libraries that were found. This variable can be used in a LINK_LIBRARIES(...) command

#-- Clear the Library List
SET (HDF5_LIBRARIES "")
#-- Clear the include Directories
SET (HDF5_INCLUDE_DIRS "")

# ------------------ START FIND HDF5 LIBS --------------------------------------

SET (HDF5_FOUND "NO")
SET (HDF5_HL_FOUND "NO")

FIND_PATH(HDF5_INCLUDE_DIR hdf5.h
    /usr/local/include
    /usr/include
    "$ENV{HDF_INSTALL}/include"
)

FIND_LIBRARY(HDF5_LIBRARY hdf5
  /usr/local/lib
  /usr/lib
  "$ENV{HDF_INSTALL}/lib"
)

IF (HDF5_INCLUDE_DIR)
  IF (HDF5_LIBRARY)
    SET (HDF5_FOUND "YES")
    SET (HDF5_LIBRARIES ${HDF5_LIBRARY} ${HDF5_LIBRARIES} )
    INCLUDE_DIRECTORIES( ${HDF5_INCLUDE_DIR} )
    MARK_AS_ADVANCED (HDF5_LIBRARY)
     MARK_AS_ADVANCED ( HDF5_INCLUDE_DIR )
  ELSE (HDF5_LIBRARY)
    SET (HDF5_FOUND "NO")
  ENDIF (HDF5_LIBRARY)
ENDIF (HDF5_INCLUDE_DIR)

# ------------------ START FIND HDF5 HL LIBS -----------------------------------
IF ( HDF5_USE_HIGH_LEVEL )
  FIND_PATH(HDF5_HL_INCLUDE_DIR H5LT.h
      /usr/local/include
      /usr/include
      "$ENV{HDF_INSTALL}/include"
  )

  FIND_LIBRARY(HDF5_HL_LIBRARY hdf5_hl
    /usr/local/lib
    /usr/lib
    "$ENV{HDF_INSTALL}/lib"
  )

  IF (HDF5_HL_INCLUDE_DIR )
    IF (HDF5_HL_LIBRARY)
      SET (HDF5_HL_FOUND "YES")
      SET (HDF5_LIBRARIES ${HDF5_HL_LIBRARY} ${HDF5_LIBRARIES} )
      INCLUDE_DIRECTORIES( ${HDF5_HL_INCLUDE_DIR} )
        MARK_AS_ADVANCED ( HDF5_HL_INCLUDE_DIR )
        MARK_AS_ADVANCED (HDF5_HL_LIBRARY)
    ELSE (HDF5_HL_LIBRARY)
      SET (HDF5_HL_FOUND "NO")
    ENDIF (HDF5_HL_LIBRARY)
  ENDIF (HDF5_HL_INCLUDE_DIR)
ENDIF ( HDF5_USE_HIGH_LEVEL )

-----------------------------------------
--
Mike Jackson   Senior Research Engineer
Innovative Management & Technology Services


On May 16, 2007, at 6:30 PM, Leon Moctezuma wrote:

Hi all.

I'm Leon Moctezuma, a cs student, who is participating in GSoC and working on Freepv, we are trying to use cmake instead of autoconf for the projects building process we have been able to create a basic CMakeLists.txt under both
Linux and Windows, It works almost fine.

At this point I'm very frustrated, after spending several days trying to find common libraries such as zlib, glut or jpeg under Windows, I'm stuck in the same point, I have to indicate where the libraries are using the cmake GUI. I've tried to do several things such as adding libraries' paths to lib and include windows' environment variables, I also created CMAKE_INCLUDE_PATH and CMAKE_LIBRARY_PATH environment variables and tried to make my own FindLibrary.cmake script, but nothing seems to work, could some one guide me, for an example you could use
zlib... which has zconf.h and zlib.h headers and zlib.dll...

Best Regards.

Leon Moctezuma.
_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake

_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to