to b) from myself:

I read through the android doc, and it suggests to include the libraries as 
prebuild, so I added lines like this (see Android.mk.txt for the full file):

OSG_SDK:=/media/christian/DATA/android-osg-sdk/gles1/${APP_ABI}
OSG_SDK_3RDPARTY_LIB_PATH:=${OSG_SDK}/obj/local/${APP_ABI}
THRD_PARTY_SRC:=/media/christian/DATA/3rdparty

include $(CLEAR_VARS)
LOCAL_MODULE    := jpeg
LOCAL_EXPORT_C_INCLUDES := $(THRD_PARTY_SRC)/libjpeg
LOCAL_EXPORT_CPP_INCLUDES := $(THRD_PARTY_SRC)/libjpeg
LOCAL_SRC_FILES := $(OSG_SDK_3RDPARTY_LIB_PATH)/libjpeg.a
include $(PREBUILT_STATIC_LIBRARY)

[... same for the other libs ...]

### GLES1 build
include $(CLEAR_VARS)
OSG_SDK:=/media/christian/DATA/android-osg-sdk/gles1/${APP_ABI}
OSG_SDK_LIB_PATH:=$(OSG_SDK)/lib
OSG_SDK_PLUGIN_PATH:=$(OSG_SDK_LIB_PATH)/osgPlugins-3.3.8

ifneq (,$(wildcard $(OSG_SDK)/include/osg/Config))

    APP_MODULES       := jniosg-gles1
    LOCAL_CFLAGS      := -Werror -fno-short-enums -fPIC
    LOCAL_CPPFLAGS    := -DOSG_LIBRARY_STATIC 
    LOCAL_SRC_FILES   := $(OSG_SRC_FILES)
    LOCAL_MODULE      := libjniosg-gles1
    LOCAL_LDLIBS      := -llog -lGLESv1_CM -ldl
    LOCAL_STATIC_LIBRARIES := jpeg gif png curl tiff
    LOCAL_C_INCLUDES  := $(OSG_SDK)/include
    LOCAL_CPP_INCLUDES := $(OSG_SDK)/include
    TARGET_LDLIBS     := $(OSG_LDLIBS)
    LOCAL_LDFLAGS := -L$(OSG_SDK_LIB_PATH) -L$(OSG_SDK_PLUGIN_PATH)
    include $(BUILD_SHARED_LIBRARY)
else
    $(warning Unable to find osg/Config file in the headers, not building 
libjniosg-gles1 module)
endif

[...]

Cheers,
Christian

------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=64665#64665



cmake .. 
-DCMAKE_TOOLCHAIN_FILE=../PlatformSpecifics/Android/android.toolchain.cmake  \
         -DOPENGL_PROFILE="GLES2" -DDYNAMIC_OPENTHREADS=OFF 
-DDYNAMIC_OPENSCENEGRAPH=OFF \
         -DANDROID_NATIVE_API_LEVEL=15 \
         -DANDROID_ABI=armeabi \
         
-DCMAKE_INSTALL_PREFIX=/media/christian/DATA/android-osg-sdk/gles2/armeabi \
         -DOSG_GL1_AVAILABLE=OFF \
         -DOSG_GL2_AVAILABLE=OFF \
         -DOSG_GL3_AVAILABLE=OFF \
         -DOSG_GLES1_AVAILABLE=OFF \
         -DOSG_GLES2_AVAILABLE=ON \
         -DOSG_GL_LIBRARY_STATIC=OFF \
         -DOSG_GL_DISPLAYLISTS_AVAILABLE=OFF \
         -DOSG_GL_MATRICES_AVAILABLE=OFF \
         -DOSG_GL_VERTEX_FUNCS_AVAILABLE=OFF \
         -DOSG_GL_VERTEX_ARRAY_FUNCS_AVAILABLE=OFF \
         -DOSG_GL_FIXED_FUNCTION_AVAILABLE=OFF \
         -DCURL_DIR=../3rdparty/curl \
         -DCURL_IS_STATIC=ON \
         -DGDAL_DIR=../3rdparty/gdal/include \
         -DGIFLIB_INCLUDE_DIR=../3rdparty/giflib \
         -DJPEG_INCLUDE_DIR=../3rdparty/libjpeg \
         -DPNG_INCLUDE_DIR=../3rdparty/libpng \
         -DTIFF_INCLUDE_DIR=../3rdparty/libtiff

