Details | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 204 | chris | 1 | #!/bin/sh |
| 2 | # ARToolKit Configure for Linux Video Devices |
||
| 3 | # |
||
| 4 | ##################################################### |
||
| 5 | |||
| 6 | MDIR=". \ |
||
| 7 | lib/SRC \ |
||
| 8 | lib/SRC/AR lib/SRC/ARMulti lib/SRC/Gl \ |
||
| 9 | lib/SRC/VideoLinux1394Cam lib/SRC/VideoLinuxDV \ |
||
| 10 | lib/SRC/VideoLinuxV4L lib/SRC/VideoSGI \ |
||
| 11 | lib/SRC/VideoMacOSX \ |
||
| 12 | lib/SRC/VideoGStreamer \ |
||
| 13 | lib/SRC/ARvrml \ |
||
| 14 | util \ |
||
| 15 | util/calib_camera2 util/calib_cparam util/calib_distortion \ |
||
| 16 | util/mk_patt util/graphicsTest util/videoTest \ |
||
| 17 | examples \ |
||
| 18 | examples/collide examples/exview \ |
||
| 19 | examples/loadMultiple examples/modeTest examples/multi examples/optical \ |
||
| 20 | examples/paddle examples/paddleDemo examples/paddleInteraction examples/range \ |
||
| 21 | examples/relation examples/simple examples/simple2 examples/simpleLite \ |
||
| 22 | examples/twoView examples/simpleVRML \ |
||
| 23 | " |
||
| 24 | |||
| 25 | SED=/tmp/SED.$$ |
||
| 26 | trap "rm -f $SED; exit 0" 0 1 2 3 15 |
||
| 27 | |||
| 28 | |||
| 29 | |||
| 30 | E=`uname` |
||
| 31 | if [ "$E" = "Linux" ] |
||
| 32 | then |
||
| 33 | echo "Select a video capture driver." |
||
| 34 | echo " 1: Video4Linux" |
||
| 35 | echo " 2: Video4Linux+JPEG Decompression (EyeToy)" |
||
| 36 | echo " 3: Digital Video Camcoder through IEEE 1394 (DV Format)" |
||
| 37 | echo " 4: Digital Video Camera through IEEE 1394 (VGA NONCOMPRESSED Image Format)" |
||
| 38 | echo " 5: GStreamer Media Framework" |
||
| 39 | echo -n "Enter : " |
||
| 40 | read ANS |
||
| 41 | if [ "$ANS" = "1" ] |
||
| 42 | then |
||
| 43 | VIDEO_DRIVER="VideoLinuxV4L" |
||
| 44 | CFLAG="-O -I/usr/X11R6/include" |
||
| 45 | LDFLAG="-L/usr/X11R6/lib" |
||
| 46 | ARFLAG="rs" |
||
| 47 | RANLIB="" |
||
| 48 | LIBS="-lglut -lGLU -lGL -lXi -lXmu -lX11 -lm" |
||
| 49 | CONFIG="AR_INPUT_V4L" |
||
| 50 | elif [ "$ANS" = "2" ] |
||
| 51 | then |
||
| 52 | VIDEO_DRIVER="VideoLinuxV4L" |
||
| 53 | CFLAG="-O -I/usr/X11R6/include -DUSE_EYETOY" |
||
| 54 | LDFLAG="-L/usr/X11R6/lib" |
||
| 55 | ARFLAG="rs" |
||
| 56 | RANLIB="" |
||
| 57 | LIBS="-lglut -lGLU -lGL -lXi -lXmu -lX11 -lm -ljpeg" |
||
| 58 | CONFIG="AR_INPUT_V4L" |
||
| 59 | elif [ "$ANS" = "3" ] |
||
| 60 | then |
||
| 61 | VIDEO_DRIVER="VideoLinuxDV" |
||
| 62 | CFLAG="-O -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/X11R6/include" |
||
| 63 | LDFLAG="-L/usr/X11R6/lib -L/usr/local/lib" |
||
| 64 | ARFLAG="rs" |
||
| 65 | RANLIB="" |
||
| 66 | LIBS="-lraw1394 -ldv -lpthread -lglut -lGLU -lGL -lXi -lXmu -lX11 -lm" |
||
| 67 | CONFIG="AR_INPUT_DV" |
||
| 68 | elif [ "$ANS" = "4" ] |
||
| 69 | then |
||
| 70 | VIDEO_DRIVER="VideoLinux1394Cam" |
||
| 71 | CFLAG="-O -I/usr/X11R6/include" |
||
| 72 | LDFLAG="-L/usr/X11R6/lib" |
||
| 73 | ARFLAG="rs" |
||
| 74 | RANLIB="" |
||
| 75 | LIBS="-lglut -lGLU -lGL -lXi -lXmu -lX11 -lm -lraw1394 -ldc1394_control" |
||
| 76 | CONFIG="AR_INPUT_1394CAM" |
||
| 77 | elif [ "$ANS" = "5" ] |
||
| 78 | then |
||
| 79 | VIDEO_DRIVER="VideoGStreamer" |
||
| 80 | GST_INCLUDE=`pkg-config --cflags gstreamer-0.10` |
||
| 81 | GST_LIBS=`pkg-config --libs gstreamer-0.10` |
||
| 82 | |||
| 83 | CFLAG="-O $GST_INCLUDE -I/usr/X11R6/include" |
||
| 84 | LDFLAG="$GST_LIBS -L/usr/X11R6/lib -L/usr/local/lib" |
||
| 85 | ARFLAG="rs" |
||
| 86 | RANLIB="" |
||
| 87 | LIBS="-lpthread -lglut -lGLU -lGL -lXi -lX11 -lm" |
||
| 88 | CONFIG="AR_INPUT_GSTREAMER" |
||
| 89 | else |
||
| 90 | echo "Please enter 1,2,3,4 or 5." |
||
| 91 | exit 0 |
||
| 92 | fi |
||
| 93 | # Asking for debug mode (assumes gcc) |
||
| 94 | echo "Do you want to create debug symbols? (y or n)" |
||
| 95 | echo -n "Enter : " |
||
| 96 | read ANS |
||
| 97 | if [ "$ANS" = "y" ] |
||
| 98 | then |
||
| 99 | CFLAG="$CFLAG -g" |
||
| 100 | elif [ "$ANS" = "n" ] |
||
| 101 | then |
||
| 102 | CFLAG="$CFLAG" |
||
| 103 | else |
||
| 104 | echo "Please enter y or n." |
||
| 105 | exit 0 |
||
| 106 | fi |
||
| 107 | elif [ "$E" = "IRIX" ] |
||
| 108 | then |
||
| 109 | VIDEO_DRIVER="VideoSGI" |
||
| 110 | CFLAG="-O -n32" |
||
| 111 | LDFLAG="-n32" |
||
| 112 | ARFLAG="rs" |
||
| 113 | RANLIB="" |
||
| 114 | LIBS="-lglut -lGLU -lGL -lXmu -lX11 -lvl -lm" |
||
| 115 | elif [ "$E" = "IRIX64" ] |
||
| 116 | then |
||
| 117 | VIDEO_DRIVER="VideoSGI" |
||
| 118 | CFLAG="-O -n32" |
||
| 119 | LDFLAG="-n32" |
||
| 120 | ARFLAG="rs" |
||
| 121 | RANLIB="" |
||
| 122 | LIBS="-lglut -lGLU -lGL -lXmu -lX11 -lvl -lm" |
||
| 123 | elif [ "$E" = "Darwin" ] |
||
| 124 | then |
||
| 125 | VIDEO_DRIVER="VideoMacOSX" |
||
| 126 | CFLAG="-O" |
||
| 127 | LDFLAG="" |
||
| 128 | ARFLAG="-r" |
||
| 129 | RANLIB="ranlib \$\@" |
||
| 130 | LIBS="-framework Carbon -framework QuickTime -framework GLUT -framework OpenGL -framework AppKit -framework Foundation -lobjc" |
||
| 131 | |||
| 132 | echo "Does your Mac have fast texture mapping hardware? (y or n)" |
||
| 133 | echo -n "Enter : " |
||
| 134 | read ANS |
||
| 135 | if [ "$ANS" = "y" ] |
||
| 136 | then |
||
| 137 | APPLE_FAST_TEX="y" |
||
| 138 | elif [ "$ANS" = "n" ] |
||
| 139 | then |
||
| 140 | APPLE_FAST_TEX="n" |
||
| 141 | else |
||
| 142 | echo "Please enter y or n." |
||
| 143 | exit 0 |
||
| 144 | fi |
||
| 145 | else |
||
| 146 | echo "This configure command supports Linux, IRIX and MacOSX." |
||
| 147 | exit 0 |
||
| 148 | fi |
||
| 149 | |||
| 150 | echo "Build gsub libraries with texture rectangle support? (y or n)" |
||
| 151 | echo "GL_NV_texture_rectangle is supported on most NVidia graphics cards" |
||
| 152 | echo "and on ATi Radeon and better graphics cards" |
||
| 153 | echo -n "Enter : " |
||
| 154 | read ANS |
||
| 155 | if ( [ "$ANS" = "y" ] || [ "$ANS" = "Y" ] || [ "$ANS" = "yes" ] || [ "$ANS" = "YES" ]) |
||
| 156 | then |
||
| 157 | NVEXT="y" |
||
| 158 | elif ( [ "$ANS" = "n" ] || [ "$ANS" = "N" ] || [ "$ANS" = "no" ] || [ "$ANS" = "NO" ]) |
||
| 159 | |||
| 160 | then |
||
| 161 | NVEXT="n" |
||
| 162 | else |
||
| 163 | echo "Please enter y or n." |
||
| 164 | exit 0 |
||
| 165 | fi |
||
| 166 | |||
| 167 | echo $VIDEO_DRIVER | sed -e 's/\//\\\//g' >$SED |
||
| 168 | VIDEO_DRIVER=`cat $SED` |
||
| 169 | echo $CFLAG | sed -e 's/\//\\\//g' >$SED |
||
| 170 | CFLAG=`cat $SED` |
||
| 171 | echo $LDFLAG | sed -e 's/\//\\\//g' >$SED |
||
| 172 | LDFLAG=`cat $SED` |
||
| 173 | echo $ARFLAG | sed -e 's/\//\\\//g' >$SED |
||
| 174 | ARFLAG=`cat $SED` |
||
| 175 | echo $RANLIB | sed -e 's/\//\\\//g' >$SED |
||
| 176 | RANLIB=`cat $SED` |
||
| 177 | echo $LIBS | sed -e 's/\//\\\//g' >$SED |
||
| 178 | LIBS=`cat $SED` |
||
| 179 | |||
| 180 | cat > $SED <<EOF |
||
| 181 | s/@VIDEO_DRIVER@/$VIDEO_DRIVER/ |
||
| 182 | s/@CFLAG@/$CFLAG/ |
||
| 183 | s/@LDFLAG@/$LDFLAG/ |
||
| 184 | s/@ARFLAG@/$ARFLAG/ |
||
| 185 | s/@RANLIB@/$RANLIB/ |
||
| 186 | s/@LIBS@/$LIBS/ |
||
| 187 | EOF |
||
| 188 | |||
| 189 | |||
| 190 | for i in $MDIR |
||
| 191 | do |
||
| 192 | echo " create $i/Makefile" |
||
| 193 | sed -f $SED <$i/Makefile.in > $i/Makefile |
||
| 194 | done |
||
| 195 | |||
| 196 | if [ "$NVEXT" = "y" ] |
||
| 197 | then |
||
| 198 | cat > $SED <<EOF |
||
| 199 | s/#undef AR_OPENGL_TEXTURE_RECTANGLE/#define AR_OPENGL_TEXTURE_RECTANGLE/ |
||
| 200 | EOF |
||
| 201 | elif [ "$NVEXT" = "n" ] |
||
| 202 | then |
||
| 203 | cat > $SED <<EOF |
||
| 204 | s/#undef AR_OPENGL_TEXTURE_RECTANGLE/#undef AR_OPENGL_TEXTURE_RECTANGLE/ |
||
| 205 | EOF |
||
| 206 | fi |
||
| 207 | |||
| 208 | if [ "$APPLE_FAST_TEX" = "y" ] |
||
| 209 | then |
||
| 210 | cat >> $SED <<EOF |
||
| 211 | s/#undef APPLE_TEXTURE_FAST_TRANSFER/#define APPLE_TEXTURE_FAST_TRANSFER/ |
||
| 212 | EOF |
||
| 213 | fi |
||
| 214 | |||
| 215 | if [ $CONFIG ] |
||
| 216 | then |
||
| 217 | UNDEF="#undef $CONFIG" |
||
| 218 | DEF="#define $CONFIG" |
||
| 219 | cat >> $SED <<EOF |
||
| 220 | s/$UNDEF/$DEF/ |
||
| 221 | EOF |
||
| 222 | fi |
||
| 223 | |||
| 224 | echo " create include/AR/config.h" |
||
| 225 | sed -f $SED <include/AR/config.h.in > include/AR/config.h |
||
| 226 | |||
| 227 | echo "Done." |