1
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
#==========
#
# Copyright (c) 2010, Dan Bethell.
# 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 Dan Bethell nor the names of any
# other contributors to this software 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.
#
#==========
#
# Variables defined by this module:
# Nuke_FOUND
# Nuke_INCLUDE_DIR
# Nuke_COMPILE_FLAGS
# Nuke_LINK_FLAGS
# Nuke_LIBRARIES
# Nuke_LIBRARY_DIR
#
# Usage:
# FIND_PACKAGE( Nuke )
# FIND_PACKAGE( Nuke REQUIRED )
#
# Note:
# You can tell the module where Nuke is installed by setting
# the NUKE_INSTALL_PATH (or setting the NDK_PATH environment
# variable before calling FIND_PACKAGE.
#
# E.g.
# SET( NUKE_INSTALL_PATH "/usr/local/Nuke5.2v3" )
# FIND_PACKAGE( Nuke REQUIRED )
#
#==========
# our includes
FIND_PATH( Nuke_INCLUDE_DIR DDImage/Op.h
$ENV{NDK_PATH}/include
${NUKE_INSTALL_PATH}/include
)
# our library
FIND_LIBRARY( Nuke_LIBRARIES DDImage
$ENV{NDK_PATH}
${NUKE_INSTALL_PATH}
)
SET( Nuke_COMPILE_FLAGS "" )
SET( Nuke_LINK_FLAGS "" )
IF( ${CMAKE_SYSTEM_NAME} MATCHES "Darwin" )
SET( Nuke_COMPILE_FLAGS "-arch i386" )
SET( Nuke_LINK_FLAGS "-arch i386" )
ENDIF( ${CMAKE_SYSTEM_NAME} MATCHES "Darwin" )
# our library path
GET_FILENAME_COMPONENT( Nuke_LIBRARY_DIR ${Nuke_LIBRARIES} PATH )
# did we find everything?
INCLUDE( FindPackageHandleStandardArgs )
FIND_PACKAGE_HANDLE_STANDARD_ARGS( "Nuke" DEFAULT_MSG
Nuke_INCLUDE_DIR
Nuke_LIBRARIES
Nuke_LIBRARY_DIR
)
SET( Nuke_API_VERSION "" )
IF( NUKE_FOUND )
TRY_RUN(NUKE_VERSION_EXITCODE NUKE_VERSION_COMPILED
${CMAKE_BINARY_DIR} ${CMAKE_MODULE_PATH}/TestForDDImageVersion.cxx
COMPILE_DEFINITIONS "-I${Nuke_INCLUDE_DIR}"
RUN_OUTPUT_VARIABLE Nuke_API_VERSION)
message(STATUS "Nuke_API_VERSION: --${Nuke_API_VERSION}--")
ENDIF()
|