cmake .. 
-DCMAKE_TOOLCHAIN_FILE=../PlatformSpecifics/Android/android.toolchain.cmake  \
         -DOPENGL_PROFILE="GLES2" -DDYNAMIC_OPENTHREADS=OFF 
-DDYNAMIC_OPENSCENEGRAPH=OFF \
         -DANDROID_NATIVE_API_LEVEL=15 \
         -DANDROID_ABI=armeabi-v7a \
         
-DCMAKE_INSTALL_PREFIX=/media/christian/DATA/android-osg-sdk/gles2/armeabi-v7a \
         -DOSG_GL1_AVAILABLE=OFF \
         -DOSG_GL2_AVAILABLE=OFF \
         -DOSG_GL3_AVAILABLE=OFF \
         -DOSG_GLES1_AVAILABLE=OFF \
         -DOSG_GLES2_AVAILABLE=ON \
         -DOSG_GL_LIBRARY_STATIC=OFF \
         -DOSG_GL_DISPLAYLISTS_AVAILABLE=OFF \
         -DOSG_GL_MATRICES_AVAILABLE=OFF \
         -DOSG_GL_VERTEX_FUNCS_AVAILABLE=OFF \
         -DOSG_GL_VERTEX_ARRAY_FUNCS_AVAILABLE=OFF \
         -DOSG_GL_FIXED_FUNCTION_AVAILABLE=OFF \
         -DCURL_DIR=../3rdparty/curl \
         -DCURL_IS_STATIC=ON \
         -DGDAL_DIR=../3rdparty/gdal/include \
         -DGIFLIB_INCLUDE_DIR=../3rdparty/giflib \
         -DJPEG_INCLUDE_DIR=../3rdparty/libjpeg \
         -DPNG_INCLUDE_DIR=../3rdparty/libpng \
         -DTIFF_INCLUDE_DIR=../3rdparty/libtiff
cmake .. 
-DCMAKE_TOOLCHAIN_FILE=../PlatformSpecifics/Android/android.toolchain.cmake  \
         -DOPENGL_PROFILE="GLES1" -DDYNAMIC_OPENTHREADS=OFF 
-DDYNAMIC_OPENSCENEGRAPH=OFF \
         -DANDROID_NATIVE_API_LEVEL=15 \
         -DANDROID_ABI=armeabi \
         
-DCMAKE_INSTALL_PREFIX=/media/christian/DATA/android-osg-sdk/gles1/armeabi \
         -DOSG_GL1_AVAILABLE=OFF \
         -DOSG_GL2_AVAILABLE=OFF \
         -DOSG_GL3_AVAILABLE=OFF \
         -DOSG_GLES1_AVAILABLE=ON \
         -DOSG_GLES2_AVAILABLE=OFF \
         -DOSG_GL_LIBRARY_STATIC=OFF \
         -DOSG_GL_DISPLAYLISTS_AVAILABLE=OFF \
         -DOSG_GL_MATRICES_AVAILABLE=ON \
         -DOSG_GL_VERTEX_FUNCS_AVAILABLE=ON \
         -DOSG_GL_VERTEX_ARRAY_FUNCS_AVAILABLE=ON \
         -DOSG_GL_FIXED_FUNCTION_AVAILABLE=ON \
         -DCURL_DIR=../3rdparty/curl \
         -DCURL_IS_STATIC=ON \
         -DGDAL_DIR=../3rdparty/gdal/include \
         -DGIFLIB_INCLUDE_DIR=../3rdparty/giflib \
         -DJPEG_INCLUDE_DIR=../3rdparty/libjpeg \
         -DPNG_INCLUDE_DIR=../3rdparty/libpng \
         -DTIFF_INCLUDE_DIR=../3rdparty/libtiff


cmake .. 
-DCMAKE_TOOLCHAIN_FILE=../PlatformSpecifics/Android/android.toolchain.cmake  \
         -DOPENGL_PROFILE="GLES1" -DDYNAMIC_OPENTHREADS=OFF 
-DDYNAMIC_OPENSCENEGRAPH=OFF \
         -DANDROID_NATIVE_API_LEVEL=15 \
         -DANDROID_ABI=armeabi-v7a \
         
