Commit 54f51353 authored by Clément Stenac's avatar Clément Stenac

* vlc-config:

   - Fix optarg parsing
   - Set ${libs} after the main loop to get the right exec prefix
   - Give -lvlc_pic if we want PIC
* Java bindings build 
   - Use vlc-config better
   - Use pic for building
parent e45f20e7
......@@ -17,17 +17,14 @@ JCC = gcj -g
JCH = gcjh -jni
# Compile flags
CXXFLAGS += `top_builddir=../.. ../../vlc-config --cflags` -I../../ -I ../../include ${JINCLUDES}
LDFLAGS += -L../../lib -lvlc_pic -fPIC `top_builddir=../.. ../../vlc-config --libs builtin pic`
CXXFLAGS += `top_builddir=../.. ../../vlc-config --cflags pic` -I../../ -I ../../include ${JINCLUDES}
LDFLAGS += -L../../lib -lvlc_pic `top_builddir=../.. ../../vlc-config --libs builtin vlc pic`
# Build targets
all: libjvlc.so VlcClient
# FIXME: -ldbus-1 and -lhal are UGLY
# Problem is vlc-config --libs builtin does not output what is needed to build
# vlc. We need to clean up vlc-config first
libjvlc.so: vlc-glue-jni.o vlc-graphics-jni.o
$(CXX) -ldbus-1 -lhal -shared vlc-glue-jni.o vlc-graphics-jni.o $(LIBJINCLUDES) ${LDFLAGS} -o libjvlc.so
$(CXX) -shared vlc-glue-jni.o vlc-graphics-jni.o $(LIBJINCLUDES) ${LDFLAGS} -o libjvlc.so
vlc-graphics-jni.o: VlcClient
$(CXX) -c vlc-graphics-jni.cc $(CXXFLAGS)
......
......@@ -88,7 +88,6 @@ elif test "${TOP_BUILDDIR}" != ""; then
fi
includes="${includes}"
cppflags="${includes}"
libs="-L@libdir@"
module=""
linkage="c"
......@@ -144,7 +143,7 @@ fi
#
while test $# -gt 0; do
case "$1" in
-*=*) optarg=`echo "$1" | sed 's/-_a-zA-Z0-9*=//'` ;;
-*=*) optarg=`echo "$1" | sed 's/-[_a-zA-Z0-9\-]*=//'` ;;
*) optarg= ;;
esac
......@@ -211,7 +210,12 @@ while test $# -gt 0; do
;;
external)
echo_external=yes
ldflags="${ldflags} -lvlc"
if test "x${echo_pic}" = "xno"
then
ldflags="${ldflags} -lvlc"
else
ldflags="${ldflags} -lvlc_pic"
fi
;;
*)
module="$1"
......@@ -227,6 +231,8 @@ while test $# -gt 0; do
shift
done
libs="-L@libdir@"
#
# If a module was requested, use its name
#
......@@ -304,6 +310,17 @@ fi
if test "${echo_objcflags}" = yes; then
echo "${cppflags} ${objcflags}"
fi
# Libs
# There are 4 possibilities
# - We are a plugin or a builtin
# - We are building from the outside (external):
# - Give full libvlc linkflags + -lvlc(_pic) (in libdir)
# - Link with builtins in libdir
# - We are building something from the inside (builtin)
# - Link with builtins in place
# If you want something shared from the inside (binding),
# you need "builtin vlc pic"
if test "${echo_libs}" = yes; then
if test "${echo_builtin}" = yes; then
for module in `echo "${builtins}"`; do
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment