Skip to content

Commit

Permalink
fakenect: add fakenect helper script
Browse files Browse the repository at this point in the history
Add a shell script to call libfreenect applications with fakenect.

Simplifies the use of fakenect by not requiring users to know or specify
environment variables and the like.

Usage:
fakenect <database> <application> <args>

Signed-off-by: Evan Shelhamer <shelhamer@imaginarynumber.net>
Signed-off-by: Drew Fisher <drew.m.fisher@gmail.com>
  • Loading branch information
shelhamer authored and zarvox committed Nov 14, 2011
1 parent 8755990 commit 3f4aba8
Show file tree
Hide file tree
Showing 2 changed files with 59 additions and 1 deletion.
9 changes: 8 additions & 1 deletion fakenect/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,11 @@ install (TARGETS fakenect
add_executable(record record.c)
target_link_libraries(record freenect m)
install (TARGETS record
DESTINATION bin)
DESTINATION bin)

CONFIGURE_FILE("fakenect.sh.in"
"fakenect.sh"
IMMEDIATE @ONLY)
install (PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/fakenect.sh
DESTINATION bin
RENAME fakenect)
51 changes: 51 additions & 0 deletions fakenect/fakenect.sh.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
#!/bin/bash

# This file is part of the OpenKinect Project. http://www.openkinect.org
#
# Copyright (c) 2010 individual OpenKinect contributors. See the CONTRIB file
# for details.
#
# This code is licensed to you under the terms of the Apache License, version
# 2.0, or, at your option, the terms of the GNU General Public License,
# version 2.0. See the APACHE20 and GPL20 files for the text of the licenses,
# or the following URLs:
# http://www.apache.org/licenses/LICENSE-2.0
# http://www.gnu.org/licenses/gpl-2.0.txt
#
# If you redistribute this file in source form, modified or unmodified,
# you may:
# 1) Leave this header intact and distribute it under the same terms,
# accompanying it with the APACHE20 and GPL20 files, or
# 2) Delete the Apache 2.0 clause and accompany it with the GPL20 file, or
# 3) Delete the GPL v2.0 clause and accompany it with the APACHE20 file
# In all cases you must keep the copyright notice intact and include a copy
# of the CONTRIB file.
# Binary distributions must follow the binary distribution requirements of
# either License.

# fakenect wrapper script:
# simplifies calling libfreenect applications under fakenect
# by taking the fakenect database, app to run, and its args
# then filling out the necessary environment variables and calling the app
# usage: fakenect /path/to/fakenect/dump app --arg=value

# catch bad args
if [ $# -lt 2 ]
then
echo "Usage: $0 <database> <application> <args>"
exit -1
fi

# set path to fakenect database
export FAKENECT_PATH=$1

# set link path (LD_LIBRARY_PATH for Linux, DYLIB_LIBRARY_PATH for OS X)
if [ `uname` == "Darwin" ];
then
export DYLD_LIBRARY_PATH="@CMAKE_INSTALL_PREFIX@/@PROJECT_LIBRARY_INSTALL_DIR@/fakenect/:${LD_LIBRARY_PATH}"
else
export LD_LIBRARY_PATH="@CMAKE_INSTALL_PREFIX@/@PROJECT_LIBRARY_INSTALL_DIR@/fakenect/:${LD_LIBRARY_PATH}"
fi

# run desired app w/ args, now that environment is configured
"${@:2}"

0 comments on commit 3f4aba8

Please sign in to comment.