-DCMAKE_INSTALL_PREFIX=/media/christian/DATA/android-osg-sdk/gles1/armeabi-v7a \
         -DOSG_GL1_AVAILABLE = OFF \
         -DOSG_GL2_AVAILABLE = OFF \
         -DOSG_GL3_AVAILABLE = OFF \
         -DOSG_GLES1_AVAILABLE = ON \
         -DOSG_GLES2_AVAILABLE = OFF \
         -DOSG_GL_LIBRARY_STATIC = OFF \
         -DOSG_GL_DISPLAYLISTS_AVAILABLE = OFF \
         -DOSG_GL_MATRICES_AVAILABLE = ON \
         -DOSG_GL_VERTEX_FUNCS_AVAILABLE = ON \
         -DOSG_GL_VERTEX_ARRAY_FUNCS_AVAILABLE = ON \
         -DOSG_GL_FIXED_FUNCTION_AVAILABLE = ON \
         -DCURL_DIR=../3rdparty/curl \
         -DCURL_IS_STATIC=ON \
         -DGDAL_DIR=../3rdparty/gdal/include \
         -DGIFLIB_INCLUDE_DIR=../3rdparty/giflib \
         -DJPEG_INCLUDE_DIR=../3rdparty/libjpeg \
         -DPNG_INCLUDE_DIR=../3rdparty/libpng \
         -DTIFF_INCLUDE_DIR=../3rdparty/libtiff
LOCAL_PATH := $(call my-dir)
 
OSG_SRC_FILES := \
JNIosgViewer.cpp \
JNIosg.cpp \
JNIosgDB.cpp \
JNIosgUtil.cpp \
JNIosgGA.cpp \
JNIUtils.cpp \
MultiViewNode.cpp \
GLES2ShaderGenVisitor.cpp

OSG_LDLIBS := \
-losgdb_osg \
-losgdb_ive \
-losgdb_rgb \
-losgdb_bmp \
-losgdb_tga \
-losgdb_stl \
-losgdb_obj \
-losgdb_dxf \
-losgdb_curl \
-losgdb_gif \
-losgdb_jpeg \
-losgdb_openflight \
-losgdb_serializers_osgvolume \
-losgdb_serializers_osgtext \
-losgdb_serializers_osgterrain \
-losgdb_serializers_osgsim \
-losgdb_serializers_osgshadow \
-losgdb_serializers_osgparticle \
-losgdb_serializers_osgmanipulator \
-losgdb_serializers_osgfx \
-losgdb_serializers_osganimation \
-losgdb_serializers_osgui \
-losgdb_serializers_osgviewer \
-losgdb_serializers_osgga \
-losgdb_serializers_osgutil \
-losgdb_serializers_osg \
-losgdb_deprecated_osgwidget \
-losgdb_deprecated_osgviewer \
-losgdb_deprecated_osgvolume \
-losgdb_deprecated_osgtext \
-losgdb_deprecated_osgterrain \
-losgdb_deprecated_osgsim \
-losgdb_deprecated_osgshadow \
-losgdb_deprecated_osgparticle \
-losgdb_deprecated_osgfx \
-losgdb_deprecated_osganimation \
-losgdb_deprecated_osg \
-losgPresentation \
-losgWidget \
-losgUI \
-losgViewer \
-losgVolume \
-losgTerrain \
-losgText \
-losgShadow \
-losgSim \
-losgParticle \
-losgManipulator \
-losgGA \
-losgFX \
-losgDB \
-losgAnimation \
-losgUtil \
-losg \
-lOpenThreads

#-losgdb_serializers_osgpresentation \

### Static preparation
OSG_SDK:=/media/christian/DATA/android-osg-sdk/gles1/${APP_ABI}
OSG_SDK_3RDPARTY_LIB_PATH:=${OSG_SDK}/obj/local/${APP_ABI}
THRD_PARTY_SRC:=/media/christian/DATA/3rdparty

