Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
tsoc
openmm
Commits
8c73b063
"vscode:/vscode.git/clone" did not exist on "c2067be3eaa0f2e98e10854c30898139d5d01d36"
Commit
8c73b063
authored
Sep 26, 2008
by
Mark Friedrichs
Browse files
Mods
parent
10fc2f21
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
157 additions
and
0 deletions
+157
-0
platforms/brook/brook-cmake/FindBrook.cmake
platforms/brook/brook-cmake/FindBrook.cmake
+157
-0
No files found.
platforms/brook/brook-cmake/FindBrook.cmake
0 → 100644
View file @
8c73b063
# - Look for the BrookGPU streaming extension to C language
#
# BROOK_FILE : .BR -> .CPP
# BROOK_INCLUDE_DIR : Include directory for Brook.hpp
# BROOK_C[XX]FLAGS : Flags needed to compile the produced CPP file
# BROOK_LIBRARIES : All needed libraries, including OpenGL for OGL backend
#
# Used internally :
# BROOK_CC : Location of BRCC
# BROOK_xxx_LIBRARY : Location of the various libraries used by brook
#
# ----------------------------------------------------------------------------
FIND_PATH
(
BROOK_INCLUDE_DIR brook
$ENV{BROOKDIR}/include
$ENV{BROOKROOT}/sdk/include
/usr/include/
/usr/local/include/
~/src/cvs/brook/include
~/src/brook/include
~/brook/include
)
SET
(
BROOK_CXXFLAGS
"-I
${
BROOK_INCLUDE_DIR
}
"
)
SET
(
BROOK_CFLAGS
"
${
BROOK_CXXFLAGS
}
"
)
FIND_PROGRAM
(
BROOK_CC brcc
$ENV{BROOKDIR}/bin
$ENV{BROOKROOT}/sdk/bin
/usr/bin/
/usr/local/bin/
~/src/cvs/brook/bin
~/src/brook/bin
~/brook/bin
)
# Search for all libraries
# - both BASE and RUNTIME TARGETS
# ----------------------------------------------------------------------------
FIND_LIBRARY
(
BROOK_brook_LIBRARY
NAMES
${
sub_lib
}
PATHS
$ENV{BROOKDIR}/lib
$ENV{BROOKDIR}/bin
$ENV{BROOKROOT}/sdk/lib
/usr/lib
/usr/local/lib
~/src/brook/bin
~/brook/bin
)
# if found, add to list
IF
(
BROOK_brook_LIBRARY
)
SET
(
BROOK_LIBRARIES
${
BROOK_LIBRARIES
}
${
BROOK_brook_LIBRARY
}
)
ENDIF
(
BROOK_brook_LIBRARY
)
# all individual libs are advanced settings
MARK_AS_ADVANCED
(
BROOK_brook_LIBRARY
)
# ----------------------------------------------------------------------------
IF
(
LOG
)
FILE
(
APPEND
${
LOG_FILE
}
"
\n
In FindBrook.cmake
\n
"
)
FILE
(
APPEND
${
LOG_FILE
}
"BROOK_INCLUDE_DIR=
${
BROOK_INCLUDE_DIR
}
\n
"
)
FILE
(
APPEND
${
LOG_FILE
}
"BROOK_CC=
${
BROOK_CC
}
\n
"
)
FILE
(
APPEND
${
LOG_FILE
}
"BROOK_brook_LIBRARY=
${
BROOK_brook_LIBRARY
}
\n
"
)
ENDIF
(
LOG
)
# ----------------------------------------------------------------------------
# check if includes and main lib are here
IF
(
BROOK_INCLUDE_DIR AND BROOK_brook_LIBRARY AND BROOK_CC
)
SET
(
BROOK_FOUND TRUE
)
GET_FILENAME_COMPONENT
(
BROOK_LIB_PATH
"
${
BROOK_brook_LIBRARY
}
"
PATH
)
# ----------------------------------------------------------------------------
IF
(
LOG
)
FILE
(
APPEND
${
LOG_FILE
}
"BROOK_LIB_PATH=
${
BROOK_LIB_PATH
}
\n
"
)
ENDIF
(
LOG
)
# ----------------------------------------------------------------------------
# Implementation to allow interpreting/compiling Brook files
MACRO
(
BROOK_FILE FILENAME
)
IF
(
LOG
)
FILE
(
APPEND
${
LOG_FILE
}
"1 In BROOK_FILE:
${
FILENAME
}
\n
"
)
ENDIF
(
LOG
)
# split input names
GET_FILENAME_COMPONENT
(
PATH
"
${
FILENAME
}
"
PATH
)
GET_FILENAME_COMPONENT
(
HEAD
"
${
FILENAME
}
"
NAME_WE
)
# without trailing ".BR"
# File names
SET
(
OUTPATH
"
${
CMAKE_CURRENT_BINARY_DIR
}
/src/gpu"
)
SET
(
BROOK_PREFIX
"
${
OUTPATH
}
/
${
HEAD
}
"
)
SET
(
OUTFILE
"
${
BROOK_PREFIX
}
.cpp"
)
# file produced by Brook
# SET(INFILE "${CMAKE_CURRENT_SOURCE_DIR}/${FILENAME}") # canonical input name
SET
(
INFILE
"
${
FILENAME
}
"
)
# canonical input name
# ----------------------------------------------------------------------------
IF
(
LOG
)
FILE
(
APPEND
${
LOG_FILE
}
"In BROOK_FILE:
${
FILENAME
}
FILENAME
\n
"
)
FILE
(
APPEND
${
LOG_FILE
}
" Path=
${
PATH
}
HEAD=
${
HEAD
}
\n
"
)
FILE
(
APPEND
${
LOG_FILE
}
" OUTPATH=
${
OUTPATH
}
\n
BROOK_PREFIX=
${
BROOK_PREFIX
}
\n
"
)
FILE
(
APPEND
${
LOG_FILE
}
" OUTFILE=
${
OUTFILE
}
\n
INFILE=
${
INFILE
}
\n\n
"
)
ENDIF
(
LOG
)
# ----------------------------------------------------------------------------
# create output path, if it does not exist
IF
(
NOT EXISTS
"
${
OUTPATH
}
"
)
FILE
(
MAKE_DIRECTORY
"
${
OUTPATH
}
"
)
ENDIF
(
NOT EXISTS
"
${
OUTPATH
}
"
)
# Run Brook
ADD_CUSTOM_COMMAND
(
OUTPUT
"
${
OUTFILE
}
"
COMMAND
"
${
BROOK_CC
}
"
ARGS
"-o
${
BROOK_PREFIX
}
"
"
${
INFILE
}
"
DEPENDS
"
${
INFILE
}
"
)
# Flag file as generated
SET_SOURCE_FILES_PROPERTIES
(
"
${
OUTFILE
}
"
PROPERTIES GENERATED TRUE
)
# accumulate Brook cpp files
SET
(
BROOK_CPP_FILES
${
BROOK_CPP_FILES
}
${
OUTFILE
}
)
ENDMACRO
(
BROOK_FILE
)
ENDIF
(
BROOK_INCLUDE_DIR AND BROOK_brook_LIBRARY AND BROOK_CC
)
# Some verbosity
IF
(
NOT BROOK_FOUND
)
IF
(
BROOK_FIND_REQUIRED
)
MESSAGE
(
FATAL_ERROR
"Could not find BROOK"
)
ENDIF
(
BROOK_FIND_REQUIRED
)
ENDIF
(
NOT BROOK_FOUND
)
# ----------------------------------------------------------------------------
IF
(
LOG
)
FILE
(
APPEND
${
LOG_FILE
}
"BROOK_FOUND=
${
BROOK_FOUND
}
\n
"
)
FILE
(
APPEND
${
LOG_FILE
}
"
\n
Leaving FindBrook.cmake
\n
"
)
ENDIF
(
LOG
)
# ----------------------------------------------------------------------------
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment