Permalink
Browse files

From Eric Wing, "Attached are a few Find modules with updates. Among …

…other things, they

contain better support for environmental variables to pre-empt the
autodection default search path order which is very helpful for people
who do automated builds. (I recommend that the remaining modules
consider adding the same system to make things consistent and easier
for those people that want to do the automated builds.)

The CMAKE_PREFIX_PATH has also been added to help people. I don't
recommend adding this to the other modules because it looks like CMake
agreed with my idea and will be adding the support in 2.6. So when
that ships, people will get it for free. (In the meantime, my modules
that do have it, it can be used.)

Finally, I've submitted all of these modules to official CMake plus
more so they will be in the next version of CMake. It looks like I may
need to sort some compatibility issues out with the KDE people who
seem to have conflicting modules, but this is unrelated to the updates
submitted here as OSG already has these conflicts. I figured I would
just sync OSG up with my current/best versions.

Also of note, I added the large batch of Findosg*.cmake modules to
CMake so people building against OpenSceneGraph can use these without
writing their own. I wasn't sure if I should submit them here or not
since they are for building against OSG and not for building OSG
itself. So they are not included.
"
  • Loading branch information...
osg-training-guest committed Jan 4, 2008
1 parent eeb6f37 commit 80f9651303f26b9431ec625ee21c082eecd4e6fb
@@ -25,55 +25,92 @@
# I'm going to attempt to cut out the middleman and hope
# everything still works.
FIND_PATH(FREETYPE_INCLUDE_DIR_ft2build ft2build.h
- $ENV{FREETYPE_DIR}
- /usr/local/include
- /usr/include
- /usr/local/X11R6
- /usr/X11R6/include
- /sw/include
- /opt/local/include
- /opt/csw/include
- /opt/include
- /usr/freeware/include/freetype2
+ $ENV{FREETYPE_DIR}
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES include
+)
+FIND_PATH(FREETYPE_INCLUDE_DIR_ft2build ft2build.h
+ PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES include
+)
+FIND_PATH(FREETYPE_INCLUDE_DIR_ft2build ft2build.h
+ PATHS
+ /usr/local
+ /usr
+ /usr/local/X11R6
+ /usr/local/X11
+ /usr/X11R6
+ /usr/X11
+ /sw
+ /opt/local
+ /opt/csw
+ /opt
+ /usr/freeware
+ PATH_SUFFIXES include
)
FIND_PATH(FREETYPE_INCLUDE_DIR_freetype2 freetype/config/ftheader.h
- $ENV{FREETYPE_DIR}/include/freetype2
- /usr/local/include/freetype2
- /usr/include/freetype2
- /usr/local/X11R6/include/freetype2
- /usr/X11R6/include/freetype2
- /sw/include/freetype2
- /opt/local/include/freetype2
- /opt/csw/include/freetype2
- /opt/include/freetype2
- /usr/freeware/include/freetype2
+ $ENV{FREETYPE_DIR}/include/freetype2
+ NO_DEFAULT_PATH
+)
+FIND_PATH(FREETYPE_INCLUDE_DIR_freetype2 freetype/config/ftheader.h
+ PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES include/freetype2
+)
+FIND_PATH(FREETYPE_INCLUDE_DIR_freetype2 freetype/config/ftheader.h
+ /usr/local/include/freetype2
+ /usr/include/freetype2
+ /usr/local/X11R6/include/freetype2
+ /usr/local/X11/include/freetype2
+ /usr/X11R6/include/freetype2
+ /usr/X11/include/freetype2
+ /sw/include/freetype2
+ /opt/local/include/freetype2
+ /opt/csw/include/freetype2
+ /opt/include/freetype2
+ /usr/freeware/include/freetype2
)
FIND_LIBRARY(FREETYPE_LIBRARY
- NAMES freetype libfreetype freetype219
- PATHS
- $ENV{FREETYPE_DIR}/lib
- $ENV{FREETYPE_DIR}/lib
- /usr/local/lib
- /usr/lib
- /usr/local/X11R6/lib
- /usr/X11R6/lib
- /sw/lib
- /opt/local/lib
- /opt/csw/lib
- /opt/lib
- /usr/freeware/lib64
+ NAMES freetype libfreetype freetype219
+ PATHS
+ $ENV{FREETYPE_DIR}
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES lib64 lib
+)
+FIND_LIBRARY(FREETYPE_LIBRARY
+ NAMES freetype libfreetype freetype219
+ PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES lib64 lib
+)
+FIND_LIBRARY(FREETYPE_LIBRARY
+ NAMES freetype libfreetype freetype219
+ PATHS
+ /usr/local
+ /usr
+ /usr/local/X11R6
+ /usr/local/X11
+ /usr/X11R6
+ /usr/X11
+ /sw
+ /opt/local
+ /opt/csw
+ /opt
+ /usr/freeware
+ PATH_SUFFIXES lib64 lib
)
IF(FREETYPE_INCLUDE_DIR_ft2build AND FREETYPE_INCLUDE_DIR_freetype2)
- SET(FREETYPE_INCLUDE_DIRS "${FREETYPE_INCLUDE_DIR_ft2build};${FREETYPE_INCLUDE_DIR_freetype2}")
+ SET(FREETYPE_INCLUDE_DIRS "${FREETYPE_INCLUDE_DIR_ft2build};${FREETYPE_INCLUDE_DIR_freetype2}")
ENDIF(FREETYPE_INCLUDE_DIR_ft2build AND FREETYPE_INCLUDE_DIR_freetype2)
SET(FREETYPE_FOUND "NO")
IF(FREETYPE_LIBRARY AND FREETYPE_INCLUDE_DIRS)
- SET(FREETYPE_FOUND "YES")
+ SET(FREETYPE_FOUND "YES")
ENDIF(FREETYPE_LIBRARY AND FREETYPE_INCLUDE_DIRS)
View
@@ -4,55 +4,90 @@
# GDAL_FOUND, if false, do not try to link to gdal
# GDAL_INCLUDE_DIR, where to find the headers
#
-# $GDAL_DIR is an environment variable that would
+# $GDALDIR is an environment variable that would
# correspond to the ./configure --prefix=$GDAL_DIR
+# used in building gdal.
#
-# Created by Robert Osfield.
+# Created by Eric Wing. I'm not a gdal user, but OpenSceneGraph uses it
+# for osgTerrain so I whipped this module together for completeness.
+# I actually don't know the conventions or where files are typically
+# placed in distros.
+# Any real gdal users are encouraged to correct this (but please don't
+# break the OS X framework stuff when doing so which is what usually seems
+# to happen).
+
+# This makes the presumption that you are include gdal.h like
+# #include "gdal.h"
FIND_PATH(GDAL_INCLUDE_DIR gdal.h
- ${GDAL_DIR}/include
- $ENV{GDAL_DIR}/include
- $ENV{GDAL_DIR}
- $ENV{OSGDIR}/include
- $ENV{OSGDIR}
- $ENV{OSG_ROOT}/include
- ~/Library/Frameworks
- /Library/Frameworks
- /usr/local/include
- /usr/include
- /usr/include/gdal
- /sw/include # Fink
- /opt/local/include # DarwinPorts
- /opt/csw/include # Blastwave
- /opt/include
- [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
- /usr/freeware/include
+ $ENV{GDAL_DIR}
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES include
+)
+
+FIND_PATH(GDAL_INCLUDE_DIR gdal.h
+ PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES include
+)
+
+FIND_PATH(GDAL_INCLUDE_DIR gdal.h
+ PATHS
+ ~/Library/Frameworks/gdal.framework/Headers
+ /Library/Frameworks/gdal.framework/Headers
+ /usr/local/include/gdal
+ /usr/local/include/GDAL
+ /usr/local/include
+ /usr/include/gdal
+ /usr/include/GDAL
+ /usr/include
+ /sw/include/gdal
+ /sw/include/GDAL
+ /sw/include # Fink
+ /opt/local/include/gdal
+ /opt/local/include/GDAL
+ /opt/local/include # DarwinPorts
+ /opt/csw/include/gdal
+ /opt/csw/include/GDAL
+ /opt/csw/include # Blastwave
+ /opt/include/gdal
+ /opt/include/GDAL
+ /opt/include
)
FIND_LIBRARY(GDAL_LIBRARY
- NAMES gdal gdal_i gdal1.4.0 gdal1.3.2
- PATHS
- ${GDAL_DIR}/lib
- $ENV{GDAL_DIR}/lib
- $ENV{GDAL_DIR}
- $ENV{OSGDIR}/lib
- $ENV{OSGDIR}
- $ENV{OSG_ROOT}/lib
+ NAMES gdal GDAL
+ PATHS
+ $ENV{GDAL_DIR}
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES lib64 lib
+)
+FIND_LIBRARY(GDAL_LIBRARY
+ NAMES gdal GDAL
+ PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES lib64 lib
+)
+FIND_LIBRARY(GDAL_LIBRARY
+ NAMES gdal GDAL
+ PATHS
~/Library/Frameworks
/Library/Frameworks
- /usr/local/lib
- /usr/lib
- /sw/lib
- /opt/local/lib
- /opt/csw/lib
- /opt/lib
- [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
- /usr/freeware/lib64
+ /usr/local
+ /usr
+ /sw
+ /opt/local
+ /opt/csw
+ /opt
+ /usr/freeware
+ [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;GDAL_ROOT]/lib
+ PATH_SUFFIXES lib64 lib
)
SET(GDAL_FOUND "NO")
IF(GDAL_LIBRARY AND GDAL_INCLUDE_DIR)
- SET(GDAL_FOUND "YES")
+ SET(GDAL_FOUND "YES")
ENDIF(GDAL_LIBRARY AND GDAL_INCLUDE_DIR)
+
@@ -1,56 +1,74 @@
-# Locate gdal
# This module defines
# GIFLIB_LIBRARY
-# GIFLIB_FOUND, if false, do not try to link to gdal
+# GIFLIB_FOUND, if false, do not try to link
# GIFLIB_INCLUDE_DIR, where to find the headers
#
# $GIFLIB_DIR is an environment variable that would
# correspond to the ./configure --prefix=$GIFLIB_DIR
-# used in building gdal.
#
# Created by Eric Wing.
FIND_PATH(GIFLIB_INCLUDE_DIR gif_lib.h
- $ENV{GIFLIB_DIR}/include
- $ENV{GIFLIB_DIR}
- $ENV{OSGDIR}/include
- $ENV{OSGDIR}
- $ENV{OSG_ROOT}/include
- ~/Library/Frameworks
- /Library/Frameworks
- /usr/local/include
- /usr/include
- /sw/include # Fink
- /opt/local/include # DarwinPorts
- /opt/csw/include # Blastwave
- /opt/include
- [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
- /usr/freeware/include
+ PATHS
+ $ENV{GIFLIB_DIR}
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES include
+)
+
+FIND_PATH(GIFLIB_INCLUDE_DIR gif_lib.h
+ PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES include
+)
+
+FIND_PATH(GIFLIB_INCLUDE_DIR gif_lib.h
+ PATHS
+ ~/Library/Frameworks
+ /Library/Frameworks
+ /usr/local/include
+ /usr/include
+ /sw/include # Fink
+ /opt/local/include # DarwinPorts
+ /opt/csw/include # Blastwave
+ /opt/include
+ [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
+ /usr/freeware/include
+)
+
+FIND_LIBRARY(GIFLIB_LIBRARY
+ NAMES gif ungif libgif libungif
+ PATHS
+ $ENV{GIFLIB_DIR}
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES lib64 lib
+)
+
+FIND_LIBRARY(GIFLIB_LIBRARY
+ NAMES gif ungif libgif libungif
+ PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES lib64 lib
)
FIND_LIBRARY(GIFLIB_LIBRARY
- NAMES gif ungif libgif libungif
- PATHS
- $ENV{GIFLIB_DIR}/lib
- $ENV{GIFLIB_DIR}
- $ENV{OSGDIR}/lib
- $ENV{OSGDIR}
- $ENV{OSG_ROOT}/lib
- ~/Library/Frameworks
- /Library/Frameworks
- /usr/local/lib
- /usr/lib
- /sw/lib
- /opt/local/lib
- /opt/csw/lib
- /opt/lib
- [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
- /usr/freeware/lib64
+ NAMES gif ungif libgif libungif
+ PATHS
+ ~/Library/Frameworks
+ /Library/Frameworks
+ /usr/local
+ /usr
+ /sw
+ /opt/local
+ /opt/csw
+ /opt
+ [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]
+ /usr/freeware
+ PATH_SUFFIXES lib64 lib
)
SET(GIFLIB_FOUND "NO")
IF(GIFLIB_LIBRARY AND GIFLIB_INCLUDE_DIR)
- SET(GIFLIB_FOUND "YES")
+ SET(GIFLIB_FOUND "YES")
ENDIF(GIFLIB_LIBRARY AND GIFLIB_INCLUDE_DIR)
Oops, something went wrong.

0 comments on commit 80f9651

Please sign in to comment.