]> git.sesse.net Git - mlt/blob - src/swig/java/build
Further integrate swig into build system.
[mlt] / src / swig / java / build
1 #!/bin/sh
2
3 if [ "$1" = "clean" ]
4 then
5         ( cd `dirname $0`; rm -rf *.cxx *.so mlt.i ../.java *.class src_swig )
6         exit 0
7 fi
8
9 path=`which java 2> /dev/null`
10
11 if [ $? = 0 ]
12 then
13         # Locate the path for the include
14         path=`dirname $path`
15         path=`dirname $path`
16
17         # Change this as needed
18         # export JAVA_INCLUDE="-I$path/include -I$path/include/linux"
19
20         ln -sf ../mlt.i
21
22         # Invoke swig
23         mkdir -p src_swig/org/mltframework
24         swig -c++ -I../../mlt++ -I../.. -java -outdir src_swig/org/mltframework -package org.mltframework mlt.i || exit $?
25
26         # Compile the wrapper
27         g++ -D_GNU_SOURCE -c -rdynamic -pthread -I../.. mlt_wrap.cxx $JAVA_INCLUDE || exit $?
28         
29         # Create the module
30         gcc -shared mlt_wrap.o -L../../mlt++ -lmlt++ -o libmlt_java.so || exit $?
31
32         # Compile the test
33         javac `find src_swig -name '*.java'` || exit $?
34
35         export CLASSPATH=`pwd`/src_swig
36         javac Play.java
37 else
38         echo "Java command not found"
39         exit 1
40 fi