include $(CLEAR_VARS)
LOCAL_MODULE    := jpeg
LOCAL_EXPORT_C_INCLUDES := $(THRD_PARTY_SRC)/libjpeg
LOCAL_EXPORT_CPP_INCLUDES := $(THRD_PARTY_SRC)/libjpeg
LOCAL_SRC_FILES := $(OSG_SDK_3RDPARTY_LIB_PATH)/libjpeg.a
include $(PREBUILT_STATIC_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := gif
LOCAL_EXPORT_C_INCLUDES := $(THRD_PARTY_SRC)/giflib
LOCAL_EXPORT_CPP_INCLUDES := $(THRD_PARTY_SRC)/giflib
LOCAL_SRC_FILES := $(OSG_SDK_3RDPARTY_LIB_PATH)/libgif.a
include $(PREBUILT_STATIC_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := png
LOCAL_EXPORT_C_INCLUDES := $(THRD_PARTY_SRC)/libpng
LOCAL_EXPORT_CPP_INCLUDES := $(THRD_PARTY_SRC)/libpng
LOCAL_SRC_FILES := $(OSG_SDK_3RDPARTY_LIB_PATH)/libpng.a
include $(PREBUILT_STATIC_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := curl
LOCAL_EXPORT_C_INCLUDES := $(THRD_PARTY_SRC)/curl/include
LOCAL_EXPORT_CPP_INCLUDES := $(THRD_PARTY_SRC)/curl/include
LOCAL_SRC_FILES := $(OSG_SDK_3RDPARTY_LIB_PATH)/libcurl.a
include $(PREBUILT_STATIC_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := tiff
LOCAL_EXPORT_C_INCLUDES := $(THRD_PARTY_SRC)/libtiff
LOCAL_EXPORT_CPP_INCLUDES := $(THRD_PARTY_SRC)/libtiff
LOCAL_SRC_FILES := $(OSG_SDK_3RDPARTY_LIB_PATH)/libtiff.a
include $(PREBUILT_STATIC_LIBRARY)

### GLES1 build
include $(CLEAR_VARS)
OSG_SDK:=/media/christian/DATA/android-osg-sdk/gles1/${APP_ABI}
OSG_SDK_LIB_PATH:=$(OSG_SDK)/lib
OSG_SDK_PLUGIN_PATH:=$(OSG_SDK_LIB_PATH)/osgPlugins-3.3.8

ifneq (,$(wildcard $(OSG_SDK)/include/osg/Config))

    APP_MODULES       := jniosg-gles1
    LOCAL_CFLAGS      := -Werror -fno-short-enums -fPIC
    LOCAL_CPPFLAGS    := -DOSG_LIBRARY_STATIC 
    LOCAL_SRC_FILES   := $(OSG_SRC_FILES)
    LOCAL_MODULE      := libjniosg-gles1
    LOCAL_LDLIBS      := -llog -lGLESv1_CM -ldl
    #LOCAL_SHARED_LIBRARIES := -ljpeg -lgif -lpng -lcurl -ltiff
    LOCAL_STATIC_LIBRARIES := jpeg gif png curl tiff
    LOCAL_C_INCLUDES  := $(OSG_SDK)/include
    LOCAL_CPP_INCLUDES := $(OSG_SDK)/include
    TARGET_LDLIBS     := $(OSG_LDLIBS)
    LOCAL_LDFLAGS := -L$(OSG_SDK_LIB_PATH) -L$(OSG_SDK_PLUGIN_PATH)# 
-L$(OSG_SDK_3RDPARTY_LIB_PATH)
    include $(BUILD_SHARED_LIBRARY)
else
    $(warning Unable to find osg/Config file in the headers, not building 
libjniosg-gles1 module)
endif

### GLES2 build
include $(CLEAR_VARS)
OSG_SDK2:=/media/christian/DATA/android-osg-sdk/gles2/${APP_ABI}
OSG_SDK2_LIB_PATH:=$(OSG_SDK2)/lib
OSG_SDK2_PLUGIN_PATH:=$(OSG_SDK2_LIB_PATH)/osgPlugins-3.3.8
ifneq ( ,$(wildcard $(OSG_SDK2)/include/osg/Config))

    APP_MODULES       := jniosg-gles2
    LOCAL_CFLAGS      := -Werror -fno-short-enums -fPIC
    LOCAL_CPPFLAGS    := -DOSG_LIBRARY_STATIC 
    LOCAL_SRC_FILES   := $(OSG_SRC_FILES)
    LOCAL_MODULE      := libjniosg-gles2
    LOCAL_LDLIBS      := -llog -lGLESv2 -ldl
    #LOCAL_SHARED_LIBRARIES := -ljpeg -lgif -lpng -lcurl -ltiff
    LOCAL_STATIC_LIBRARIES := jpeg gif png curl tiff
    LOCAL_C_INCLUDES  := $(OSG_SDK2)/include
    LOCAL_CPP_INCLUDES := $(OSG_SDK2)/include
    TARGET_LDLIBS     := $(OSG_LDLIBS)
    LOCAL_LDFLAGS     := -L$(OSG_SDK2_LIB_PATH) -L$(OSG_SDK2_PLUGIN_PATH)# 
-L$(OSG_SDK_3RDPARTY_LIB_PATH)
    include $(BUILD_SHARED_LIBRARY)
else
    $(warning Unable to find osg/Config file in the headers, not building 
libjniosg-gles2 module)
endif


_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to