diff --git a/other_lib/Android.mk b/other_lib/Android.mk new file mode 100644 index 0000000..5053e7d --- /dev/null +++ b/other_lib/Android.mk @@ -0,0 +1 @@ +include $(call all-subdir-makefiles) diff --git a/jni/application/android-shmem/Android.mk b/other_lib/android-shmem/Android.mk similarity index 92% rename from jni/application/android-shmem/Android.mk rename to other_lib/android-shmem/Android.mk index a0766ab..c3b8787 100644 --- a/jni/application/android-shmem/Android.mk +++ b/other_lib/android-shmem/Android.mk @@ -2,7 +2,7 @@ LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) -LOCAL_MODULE := libandroid-shmem +LOCAL_MODULE := android-shmem_xserver LOCAL_C_INCLUDES := $(LOCAL_PATH) LOCAL_CFLAGS := -O3 -I$(LOCAL_PATH)/libancillary -D_LINUX_IPC_H -DNO_debian_ipc_perm diff --git a/jni/application/android-shmem/LICENSE b/other_lib/android-shmem/LICENSE similarity index 100% rename from jni/application/android-shmem/LICENSE rename to other_lib/android-shmem/LICENSE diff --git a/jni/application/android-shmem/README.md b/other_lib/android-shmem/README.md similarity index 100% rename from jni/application/android-shmem/README.md rename to other_lib/android-shmem/README.md diff --git a/jni/application/android-shmem/ashmem-dev.c b/other_lib/android-shmem/ashmem-dev.c similarity index 100% rename from jni/application/android-shmem/ashmem-dev.c rename to other_lib/android-shmem/ashmem-dev.c diff --git a/jni/application/android-shmem/build.sh b/other_lib/android-shmem/build.sh similarity index 100% rename from jni/application/android-shmem/build.sh rename to other_lib/android-shmem/build.sh diff --git a/jni/application/android-shmem/cutils/ashmem-dev.c b/other_lib/android-shmem/cutils/ashmem-dev.c similarity index 100% rename from jni/application/android-shmem/cutils/ashmem-dev.c rename to other_lib/android-shmem/cutils/ashmem-dev.c diff --git a/jni/application/android-shmem/cutils/ashmem.h b/other_lib/android-shmem/cutils/ashmem.h similarity index 100% rename from jni/application/android-shmem/cutils/ashmem.h rename to other_lib/android-shmem/cutils/ashmem.h diff --git a/jni/application/android-shmem/exports.txt b/other_lib/android-shmem/exports.txt similarity index 100% rename from jni/application/android-shmem/exports.txt rename to other_lib/android-shmem/exports.txt diff --git a/jni/application/android-shmem/fd_recv.c b/other_lib/android-shmem/fd_recv.c similarity index 100% rename from jni/application/android-shmem/fd_recv.c rename to other_lib/android-shmem/fd_recv.c diff --git a/jni/application/android-shmem/fd_send.c b/other_lib/android-shmem/fd_send.c similarity index 100% rename from jni/application/android-shmem/fd_send.c rename to other_lib/android-shmem/fd_send.c diff --git a/jni/application/android-shmem/libancillary/API b/other_lib/android-shmem/libancillary/API similarity index 100% rename from jni/application/android-shmem/libancillary/API rename to other_lib/android-shmem/libancillary/API diff --git a/jni/application/android-shmem/libancillary/COPYING b/other_lib/android-shmem/libancillary/COPYING similarity index 100% rename from jni/application/android-shmem/libancillary/COPYING rename to other_lib/android-shmem/libancillary/COPYING diff --git a/jni/application/android-shmem/libancillary/Makefile b/other_lib/android-shmem/libancillary/Makefile similarity index 100% rename from jni/application/android-shmem/libancillary/Makefile rename to other_lib/android-shmem/libancillary/Makefile diff --git a/jni/application/android-shmem/libancillary/ancillary.h b/other_lib/android-shmem/libancillary/ancillary.h similarity index 100% rename from jni/application/android-shmem/libancillary/ancillary.h rename to other_lib/android-shmem/libancillary/ancillary.h diff --git a/jni/application/android-shmem/libancillary/fd_recv.c b/other_lib/android-shmem/libancillary/fd_recv.c similarity index 100% rename from jni/application/android-shmem/libancillary/fd_recv.c rename to other_lib/android-shmem/libancillary/fd_recv.c diff --git a/jni/application/android-shmem/libancillary/fd_send.c b/other_lib/android-shmem/libancillary/fd_send.c similarity index 100% rename from jni/application/android-shmem/libancillary/fd_send.c rename to other_lib/android-shmem/libancillary/fd_send.c diff --git a/jni/application/android-shmem/libancillary/test.c b/other_lib/android-shmem/libancillary/test.c similarity index 100% rename from jni/application/android-shmem/libancillary/test.c rename to other_lib/android-shmem/libancillary/test.c diff --git a/jni/application/android-shmem/linux/ashmem.h b/other_lib/android-shmem/linux/ashmem.h similarity index 100% rename from jni/application/android-shmem/linux/ashmem.h rename to other_lib/android-shmem/linux/ashmem.h diff --git a/jni/application/android-shmem/shmem.c b/other_lib/android-shmem/shmem.c similarity index 100% rename from jni/application/android-shmem/shmem.c rename to other_lib/android-shmem/shmem.c diff --git a/jni/application/android-shmem/sys/shm.h b/other_lib/android-shmem/sys/shm.h similarity index 100% rename from jni/application/android-shmem/sys/shm.h rename to other_lib/android-shmem/sys/shm.h diff --git a/jni/application/android-shmem/test/build.sh b/other_lib/android-shmem/test/build.sh similarity index 100% rename from jni/application/android-shmem/test/build.sh rename to other_lib/android-shmem/test/build.sh diff --git a/jni/application/android-shmem/test/setCrossEnvironment-armeabi-v7a.sh b/other_lib/android-shmem/test/setCrossEnvironment-armeabi-v7a.sh similarity index 100% rename from jni/application/android-shmem/test/setCrossEnvironment-armeabi-v7a.sh rename to other_lib/android-shmem/test/setCrossEnvironment-armeabi-v7a.sh diff --git a/jni/application/android-shmem/test/test.c b/other_lib/android-shmem/test/test.c similarity index 100% rename from jni/application/android-shmem/test/test.c rename to other_lib/android-shmem/test/test.c diff --git a/jni/flac/AUTHORS b/other_lib/flac/AUTHORS similarity index 100% rename from jni/flac/AUTHORS rename to other_lib/flac/AUTHORS diff --git a/jni/flac/Android.mk b/other_lib/flac/Android.mk similarity index 89% rename from jni/flac/Android.mk rename to other_lib/flac/Android.mk index c16e531..9cbc5d0 100644 --- a/jni/flac/Android.mk +++ b/other_lib/flac/Android.mk @@ -2,7 +2,7 @@ LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) -LOCAL_MODULE := flac +LOCAL_MODULE := flac_xserver LOCAL_C_INCLUDES := $(LOCAL_PATH)/include $(LOCAL_PATH)/src/include $(LOCAL_PATH) $(LOCAL_PATH)/../ogg/include LOCAL_CFLAGS := -O3 -DHAVE_CONFIG_H -DFLAC__LPC_UNROLLED_FILTER_LOOPS @@ -15,7 +15,7 @@ LOCAL_CPP_EXTENSION := .cpp LOCAL_SRC_FILES := $(addprefix src/, $(notdir $(wildcard $(LOCAL_PATH)/src/*.c) $(wildcard $(LOCAL_PATH)/src/*.cpp))) -LOCAL_STATIC_LIBRARIES := ogg +LOCAL_STATIC_LIBRARIES := ogg_xserver LOCAL_SHARED_LIBRARIES := diff --git a/jni/flac/COPYING.FDL b/other_lib/flac/COPYING.FDL similarity index 100% rename from jni/flac/COPYING.FDL rename to other_lib/flac/COPYING.FDL diff --git a/jni/flac/COPYING.GPL b/other_lib/flac/COPYING.GPL similarity index 100% rename from jni/flac/COPYING.GPL rename to other_lib/flac/COPYING.GPL diff --git a/jni/flac/COPYING.LGPL b/other_lib/flac/COPYING.LGPL similarity index 100% rename from jni/flac/COPYING.LGPL rename to other_lib/flac/COPYING.LGPL diff --git a/jni/flac/COPYING.Xiph b/other_lib/flac/COPYING.Xiph similarity index 100% rename from jni/flac/COPYING.Xiph rename to other_lib/flac/COPYING.Xiph diff --git a/jni/flac/README b/other_lib/flac/README similarity index 100% rename from jni/flac/README rename to other_lib/flac/README diff --git a/jni/flac/config.h b/other_lib/flac/config.h similarity index 100% rename from jni/flac/config.h rename to other_lib/flac/config.h diff --git a/jni/flac/include/FLAC/all.h b/other_lib/flac/include/FLAC/all.h similarity index 100% rename from jni/flac/include/FLAC/all.h rename to other_lib/flac/include/FLAC/all.h diff --git a/jni/flac/include/FLAC/assert.h b/other_lib/flac/include/FLAC/assert.h similarity index 100% rename from jni/flac/include/FLAC/assert.h rename to other_lib/flac/include/FLAC/assert.h diff --git a/jni/flac/include/FLAC/callback.h b/other_lib/flac/include/FLAC/callback.h similarity index 100% rename from jni/flac/include/FLAC/callback.h rename to other_lib/flac/include/FLAC/callback.h diff --git a/jni/flac/include/FLAC/export.h b/other_lib/flac/include/FLAC/export.h similarity index 100% rename from jni/flac/include/FLAC/export.h rename to other_lib/flac/include/FLAC/export.h diff --git a/jni/flac/include/FLAC/format.h b/other_lib/flac/include/FLAC/format.h similarity index 100% rename from jni/flac/include/FLAC/format.h rename to other_lib/flac/include/FLAC/format.h diff --git a/jni/flac/include/FLAC/metadata.h b/other_lib/flac/include/FLAC/metadata.h similarity index 100% rename from jni/flac/include/FLAC/metadata.h rename to other_lib/flac/include/FLAC/metadata.h diff --git a/jni/flac/include/FLAC/ordinals.h b/other_lib/flac/include/FLAC/ordinals.h similarity index 100% rename from jni/flac/include/FLAC/ordinals.h rename to other_lib/flac/include/FLAC/ordinals.h diff --git a/jni/flac/include/FLAC/stream_decoder.h b/other_lib/flac/include/FLAC/stream_decoder.h similarity index 100% rename from jni/flac/include/FLAC/stream_decoder.h rename to other_lib/flac/include/FLAC/stream_decoder.h diff --git a/jni/flac/include/FLAC/stream_encoder.h b/other_lib/flac/include/FLAC/stream_encoder.h similarity index 100% rename from jni/flac/include/FLAC/stream_encoder.h rename to other_lib/flac/include/FLAC/stream_encoder.h diff --git a/jni/flac/src/bitmath.c b/other_lib/flac/src/bitmath.c similarity index 100% rename from jni/flac/src/bitmath.c rename to other_lib/flac/src/bitmath.c diff --git a/jni/flac/src/bitreader.c b/other_lib/flac/src/bitreader.c similarity index 100% rename from jni/flac/src/bitreader.c rename to other_lib/flac/src/bitreader.c diff --git a/jni/flac/src/bitwriter.c b/other_lib/flac/src/bitwriter.c similarity index 100% rename from jni/flac/src/bitwriter.c rename to other_lib/flac/src/bitwriter.c diff --git a/jni/flac/src/cpu.c b/other_lib/flac/src/cpu.c similarity index 100% rename from jni/flac/src/cpu.c rename to other_lib/flac/src/cpu.c diff --git a/jni/flac/src/crc.c b/other_lib/flac/src/crc.c similarity index 100% rename from jni/flac/src/crc.c rename to other_lib/flac/src/crc.c diff --git a/jni/flac/src/fixed.c b/other_lib/flac/src/fixed.c similarity index 100% rename from jni/flac/src/fixed.c rename to other_lib/flac/src/fixed.c diff --git a/jni/flac/src/float.c b/other_lib/flac/src/float.c similarity index 100% rename from jni/flac/src/float.c rename to other_lib/flac/src/float.c diff --git a/jni/flac/src/format.c b/other_lib/flac/src/format.c similarity index 100% rename from jni/flac/src/format.c rename to other_lib/flac/src/format.c diff --git a/jni/flac/src/include/private/all.h b/other_lib/flac/src/include/private/all.h similarity index 100% rename from jni/flac/src/include/private/all.h rename to other_lib/flac/src/include/private/all.h diff --git a/jni/flac/src/include/private/bitmath.h b/other_lib/flac/src/include/private/bitmath.h similarity index 100% rename from jni/flac/src/include/private/bitmath.h rename to other_lib/flac/src/include/private/bitmath.h diff --git a/jni/flac/src/include/private/bitreader.h b/other_lib/flac/src/include/private/bitreader.h similarity index 100% rename from jni/flac/src/include/private/bitreader.h rename to other_lib/flac/src/include/private/bitreader.h diff --git a/jni/flac/src/include/private/bitwriter.h b/other_lib/flac/src/include/private/bitwriter.h similarity index 100% rename from jni/flac/src/include/private/bitwriter.h rename to other_lib/flac/src/include/private/bitwriter.h diff --git a/jni/flac/src/include/private/cpu.h b/other_lib/flac/src/include/private/cpu.h similarity index 100% rename from jni/flac/src/include/private/cpu.h rename to other_lib/flac/src/include/private/cpu.h diff --git a/jni/flac/src/include/private/crc.h b/other_lib/flac/src/include/private/crc.h similarity index 100% rename from jni/flac/src/include/private/crc.h rename to other_lib/flac/src/include/private/crc.h diff --git a/jni/flac/src/include/private/fixed.h b/other_lib/flac/src/include/private/fixed.h similarity index 100% rename from jni/flac/src/include/private/fixed.h rename to other_lib/flac/src/include/private/fixed.h diff --git a/jni/flac/src/include/private/float.h b/other_lib/flac/src/include/private/float.h similarity index 100% rename from jni/flac/src/include/private/float.h rename to other_lib/flac/src/include/private/float.h diff --git a/jni/flac/src/include/private/format.h b/other_lib/flac/src/include/private/format.h similarity index 100% rename from jni/flac/src/include/private/format.h rename to other_lib/flac/src/include/private/format.h diff --git a/jni/flac/src/include/private/lpc.h b/other_lib/flac/src/include/private/lpc.h similarity index 100% rename from jni/flac/src/include/private/lpc.h rename to other_lib/flac/src/include/private/lpc.h diff --git a/jni/flac/src/include/private/md5.h b/other_lib/flac/src/include/private/md5.h similarity index 100% rename from jni/flac/src/include/private/md5.h rename to other_lib/flac/src/include/private/md5.h diff --git a/jni/flac/src/include/private/memory.h b/other_lib/flac/src/include/private/memory.h similarity index 100% rename from jni/flac/src/include/private/memory.h rename to other_lib/flac/src/include/private/memory.h diff --git a/jni/flac/src/include/private/metadata.h b/other_lib/flac/src/include/private/metadata.h similarity index 100% rename from jni/flac/src/include/private/metadata.h rename to other_lib/flac/src/include/private/metadata.h diff --git a/jni/flac/src/include/private/ogg_decoder_aspect.h b/other_lib/flac/src/include/private/ogg_decoder_aspect.h similarity index 100% rename from jni/flac/src/include/private/ogg_decoder_aspect.h rename to other_lib/flac/src/include/private/ogg_decoder_aspect.h diff --git a/jni/flac/src/include/private/ogg_encoder_aspect.h b/other_lib/flac/src/include/private/ogg_encoder_aspect.h similarity index 100% rename from jni/flac/src/include/private/ogg_encoder_aspect.h rename to other_lib/flac/src/include/private/ogg_encoder_aspect.h diff --git a/jni/flac/src/include/private/ogg_helper.h b/other_lib/flac/src/include/private/ogg_helper.h similarity index 100% rename from jni/flac/src/include/private/ogg_helper.h rename to other_lib/flac/src/include/private/ogg_helper.h diff --git a/jni/flac/src/include/private/ogg_mapping.h b/other_lib/flac/src/include/private/ogg_mapping.h similarity index 100% rename from jni/flac/src/include/private/ogg_mapping.h rename to other_lib/flac/src/include/private/ogg_mapping.h diff --git a/jni/flac/src/include/private/stream_encoder_framing.h b/other_lib/flac/src/include/private/stream_encoder_framing.h similarity index 100% rename from jni/flac/src/include/private/stream_encoder_framing.h rename to other_lib/flac/src/include/private/stream_encoder_framing.h diff --git a/jni/flac/src/include/private/window.h b/other_lib/flac/src/include/private/window.h similarity index 100% rename from jni/flac/src/include/private/window.h rename to other_lib/flac/src/include/private/window.h diff --git a/jni/flac/src/include/protected/all.h b/other_lib/flac/src/include/protected/all.h similarity index 100% rename from jni/flac/src/include/protected/all.h rename to other_lib/flac/src/include/protected/all.h diff --git a/jni/flac/src/include/protected/stream_decoder.h b/other_lib/flac/src/include/protected/stream_decoder.h similarity index 100% rename from jni/flac/src/include/protected/stream_decoder.h rename to other_lib/flac/src/include/protected/stream_decoder.h diff --git a/jni/flac/src/include/protected/stream_encoder.h b/other_lib/flac/src/include/protected/stream_encoder.h similarity index 100% rename from jni/flac/src/include/protected/stream_encoder.h rename to other_lib/flac/src/include/protected/stream_encoder.h diff --git a/jni/flac/src/include/share/alloc.h b/other_lib/flac/src/include/share/alloc.h similarity index 100% rename from jni/flac/src/include/share/alloc.h rename to other_lib/flac/src/include/share/alloc.h diff --git a/jni/flac/src/include/share/getopt.h b/other_lib/flac/src/include/share/getopt.h similarity index 100% rename from jni/flac/src/include/share/getopt.h rename to other_lib/flac/src/include/share/getopt.h diff --git a/jni/flac/src/include/share/grabbag.h b/other_lib/flac/src/include/share/grabbag.h similarity index 100% rename from jni/flac/src/include/share/grabbag.h rename to other_lib/flac/src/include/share/grabbag.h diff --git a/jni/flac/src/include/share/grabbag/cuesheet.h b/other_lib/flac/src/include/share/grabbag/cuesheet.h similarity index 100% rename from jni/flac/src/include/share/grabbag/cuesheet.h rename to other_lib/flac/src/include/share/grabbag/cuesheet.h diff --git a/jni/flac/src/include/share/grabbag/file.h b/other_lib/flac/src/include/share/grabbag/file.h similarity index 100% rename from jni/flac/src/include/share/grabbag/file.h rename to other_lib/flac/src/include/share/grabbag/file.h diff --git a/jni/flac/src/include/share/grabbag/picture.h b/other_lib/flac/src/include/share/grabbag/picture.h similarity index 100% rename from jni/flac/src/include/share/grabbag/picture.h rename to other_lib/flac/src/include/share/grabbag/picture.h diff --git a/jni/flac/src/include/share/grabbag/replaygain.h b/other_lib/flac/src/include/share/grabbag/replaygain.h similarity index 100% rename from jni/flac/src/include/share/grabbag/replaygain.h rename to other_lib/flac/src/include/share/grabbag/replaygain.h diff --git a/jni/flac/src/include/share/grabbag/seektable.h b/other_lib/flac/src/include/share/grabbag/seektable.h similarity index 100% rename from jni/flac/src/include/share/grabbag/seektable.h rename to other_lib/flac/src/include/share/grabbag/seektable.h diff --git a/jni/flac/src/include/share/replaygain_analysis.h b/other_lib/flac/src/include/share/replaygain_analysis.h similarity index 100% rename from jni/flac/src/include/share/replaygain_analysis.h rename to other_lib/flac/src/include/share/replaygain_analysis.h diff --git a/jni/flac/src/include/share/replaygain_synthesis.h b/other_lib/flac/src/include/share/replaygain_synthesis.h similarity index 100% rename from jni/flac/src/include/share/replaygain_synthesis.h rename to other_lib/flac/src/include/share/replaygain_synthesis.h diff --git a/jni/flac/src/include/share/utf8.h b/other_lib/flac/src/include/share/utf8.h similarity index 100% rename from jni/flac/src/include/share/utf8.h rename to other_lib/flac/src/include/share/utf8.h diff --git a/jni/flac/src/lpc.c b/other_lib/flac/src/lpc.c similarity index 100% rename from jni/flac/src/lpc.c rename to other_lib/flac/src/lpc.c diff --git a/jni/flac/src/md5.c b/other_lib/flac/src/md5.c similarity index 100% rename from jni/flac/src/md5.c rename to other_lib/flac/src/md5.c diff --git a/jni/flac/src/memory.c b/other_lib/flac/src/memory.c similarity index 100% rename from jni/flac/src/memory.c rename to other_lib/flac/src/memory.c diff --git a/jni/flac/src/metadata_iterators.c b/other_lib/flac/src/metadata_iterators.c similarity index 100% rename from jni/flac/src/metadata_iterators.c rename to other_lib/flac/src/metadata_iterators.c diff --git a/jni/flac/src/metadata_object.c b/other_lib/flac/src/metadata_object.c similarity index 100% rename from jni/flac/src/metadata_object.c rename to other_lib/flac/src/metadata_object.c diff --git a/jni/flac/src/ogg_decoder_aspect.c b/other_lib/flac/src/ogg_decoder_aspect.c similarity index 100% rename from jni/flac/src/ogg_decoder_aspect.c rename to other_lib/flac/src/ogg_decoder_aspect.c diff --git a/jni/flac/src/ogg_encoder_aspect.c b/other_lib/flac/src/ogg_encoder_aspect.c similarity index 100% rename from jni/flac/src/ogg_encoder_aspect.c rename to other_lib/flac/src/ogg_encoder_aspect.c diff --git a/jni/flac/src/ogg_helper.c b/other_lib/flac/src/ogg_helper.c similarity index 100% rename from jni/flac/src/ogg_helper.c rename to other_lib/flac/src/ogg_helper.c diff --git a/jni/flac/src/ogg_mapping.c b/other_lib/flac/src/ogg_mapping.c similarity index 100% rename from jni/flac/src/ogg_mapping.c rename to other_lib/flac/src/ogg_mapping.c diff --git a/jni/flac/src/stream_decoder.c b/other_lib/flac/src/stream_decoder.c similarity index 100% rename from jni/flac/src/stream_decoder.c rename to other_lib/flac/src/stream_decoder.c diff --git a/jni/flac/src/stream_encoder.c b/other_lib/flac/src/stream_encoder.c similarity index 100% rename from jni/flac/src/stream_encoder.c rename to other_lib/flac/src/stream_encoder.c diff --git a/jni/flac/src/stream_encoder_framing.c b/other_lib/flac/src/stream_encoder_framing.c similarity index 100% rename from jni/flac/src/stream_encoder_framing.c rename to other_lib/flac/src/stream_encoder_framing.c diff --git a/jni/flac/src/window.c b/other_lib/flac/src/window.c similarity index 100% rename from jni/flac/src/window.c rename to other_lib/flac/src/window.c diff --git a/jni/freetype/Android.mk b/other_lib/freetype/Android.mk similarity index 95% rename from jni/freetype/Android.mk rename to other_lib/freetype/Android.mk index 36e624e..92b177e 100644 --- a/jni/freetype/Android.mk +++ b/other_lib/freetype/Android.mk @@ -2,7 +2,7 @@ LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) -LOCAL_MODULE := libfreetype +LOCAL_MODULE := freetype_xserver APP_SUBDIRS := $(patsubst $(LOCAL_PATH)/%, %, $(shell find $(LOCAL_PATH)/src -type d)) diff --git a/jni/freetype/ChangeLog b/other_lib/freetype/ChangeLog similarity index 100% rename from jni/freetype/ChangeLog rename to other_lib/freetype/ChangeLog diff --git a/jni/freetype/ChangeLog.20 b/other_lib/freetype/ChangeLog.20 similarity index 100% rename from jni/freetype/ChangeLog.20 rename to other_lib/freetype/ChangeLog.20 diff --git a/jni/freetype/ChangeLog.21 b/other_lib/freetype/ChangeLog.21 similarity index 100% rename from jni/freetype/ChangeLog.21 rename to other_lib/freetype/ChangeLog.21 diff --git a/jni/freetype/ChangeLog.22 b/other_lib/freetype/ChangeLog.22 similarity index 100% rename from jni/freetype/ChangeLog.22 rename to other_lib/freetype/ChangeLog.22 diff --git a/jni/freetype/Makefile b/other_lib/freetype/Makefile similarity index 100% rename from jni/freetype/Makefile rename to other_lib/freetype/Makefile diff --git a/jni/freetype/README b/other_lib/freetype/README similarity index 100% rename from jni/freetype/README rename to other_lib/freetype/README diff --git a/jni/freetype/README.git b/other_lib/freetype/README.git similarity index 100% rename from jni/freetype/README.git rename to other_lib/freetype/README.git diff --git a/jni/freetype/include/freetype/config/ftconfig.h b/other_lib/freetype/include/freetype/config/ftconfig.h similarity index 100% rename from jni/freetype/include/freetype/config/ftconfig.h rename to other_lib/freetype/include/freetype/config/ftconfig.h diff --git a/jni/freetype/include/freetype/config/ftheader.h b/other_lib/freetype/include/freetype/config/ftheader.h similarity index 100% rename from jni/freetype/include/freetype/config/ftheader.h rename to other_lib/freetype/include/freetype/config/ftheader.h diff --git a/jni/freetype/include/freetype/config/ftmodule.h b/other_lib/freetype/include/freetype/config/ftmodule.h similarity index 100% rename from jni/freetype/include/freetype/config/ftmodule.h rename to other_lib/freetype/include/freetype/config/ftmodule.h diff --git a/jni/freetype/include/freetype/config/ftoption.h b/other_lib/freetype/include/freetype/config/ftoption.h similarity index 100% rename from jni/freetype/include/freetype/config/ftoption.h rename to other_lib/freetype/include/freetype/config/ftoption.h diff --git a/jni/freetype/include/freetype/config/ftstdlib.h b/other_lib/freetype/include/freetype/config/ftstdlib.h similarity index 100% rename from jni/freetype/include/freetype/config/ftstdlib.h rename to other_lib/freetype/include/freetype/config/ftstdlib.h diff --git a/jni/freetype/include/freetype/freetype.h b/other_lib/freetype/include/freetype/freetype.h similarity index 100% rename from jni/freetype/include/freetype/freetype.h rename to other_lib/freetype/include/freetype/freetype.h diff --git a/jni/freetype/include/freetype/ftadvanc.h b/other_lib/freetype/include/freetype/ftadvanc.h similarity index 100% rename from jni/freetype/include/freetype/ftadvanc.h rename to other_lib/freetype/include/freetype/ftadvanc.h diff --git a/jni/freetype/include/freetype/ftbbox.h b/other_lib/freetype/include/freetype/ftbbox.h similarity index 100% rename from jni/freetype/include/freetype/ftbbox.h rename to other_lib/freetype/include/freetype/ftbbox.h diff --git a/jni/freetype/include/freetype/ftbdf.h b/other_lib/freetype/include/freetype/ftbdf.h similarity index 100% rename from jni/freetype/include/freetype/ftbdf.h rename to other_lib/freetype/include/freetype/ftbdf.h diff --git a/jni/freetype/include/freetype/ftbitmap.h b/other_lib/freetype/include/freetype/ftbitmap.h similarity index 100% rename from jni/freetype/include/freetype/ftbitmap.h rename to other_lib/freetype/include/freetype/ftbitmap.h diff --git a/jni/freetype/include/freetype/ftcache.h b/other_lib/freetype/include/freetype/ftcache.h similarity index 100% rename from jni/freetype/include/freetype/ftcache.h rename to other_lib/freetype/include/freetype/ftcache.h diff --git a/jni/freetype/include/freetype/ftchapters.h b/other_lib/freetype/include/freetype/ftchapters.h similarity index 100% rename from jni/freetype/include/freetype/ftchapters.h rename to other_lib/freetype/include/freetype/ftchapters.h diff --git a/jni/freetype/include/freetype/ftcid.h b/other_lib/freetype/include/freetype/ftcid.h similarity index 100% rename from jni/freetype/include/freetype/ftcid.h rename to other_lib/freetype/include/freetype/ftcid.h diff --git a/jni/freetype/include/freetype/fterrdef.h b/other_lib/freetype/include/freetype/fterrdef.h similarity index 100% rename from jni/freetype/include/freetype/fterrdef.h rename to other_lib/freetype/include/freetype/fterrdef.h diff --git a/jni/freetype/include/freetype/fterrors.h b/other_lib/freetype/include/freetype/fterrors.h similarity index 100% rename from jni/freetype/include/freetype/fterrors.h rename to other_lib/freetype/include/freetype/fterrors.h diff --git a/jni/freetype/include/freetype/ftgasp.h b/other_lib/freetype/include/freetype/ftgasp.h similarity index 100% rename from jni/freetype/include/freetype/ftgasp.h rename to other_lib/freetype/include/freetype/ftgasp.h diff --git a/jni/freetype/include/freetype/ftglyph.h b/other_lib/freetype/include/freetype/ftglyph.h similarity index 100% rename from jni/freetype/include/freetype/ftglyph.h rename to other_lib/freetype/include/freetype/ftglyph.h diff --git a/jni/freetype/include/freetype/ftgxval.h b/other_lib/freetype/include/freetype/ftgxval.h similarity index 100% rename from jni/freetype/include/freetype/ftgxval.h rename to other_lib/freetype/include/freetype/ftgxval.h diff --git a/jni/freetype/include/freetype/ftgzip.h b/other_lib/freetype/include/freetype/ftgzip.h similarity index 100% rename from jni/freetype/include/freetype/ftgzip.h rename to other_lib/freetype/include/freetype/ftgzip.h diff --git a/jni/freetype/include/freetype/ftimage.h b/other_lib/freetype/include/freetype/ftimage.h similarity index 100% rename from jni/freetype/include/freetype/ftimage.h rename to other_lib/freetype/include/freetype/ftimage.h diff --git a/jni/freetype/include/freetype/ftincrem.h b/other_lib/freetype/include/freetype/ftincrem.h similarity index 100% rename from jni/freetype/include/freetype/ftincrem.h rename to other_lib/freetype/include/freetype/ftincrem.h diff --git a/jni/freetype/include/freetype/ftlcdfil.h b/other_lib/freetype/include/freetype/ftlcdfil.h similarity index 100% rename from jni/freetype/include/freetype/ftlcdfil.h rename to other_lib/freetype/include/freetype/ftlcdfil.h diff --git a/jni/freetype/include/freetype/ftlist.h b/other_lib/freetype/include/freetype/ftlist.h similarity index 100% rename from jni/freetype/include/freetype/ftlist.h rename to other_lib/freetype/include/freetype/ftlist.h diff --git a/jni/freetype/include/freetype/ftlzw.h b/other_lib/freetype/include/freetype/ftlzw.h similarity index 100% rename from jni/freetype/include/freetype/ftlzw.h rename to other_lib/freetype/include/freetype/ftlzw.h diff --git a/jni/freetype/include/freetype/ftmac.h b/other_lib/freetype/include/freetype/ftmac.h similarity index 100% rename from jni/freetype/include/freetype/ftmac.h rename to other_lib/freetype/include/freetype/ftmac.h diff --git a/jni/freetype/include/freetype/ftmm.h b/other_lib/freetype/include/freetype/ftmm.h similarity index 100% rename from jni/freetype/include/freetype/ftmm.h rename to other_lib/freetype/include/freetype/ftmm.h diff --git a/jni/freetype/include/freetype/ftmodapi.h b/other_lib/freetype/include/freetype/ftmodapi.h similarity index 100% rename from jni/freetype/include/freetype/ftmodapi.h rename to other_lib/freetype/include/freetype/ftmodapi.h diff --git a/jni/freetype/include/freetype/ftmoderr.h b/other_lib/freetype/include/freetype/ftmoderr.h similarity index 100% rename from jni/freetype/include/freetype/ftmoderr.h rename to other_lib/freetype/include/freetype/ftmoderr.h diff --git a/jni/freetype/include/freetype/ftotval.h b/other_lib/freetype/include/freetype/ftotval.h similarity index 100% rename from jni/freetype/include/freetype/ftotval.h rename to other_lib/freetype/include/freetype/ftotval.h diff --git a/jni/freetype/include/freetype/ftoutln.h b/other_lib/freetype/include/freetype/ftoutln.h similarity index 100% rename from jni/freetype/include/freetype/ftoutln.h rename to other_lib/freetype/include/freetype/ftoutln.h diff --git a/jni/freetype/include/freetype/ftpfr.h b/other_lib/freetype/include/freetype/ftpfr.h similarity index 100% rename from jni/freetype/include/freetype/ftpfr.h rename to other_lib/freetype/include/freetype/ftpfr.h diff --git a/jni/freetype/include/freetype/ftrender.h b/other_lib/freetype/include/freetype/ftrender.h similarity index 100% rename from jni/freetype/include/freetype/ftrender.h rename to other_lib/freetype/include/freetype/ftrender.h diff --git a/jni/freetype/include/freetype/ftsizes.h b/other_lib/freetype/include/freetype/ftsizes.h similarity index 100% rename from jni/freetype/include/freetype/ftsizes.h rename to other_lib/freetype/include/freetype/ftsizes.h diff --git a/jni/freetype/include/freetype/ftsnames.h b/other_lib/freetype/include/freetype/ftsnames.h similarity index 100% rename from jni/freetype/include/freetype/ftsnames.h rename to other_lib/freetype/include/freetype/ftsnames.h diff --git a/jni/freetype/include/freetype/ftstroke.h b/other_lib/freetype/include/freetype/ftstroke.h similarity index 100% rename from jni/freetype/include/freetype/ftstroke.h rename to other_lib/freetype/include/freetype/ftstroke.h diff --git a/jni/freetype/include/freetype/ftsynth.h b/other_lib/freetype/include/freetype/ftsynth.h similarity index 100% rename from jni/freetype/include/freetype/ftsynth.h rename to other_lib/freetype/include/freetype/ftsynth.h diff --git a/jni/freetype/include/freetype/ftsystem.h b/other_lib/freetype/include/freetype/ftsystem.h similarity index 100% rename from jni/freetype/include/freetype/ftsystem.h rename to other_lib/freetype/include/freetype/ftsystem.h diff --git a/jni/freetype/include/freetype/fttrigon.h b/other_lib/freetype/include/freetype/fttrigon.h similarity index 100% rename from jni/freetype/include/freetype/fttrigon.h rename to other_lib/freetype/include/freetype/fttrigon.h diff --git a/jni/freetype/include/freetype/fttypes.h b/other_lib/freetype/include/freetype/fttypes.h similarity index 100% rename from jni/freetype/include/freetype/fttypes.h rename to other_lib/freetype/include/freetype/fttypes.h diff --git a/jni/freetype/include/freetype/ftwinfnt.h b/other_lib/freetype/include/freetype/ftwinfnt.h similarity index 100% rename from jni/freetype/include/freetype/ftwinfnt.h rename to other_lib/freetype/include/freetype/ftwinfnt.h diff --git a/jni/freetype/include/freetype/ftxf86.h b/other_lib/freetype/include/freetype/ftxf86.h similarity index 100% rename from jni/freetype/include/freetype/ftxf86.h rename to other_lib/freetype/include/freetype/ftxf86.h diff --git a/jni/freetype/include/freetype/internal/autohint.h b/other_lib/freetype/include/freetype/internal/autohint.h similarity index 100% rename from jni/freetype/include/freetype/internal/autohint.h rename to other_lib/freetype/include/freetype/internal/autohint.h diff --git a/jni/freetype/include/freetype/internal/ftcalc.h b/other_lib/freetype/include/freetype/internal/ftcalc.h similarity index 100% rename from jni/freetype/include/freetype/internal/ftcalc.h rename to other_lib/freetype/include/freetype/internal/ftcalc.h diff --git a/jni/freetype/include/freetype/internal/ftdebug.h b/other_lib/freetype/include/freetype/internal/ftdebug.h similarity index 100% rename from jni/freetype/include/freetype/internal/ftdebug.h rename to other_lib/freetype/include/freetype/internal/ftdebug.h diff --git a/jni/freetype/include/freetype/internal/ftdriver.h b/other_lib/freetype/include/freetype/internal/ftdriver.h similarity index 100% rename from jni/freetype/include/freetype/internal/ftdriver.h rename to other_lib/freetype/include/freetype/internal/ftdriver.h diff --git a/jni/freetype/include/freetype/internal/ftgloadr.h b/other_lib/freetype/include/freetype/internal/ftgloadr.h similarity index 100% rename from jni/freetype/include/freetype/internal/ftgloadr.h rename to other_lib/freetype/include/freetype/internal/ftgloadr.h diff --git a/jni/freetype/include/freetype/internal/ftmemory.h b/other_lib/freetype/include/freetype/internal/ftmemory.h similarity index 100% rename from jni/freetype/include/freetype/internal/ftmemory.h rename to other_lib/freetype/include/freetype/internal/ftmemory.h diff --git a/jni/freetype/include/freetype/internal/ftobjs.h b/other_lib/freetype/include/freetype/internal/ftobjs.h similarity index 100% rename from jni/freetype/include/freetype/internal/ftobjs.h rename to other_lib/freetype/include/freetype/internal/ftobjs.h diff --git a/jni/freetype/include/freetype/internal/ftpic.h b/other_lib/freetype/include/freetype/internal/ftpic.h similarity index 100% rename from jni/freetype/include/freetype/internal/ftpic.h rename to other_lib/freetype/include/freetype/internal/ftpic.h diff --git a/jni/freetype/include/freetype/internal/ftrfork.h b/other_lib/freetype/include/freetype/internal/ftrfork.h similarity index 100% rename from jni/freetype/include/freetype/internal/ftrfork.h rename to other_lib/freetype/include/freetype/internal/ftrfork.h diff --git a/jni/freetype/include/freetype/internal/ftserv.h b/other_lib/freetype/include/freetype/internal/ftserv.h similarity index 100% rename from jni/freetype/include/freetype/internal/ftserv.h rename to other_lib/freetype/include/freetype/internal/ftserv.h diff --git a/jni/freetype/include/freetype/internal/ftstream.h b/other_lib/freetype/include/freetype/internal/ftstream.h similarity index 100% rename from jni/freetype/include/freetype/internal/ftstream.h rename to other_lib/freetype/include/freetype/internal/ftstream.h diff --git a/jni/freetype/include/freetype/internal/fttrace.h b/other_lib/freetype/include/freetype/internal/fttrace.h similarity index 100% rename from jni/freetype/include/freetype/internal/fttrace.h rename to other_lib/freetype/include/freetype/internal/fttrace.h diff --git a/jni/freetype/include/freetype/internal/ftvalid.h b/other_lib/freetype/include/freetype/internal/ftvalid.h similarity index 100% rename from jni/freetype/include/freetype/internal/ftvalid.h rename to other_lib/freetype/include/freetype/internal/ftvalid.h diff --git a/jni/freetype/include/freetype/internal/internal.h b/other_lib/freetype/include/freetype/internal/internal.h similarity index 100% rename from jni/freetype/include/freetype/internal/internal.h rename to other_lib/freetype/include/freetype/internal/internal.h diff --git a/jni/freetype/include/freetype/internal/pcftypes.h b/other_lib/freetype/include/freetype/internal/pcftypes.h similarity index 100% rename from jni/freetype/include/freetype/internal/pcftypes.h rename to other_lib/freetype/include/freetype/internal/pcftypes.h diff --git a/jni/freetype/include/freetype/internal/psaux.h b/other_lib/freetype/include/freetype/internal/psaux.h similarity index 100% rename from jni/freetype/include/freetype/internal/psaux.h rename to other_lib/freetype/include/freetype/internal/psaux.h diff --git a/jni/freetype/include/freetype/internal/pshints.h b/other_lib/freetype/include/freetype/internal/pshints.h similarity index 100% rename from jni/freetype/include/freetype/internal/pshints.h rename to other_lib/freetype/include/freetype/internal/pshints.h diff --git a/jni/freetype/include/freetype/internal/services/svbdf.h b/other_lib/freetype/include/freetype/internal/services/svbdf.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svbdf.h rename to other_lib/freetype/include/freetype/internal/services/svbdf.h diff --git a/jni/freetype/include/freetype/internal/services/svcid.h b/other_lib/freetype/include/freetype/internal/services/svcid.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svcid.h rename to other_lib/freetype/include/freetype/internal/services/svcid.h diff --git a/jni/freetype/include/freetype/internal/services/svgldict.h b/other_lib/freetype/include/freetype/internal/services/svgldict.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svgldict.h rename to other_lib/freetype/include/freetype/internal/services/svgldict.h diff --git a/jni/freetype/include/freetype/internal/services/svgxval.h b/other_lib/freetype/include/freetype/internal/services/svgxval.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svgxval.h rename to other_lib/freetype/include/freetype/internal/services/svgxval.h diff --git a/jni/freetype/include/freetype/internal/services/svkern.h b/other_lib/freetype/include/freetype/internal/services/svkern.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svkern.h rename to other_lib/freetype/include/freetype/internal/services/svkern.h diff --git a/jni/freetype/include/freetype/internal/services/svmm.h b/other_lib/freetype/include/freetype/internal/services/svmm.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svmm.h rename to other_lib/freetype/include/freetype/internal/services/svmm.h diff --git a/jni/freetype/include/freetype/internal/services/svotval.h b/other_lib/freetype/include/freetype/internal/services/svotval.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svotval.h rename to other_lib/freetype/include/freetype/internal/services/svotval.h diff --git a/jni/freetype/include/freetype/internal/services/svpfr.h b/other_lib/freetype/include/freetype/internal/services/svpfr.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svpfr.h rename to other_lib/freetype/include/freetype/internal/services/svpfr.h diff --git a/jni/freetype/include/freetype/internal/services/svpostnm.h b/other_lib/freetype/include/freetype/internal/services/svpostnm.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svpostnm.h rename to other_lib/freetype/include/freetype/internal/services/svpostnm.h diff --git a/jni/freetype/include/freetype/internal/services/svpscmap.h b/other_lib/freetype/include/freetype/internal/services/svpscmap.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svpscmap.h rename to other_lib/freetype/include/freetype/internal/services/svpscmap.h diff --git a/jni/freetype/include/freetype/internal/services/svpsinfo.h b/other_lib/freetype/include/freetype/internal/services/svpsinfo.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svpsinfo.h rename to other_lib/freetype/include/freetype/internal/services/svpsinfo.h diff --git a/jni/freetype/include/freetype/internal/services/svsfnt.h b/other_lib/freetype/include/freetype/internal/services/svsfnt.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svsfnt.h rename to other_lib/freetype/include/freetype/internal/services/svsfnt.h diff --git a/jni/freetype/include/freetype/internal/services/svttcmap.h b/other_lib/freetype/include/freetype/internal/services/svttcmap.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svttcmap.h rename to other_lib/freetype/include/freetype/internal/services/svttcmap.h diff --git a/jni/freetype/include/freetype/internal/services/svtteng.h b/other_lib/freetype/include/freetype/internal/services/svtteng.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svtteng.h rename to other_lib/freetype/include/freetype/internal/services/svtteng.h diff --git a/jni/freetype/include/freetype/internal/services/svttglyf.h b/other_lib/freetype/include/freetype/internal/services/svttglyf.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svttglyf.h rename to other_lib/freetype/include/freetype/internal/services/svttglyf.h diff --git a/jni/freetype/include/freetype/internal/services/svwinfnt.h b/other_lib/freetype/include/freetype/internal/services/svwinfnt.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svwinfnt.h rename to other_lib/freetype/include/freetype/internal/services/svwinfnt.h diff --git a/jni/freetype/include/freetype/internal/services/svxf86nm.h b/other_lib/freetype/include/freetype/internal/services/svxf86nm.h similarity index 100% rename from jni/freetype/include/freetype/internal/services/svxf86nm.h rename to other_lib/freetype/include/freetype/internal/services/svxf86nm.h diff --git a/jni/freetype/include/freetype/internal/sfnt.h b/other_lib/freetype/include/freetype/internal/sfnt.h similarity index 100% rename from jni/freetype/include/freetype/internal/sfnt.h rename to other_lib/freetype/include/freetype/internal/sfnt.h diff --git a/jni/freetype/include/freetype/internal/t1types.h b/other_lib/freetype/include/freetype/internal/t1types.h similarity index 100% rename from jni/freetype/include/freetype/internal/t1types.h rename to other_lib/freetype/include/freetype/internal/t1types.h diff --git a/jni/freetype/include/freetype/internal/tttypes.h b/other_lib/freetype/include/freetype/internal/tttypes.h similarity index 100% rename from jni/freetype/include/freetype/internal/tttypes.h rename to other_lib/freetype/include/freetype/internal/tttypes.h diff --git a/jni/freetype/include/freetype/t1tables.h b/other_lib/freetype/include/freetype/t1tables.h similarity index 100% rename from jni/freetype/include/freetype/t1tables.h rename to other_lib/freetype/include/freetype/t1tables.h diff --git a/jni/freetype/include/freetype/ttnameid.h b/other_lib/freetype/include/freetype/ttnameid.h similarity index 100% rename from jni/freetype/include/freetype/ttnameid.h rename to other_lib/freetype/include/freetype/ttnameid.h diff --git a/jni/freetype/include/freetype/tttables.h b/other_lib/freetype/include/freetype/tttables.h similarity index 100% rename from jni/freetype/include/freetype/tttables.h rename to other_lib/freetype/include/freetype/tttables.h diff --git a/jni/freetype/include/freetype/tttags.h b/other_lib/freetype/include/freetype/tttags.h similarity index 100% rename from jni/freetype/include/freetype/tttags.h rename to other_lib/freetype/include/freetype/tttags.h diff --git a/jni/freetype/include/freetype/ttunpat.h b/other_lib/freetype/include/freetype/ttunpat.h similarity index 100% rename from jni/freetype/include/freetype/ttunpat.h rename to other_lib/freetype/include/freetype/ttunpat.h diff --git a/jni/freetype/include/ft2build.h b/other_lib/freetype/include/ft2build.h similarity index 100% rename from jni/freetype/include/ft2build.h rename to other_lib/freetype/include/ft2build.h diff --git a/jni/freetype/src/Jamfile b/other_lib/freetype/src/Jamfile similarity index 100% rename from jni/freetype/src/Jamfile rename to other_lib/freetype/src/Jamfile diff --git a/jni/freetype/src/autofit/Jamfile b/other_lib/freetype/src/autofit/Jamfile similarity index 100% rename from jni/freetype/src/autofit/Jamfile rename to other_lib/freetype/src/autofit/Jamfile diff --git a/jni/freetype/src/autofit/afangles.c b/other_lib/freetype/src/autofit/afangles.c similarity index 100% rename from jni/freetype/src/autofit/afangles.c rename to other_lib/freetype/src/autofit/afangles.c diff --git a/jni/freetype/src/autofit/afangles.h b/other_lib/freetype/src/autofit/afangles.h similarity index 100% rename from jni/freetype/src/autofit/afangles.h rename to other_lib/freetype/src/autofit/afangles.h diff --git a/jni/freetype/src/autofit/afcjk.c b/other_lib/freetype/src/autofit/afcjk.c similarity index 100% rename from jni/freetype/src/autofit/afcjk.c rename to other_lib/freetype/src/autofit/afcjk.c diff --git a/jni/freetype/src/autofit/afcjk.h b/other_lib/freetype/src/autofit/afcjk.h similarity index 100% rename from jni/freetype/src/autofit/afcjk.h rename to other_lib/freetype/src/autofit/afcjk.h diff --git a/jni/freetype/src/autofit/afdummy.c b/other_lib/freetype/src/autofit/afdummy.c similarity index 100% rename from jni/freetype/src/autofit/afdummy.c rename to other_lib/freetype/src/autofit/afdummy.c diff --git a/jni/freetype/src/autofit/afdummy.h b/other_lib/freetype/src/autofit/afdummy.h similarity index 100% rename from jni/freetype/src/autofit/afdummy.h rename to other_lib/freetype/src/autofit/afdummy.h diff --git a/jni/freetype/src/autofit/aferrors.h b/other_lib/freetype/src/autofit/aferrors.h similarity index 100% rename from jni/freetype/src/autofit/aferrors.h rename to other_lib/freetype/src/autofit/aferrors.h diff --git a/jni/freetype/src/autofit/afglobal.c b/other_lib/freetype/src/autofit/afglobal.c similarity index 100% rename from jni/freetype/src/autofit/afglobal.c rename to other_lib/freetype/src/autofit/afglobal.c diff --git a/jni/freetype/src/autofit/afglobal.h b/other_lib/freetype/src/autofit/afglobal.h similarity index 100% rename from jni/freetype/src/autofit/afglobal.h rename to other_lib/freetype/src/autofit/afglobal.h diff --git a/jni/freetype/src/autofit/afhints.c b/other_lib/freetype/src/autofit/afhints.c similarity index 100% rename from jni/freetype/src/autofit/afhints.c rename to other_lib/freetype/src/autofit/afhints.c diff --git a/jni/freetype/src/autofit/afhints.h b/other_lib/freetype/src/autofit/afhints.h similarity index 100% rename from jni/freetype/src/autofit/afhints.h rename to other_lib/freetype/src/autofit/afhints.h diff --git a/jni/freetype/src/autofit/afindic.c b/other_lib/freetype/src/autofit/afindic.c similarity index 100% rename from jni/freetype/src/autofit/afindic.c rename to other_lib/freetype/src/autofit/afindic.c diff --git a/jni/freetype/src/autofit/afindic.h b/other_lib/freetype/src/autofit/afindic.h similarity index 100% rename from jni/freetype/src/autofit/afindic.h rename to other_lib/freetype/src/autofit/afindic.h diff --git a/jni/freetype/src/autofit/aflatin.c b/other_lib/freetype/src/autofit/aflatin.c similarity index 100% rename from jni/freetype/src/autofit/aflatin.c rename to other_lib/freetype/src/autofit/aflatin.c diff --git a/jni/freetype/src/autofit/aflatin.h b/other_lib/freetype/src/autofit/aflatin.h similarity index 100% rename from jni/freetype/src/autofit/aflatin.h rename to other_lib/freetype/src/autofit/aflatin.h diff --git a/jni/freetype/src/autofit/afloader.c b/other_lib/freetype/src/autofit/afloader.c similarity index 100% rename from jni/freetype/src/autofit/afloader.c rename to other_lib/freetype/src/autofit/afloader.c diff --git a/jni/freetype/src/autofit/afloader.h b/other_lib/freetype/src/autofit/afloader.h similarity index 100% rename from jni/freetype/src/autofit/afloader.h rename to other_lib/freetype/src/autofit/afloader.h diff --git a/jni/freetype/src/autofit/afmodule.c b/other_lib/freetype/src/autofit/afmodule.c similarity index 100% rename from jni/freetype/src/autofit/afmodule.c rename to other_lib/freetype/src/autofit/afmodule.c diff --git a/jni/freetype/src/autofit/afmodule.h b/other_lib/freetype/src/autofit/afmodule.h similarity index 100% rename from jni/freetype/src/autofit/afmodule.h rename to other_lib/freetype/src/autofit/afmodule.h diff --git a/jni/freetype/src/autofit/afpic.c b/other_lib/freetype/src/autofit/afpic.c similarity index 100% rename from jni/freetype/src/autofit/afpic.c rename to other_lib/freetype/src/autofit/afpic.c diff --git a/jni/freetype/src/autofit/afpic.h b/other_lib/freetype/src/autofit/afpic.h similarity index 100% rename from jni/freetype/src/autofit/afpic.h rename to other_lib/freetype/src/autofit/afpic.h diff --git a/jni/freetype/src/autofit/aftypes.h b/other_lib/freetype/src/autofit/aftypes.h similarity index 100% rename from jni/freetype/src/autofit/aftypes.h rename to other_lib/freetype/src/autofit/aftypes.h diff --git a/jni/freetype/src/autofit/afwarp.c b/other_lib/freetype/src/autofit/afwarp.c similarity index 100% rename from jni/freetype/src/autofit/afwarp.c rename to other_lib/freetype/src/autofit/afwarp.c diff --git a/jni/freetype/src/autofit/afwarp.h b/other_lib/freetype/src/autofit/afwarp.h similarity index 100% rename from jni/freetype/src/autofit/afwarp.h rename to other_lib/freetype/src/autofit/afwarp.h diff --git a/jni/freetype/src/autofit/module.mk b/other_lib/freetype/src/autofit/module.mk similarity index 100% rename from jni/freetype/src/autofit/module.mk rename to other_lib/freetype/src/autofit/module.mk diff --git a/jni/freetype/src/autofit/rules.mk b/other_lib/freetype/src/autofit/rules.mk similarity index 100% rename from jni/freetype/src/autofit/rules.mk rename to other_lib/freetype/src/autofit/rules.mk diff --git a/jni/freetype/src/base/Jamfile b/other_lib/freetype/src/base/Jamfile similarity index 100% rename from jni/freetype/src/base/Jamfile rename to other_lib/freetype/src/base/Jamfile diff --git a/jni/freetype/src/base/basepic.c b/other_lib/freetype/src/base/basepic.c similarity index 100% rename from jni/freetype/src/base/basepic.c rename to other_lib/freetype/src/base/basepic.c diff --git a/jni/freetype/src/base/basepic.h b/other_lib/freetype/src/base/basepic.h similarity index 100% rename from jni/freetype/src/base/basepic.h rename to other_lib/freetype/src/base/basepic.h diff --git a/jni/freetype/src/base/ftadvanc.c b/other_lib/freetype/src/base/ftadvanc.c similarity index 100% rename from jni/freetype/src/base/ftadvanc.c rename to other_lib/freetype/src/base/ftadvanc.c diff --git a/jni/freetype/src/base/ftapi.c b/other_lib/freetype/src/base/ftapi.c similarity index 100% rename from jni/freetype/src/base/ftapi.c rename to other_lib/freetype/src/base/ftapi.c diff --git a/jni/freetype/src/base/ftbase.h b/other_lib/freetype/src/base/ftbase.h similarity index 100% rename from jni/freetype/src/base/ftbase.h rename to other_lib/freetype/src/base/ftbase.h diff --git a/jni/freetype/src/base/ftbbox.c b/other_lib/freetype/src/base/ftbbox.c similarity index 100% rename from jni/freetype/src/base/ftbbox.c rename to other_lib/freetype/src/base/ftbbox.c diff --git a/jni/freetype/src/base/ftbdf.c b/other_lib/freetype/src/base/ftbdf.c similarity index 100% rename from jni/freetype/src/base/ftbdf.c rename to other_lib/freetype/src/base/ftbdf.c diff --git a/jni/freetype/src/base/ftbitmap.c b/other_lib/freetype/src/base/ftbitmap.c similarity index 100% rename from jni/freetype/src/base/ftbitmap.c rename to other_lib/freetype/src/base/ftbitmap.c diff --git a/jni/freetype/src/base/ftcalc.c b/other_lib/freetype/src/base/ftcalc.c similarity index 100% rename from jni/freetype/src/base/ftcalc.c rename to other_lib/freetype/src/base/ftcalc.c diff --git a/jni/freetype/src/base/ftcid.c b/other_lib/freetype/src/base/ftcid.c similarity index 100% rename from jni/freetype/src/base/ftcid.c rename to other_lib/freetype/src/base/ftcid.c diff --git a/jni/freetype/src/base/ftdbgmem.c b/other_lib/freetype/src/base/ftdbgmem.c similarity index 100% rename from jni/freetype/src/base/ftdbgmem.c rename to other_lib/freetype/src/base/ftdbgmem.c diff --git a/jni/freetype/src/base/ftdebug.c b/other_lib/freetype/src/base/ftdebug.c similarity index 100% rename from jni/freetype/src/base/ftdebug.c rename to other_lib/freetype/src/base/ftdebug.c diff --git a/jni/freetype/src/base/ftfstype.c b/other_lib/freetype/src/base/ftfstype.c similarity index 100% rename from jni/freetype/src/base/ftfstype.c rename to other_lib/freetype/src/base/ftfstype.c diff --git a/jni/freetype/src/base/ftgasp.c b/other_lib/freetype/src/base/ftgasp.c similarity index 100% rename from jni/freetype/src/base/ftgasp.c rename to other_lib/freetype/src/base/ftgasp.c diff --git a/jni/freetype/src/base/ftgloadr.c b/other_lib/freetype/src/base/ftgloadr.c similarity index 100% rename from jni/freetype/src/base/ftgloadr.c rename to other_lib/freetype/src/base/ftgloadr.c diff --git a/jni/freetype/src/base/ftglyph.c b/other_lib/freetype/src/base/ftglyph.c similarity index 100% rename from jni/freetype/src/base/ftglyph.c rename to other_lib/freetype/src/base/ftglyph.c diff --git a/jni/freetype/src/base/ftgxval.c b/other_lib/freetype/src/base/ftgxval.c similarity index 100% rename from jni/freetype/src/base/ftgxval.c rename to other_lib/freetype/src/base/ftgxval.c diff --git a/jni/freetype/src/base/ftinit.c b/other_lib/freetype/src/base/ftinit.c similarity index 100% rename from jni/freetype/src/base/ftinit.c rename to other_lib/freetype/src/base/ftinit.c diff --git a/jni/freetype/src/base/ftlcdfil.c b/other_lib/freetype/src/base/ftlcdfil.c similarity index 100% rename from jni/freetype/src/base/ftlcdfil.c rename to other_lib/freetype/src/base/ftlcdfil.c diff --git a/jni/freetype/src/base/ftmm.c b/other_lib/freetype/src/base/ftmm.c similarity index 100% rename from jni/freetype/src/base/ftmm.c rename to other_lib/freetype/src/base/ftmm.c diff --git a/jni/freetype/src/base/ftobjs.c b/other_lib/freetype/src/base/ftobjs.c similarity index 100% rename from jni/freetype/src/base/ftobjs.c rename to other_lib/freetype/src/base/ftobjs.c diff --git a/jni/freetype/src/base/ftotval.c b/other_lib/freetype/src/base/ftotval.c similarity index 100% rename from jni/freetype/src/base/ftotval.c rename to other_lib/freetype/src/base/ftotval.c diff --git a/jni/freetype/src/base/ftoutln.c b/other_lib/freetype/src/base/ftoutln.c similarity index 100% rename from jni/freetype/src/base/ftoutln.c rename to other_lib/freetype/src/base/ftoutln.c diff --git a/jni/freetype/src/base/ftpatent.c b/other_lib/freetype/src/base/ftpatent.c similarity index 100% rename from jni/freetype/src/base/ftpatent.c rename to other_lib/freetype/src/base/ftpatent.c diff --git a/jni/freetype/src/base/ftpfr.c b/other_lib/freetype/src/base/ftpfr.c similarity index 100% rename from jni/freetype/src/base/ftpfr.c rename to other_lib/freetype/src/base/ftpfr.c diff --git a/jni/freetype/src/base/ftpic.c b/other_lib/freetype/src/base/ftpic.c similarity index 100% rename from jni/freetype/src/base/ftpic.c rename to other_lib/freetype/src/base/ftpic.c diff --git a/jni/freetype/src/base/ftrfork.c b/other_lib/freetype/src/base/ftrfork.c similarity index 100% rename from jni/freetype/src/base/ftrfork.c rename to other_lib/freetype/src/base/ftrfork.c diff --git a/jni/freetype/src/base/ftsnames.c b/other_lib/freetype/src/base/ftsnames.c similarity index 100% rename from jni/freetype/src/base/ftsnames.c rename to other_lib/freetype/src/base/ftsnames.c diff --git a/jni/freetype/src/base/ftstream.c b/other_lib/freetype/src/base/ftstream.c similarity index 100% rename from jni/freetype/src/base/ftstream.c rename to other_lib/freetype/src/base/ftstream.c diff --git a/jni/freetype/src/base/ftstroke.c b/other_lib/freetype/src/base/ftstroke.c similarity index 100% rename from jni/freetype/src/base/ftstroke.c rename to other_lib/freetype/src/base/ftstroke.c diff --git a/jni/freetype/src/base/ftsynth.c b/other_lib/freetype/src/base/ftsynth.c similarity index 100% rename from jni/freetype/src/base/ftsynth.c rename to other_lib/freetype/src/base/ftsynth.c diff --git a/jni/freetype/src/base/ftsystem.c b/other_lib/freetype/src/base/ftsystem.c similarity index 100% rename from jni/freetype/src/base/ftsystem.c rename to other_lib/freetype/src/base/ftsystem.c diff --git a/jni/freetype/src/base/fttrigon.c b/other_lib/freetype/src/base/fttrigon.c similarity index 100% rename from jni/freetype/src/base/fttrigon.c rename to other_lib/freetype/src/base/fttrigon.c diff --git a/jni/freetype/src/base/fttype1.c b/other_lib/freetype/src/base/fttype1.c similarity index 100% rename from jni/freetype/src/base/fttype1.c rename to other_lib/freetype/src/base/fttype1.c diff --git a/jni/freetype/src/base/ftutil.c b/other_lib/freetype/src/base/ftutil.c similarity index 100% rename from jni/freetype/src/base/ftutil.c rename to other_lib/freetype/src/base/ftutil.c diff --git a/jni/freetype/src/base/ftwinfnt.c b/other_lib/freetype/src/base/ftwinfnt.c similarity index 100% rename from jni/freetype/src/base/ftwinfnt.c rename to other_lib/freetype/src/base/ftwinfnt.c diff --git a/jni/freetype/src/base/ftxf86.c b/other_lib/freetype/src/base/ftxf86.c similarity index 100% rename from jni/freetype/src/base/ftxf86.c rename to other_lib/freetype/src/base/ftxf86.c diff --git a/jni/freetype/src/base/rules.mk b/other_lib/freetype/src/base/rules.mk similarity index 100% rename from jni/freetype/src/base/rules.mk rename to other_lib/freetype/src/base/rules.mk diff --git a/jni/freetype/src/bdf/Jamfile b/other_lib/freetype/src/bdf/Jamfile similarity index 100% rename from jni/freetype/src/bdf/Jamfile rename to other_lib/freetype/src/bdf/Jamfile diff --git a/jni/freetype/src/bdf/README b/other_lib/freetype/src/bdf/README similarity index 100% rename from jni/freetype/src/bdf/README rename to other_lib/freetype/src/bdf/README diff --git a/jni/freetype/src/bdf/bdf.h b/other_lib/freetype/src/bdf/bdf.h similarity index 100% rename from jni/freetype/src/bdf/bdf.h rename to other_lib/freetype/src/bdf/bdf.h diff --git a/jni/freetype/src/bdf/bdfdrivr.c b/other_lib/freetype/src/bdf/bdfdrivr.c similarity index 100% rename from jni/freetype/src/bdf/bdfdrivr.c rename to other_lib/freetype/src/bdf/bdfdrivr.c diff --git a/jni/freetype/src/bdf/bdfdrivr.h b/other_lib/freetype/src/bdf/bdfdrivr.h similarity index 100% rename from jni/freetype/src/bdf/bdfdrivr.h rename to other_lib/freetype/src/bdf/bdfdrivr.h diff --git a/jni/freetype/src/bdf/bdferror.h b/other_lib/freetype/src/bdf/bdferror.h similarity index 100% rename from jni/freetype/src/bdf/bdferror.h rename to other_lib/freetype/src/bdf/bdferror.h diff --git a/jni/freetype/src/bdf/bdflib.c b/other_lib/freetype/src/bdf/bdflib.c similarity index 100% rename from jni/freetype/src/bdf/bdflib.c rename to other_lib/freetype/src/bdf/bdflib.c diff --git a/jni/freetype/src/bdf/module.mk b/other_lib/freetype/src/bdf/module.mk similarity index 100% rename from jni/freetype/src/bdf/module.mk rename to other_lib/freetype/src/bdf/module.mk diff --git a/jni/freetype/src/bdf/rules.mk b/other_lib/freetype/src/bdf/rules.mk similarity index 100% rename from jni/freetype/src/bdf/rules.mk rename to other_lib/freetype/src/bdf/rules.mk diff --git a/jni/freetype/src/cache/Jamfile b/other_lib/freetype/src/cache/Jamfile similarity index 100% rename from jni/freetype/src/cache/Jamfile rename to other_lib/freetype/src/cache/Jamfile diff --git a/jni/freetype/src/cache/ftcbasic.c b/other_lib/freetype/src/cache/ftcbasic.c similarity index 100% rename from jni/freetype/src/cache/ftcbasic.c rename to other_lib/freetype/src/cache/ftcbasic.c diff --git a/jni/freetype/src/cache/ftccache.c b/other_lib/freetype/src/cache/ftccache.c similarity index 100% rename from jni/freetype/src/cache/ftccache.c rename to other_lib/freetype/src/cache/ftccache.c diff --git a/jni/freetype/src/cache/ftccache.h b/other_lib/freetype/src/cache/ftccache.h similarity index 100% rename from jni/freetype/src/cache/ftccache.h rename to other_lib/freetype/src/cache/ftccache.h diff --git a/jni/freetype/src/cache/ftccback.h b/other_lib/freetype/src/cache/ftccback.h similarity index 100% rename from jni/freetype/src/cache/ftccback.h rename to other_lib/freetype/src/cache/ftccback.h diff --git a/jni/freetype/src/cache/ftccmap.c b/other_lib/freetype/src/cache/ftccmap.c similarity index 100% rename from jni/freetype/src/cache/ftccmap.c rename to other_lib/freetype/src/cache/ftccmap.c diff --git a/jni/freetype/src/cache/ftcerror.h b/other_lib/freetype/src/cache/ftcerror.h similarity index 100% rename from jni/freetype/src/cache/ftcerror.h rename to other_lib/freetype/src/cache/ftcerror.h diff --git a/jni/freetype/src/cache/ftcglyph.c b/other_lib/freetype/src/cache/ftcglyph.c similarity index 100% rename from jni/freetype/src/cache/ftcglyph.c rename to other_lib/freetype/src/cache/ftcglyph.c diff --git a/jni/freetype/src/cache/ftcglyph.h b/other_lib/freetype/src/cache/ftcglyph.h similarity index 100% rename from jni/freetype/src/cache/ftcglyph.h rename to other_lib/freetype/src/cache/ftcglyph.h diff --git a/jni/freetype/src/cache/ftcimage.c b/other_lib/freetype/src/cache/ftcimage.c similarity index 100% rename from jni/freetype/src/cache/ftcimage.c rename to other_lib/freetype/src/cache/ftcimage.c diff --git a/jni/freetype/src/cache/ftcimage.h b/other_lib/freetype/src/cache/ftcimage.h similarity index 100% rename from jni/freetype/src/cache/ftcimage.h rename to other_lib/freetype/src/cache/ftcimage.h diff --git a/jni/freetype/src/cache/ftcmanag.c b/other_lib/freetype/src/cache/ftcmanag.c similarity index 100% rename from jni/freetype/src/cache/ftcmanag.c rename to other_lib/freetype/src/cache/ftcmanag.c diff --git a/jni/freetype/src/cache/ftcmanag.h b/other_lib/freetype/src/cache/ftcmanag.h similarity index 100% rename from jni/freetype/src/cache/ftcmanag.h rename to other_lib/freetype/src/cache/ftcmanag.h diff --git a/jni/freetype/src/cache/ftcmru.c b/other_lib/freetype/src/cache/ftcmru.c similarity index 100% rename from jni/freetype/src/cache/ftcmru.c rename to other_lib/freetype/src/cache/ftcmru.c diff --git a/jni/freetype/src/cache/ftcmru.h b/other_lib/freetype/src/cache/ftcmru.h similarity index 100% rename from jni/freetype/src/cache/ftcmru.h rename to other_lib/freetype/src/cache/ftcmru.h diff --git a/jni/freetype/src/cache/ftcsbits.c b/other_lib/freetype/src/cache/ftcsbits.c similarity index 100% rename from jni/freetype/src/cache/ftcsbits.c rename to other_lib/freetype/src/cache/ftcsbits.c diff --git a/jni/freetype/src/cache/ftcsbits.h b/other_lib/freetype/src/cache/ftcsbits.h similarity index 100% rename from jni/freetype/src/cache/ftcsbits.h rename to other_lib/freetype/src/cache/ftcsbits.h diff --git a/jni/freetype/src/cache/rules.mk b/other_lib/freetype/src/cache/rules.mk similarity index 100% rename from jni/freetype/src/cache/rules.mk rename to other_lib/freetype/src/cache/rules.mk diff --git a/jni/freetype/src/cff/Jamfile b/other_lib/freetype/src/cff/Jamfile similarity index 100% rename from jni/freetype/src/cff/Jamfile rename to other_lib/freetype/src/cff/Jamfile diff --git a/jni/freetype/src/cff/cffcmap.c b/other_lib/freetype/src/cff/cffcmap.c similarity index 100% rename from jni/freetype/src/cff/cffcmap.c rename to other_lib/freetype/src/cff/cffcmap.c diff --git a/jni/freetype/src/cff/cffcmap.h b/other_lib/freetype/src/cff/cffcmap.h similarity index 100% rename from jni/freetype/src/cff/cffcmap.h rename to other_lib/freetype/src/cff/cffcmap.h diff --git a/jni/freetype/src/cff/cffdrivr.c b/other_lib/freetype/src/cff/cffdrivr.c similarity index 100% rename from jni/freetype/src/cff/cffdrivr.c rename to other_lib/freetype/src/cff/cffdrivr.c diff --git a/jni/freetype/src/cff/cffdrivr.h b/other_lib/freetype/src/cff/cffdrivr.h similarity index 100% rename from jni/freetype/src/cff/cffdrivr.h rename to other_lib/freetype/src/cff/cffdrivr.h diff --git a/jni/freetype/src/cff/cfferrs.h b/other_lib/freetype/src/cff/cfferrs.h similarity index 100% rename from jni/freetype/src/cff/cfferrs.h rename to other_lib/freetype/src/cff/cfferrs.h diff --git a/jni/freetype/src/cff/cffgload.c b/other_lib/freetype/src/cff/cffgload.c similarity index 100% rename from jni/freetype/src/cff/cffgload.c rename to other_lib/freetype/src/cff/cffgload.c diff --git a/jni/freetype/src/cff/cffgload.h b/other_lib/freetype/src/cff/cffgload.h similarity index 100% rename from jni/freetype/src/cff/cffgload.h rename to other_lib/freetype/src/cff/cffgload.h diff --git a/jni/freetype/src/cff/cffload.c b/other_lib/freetype/src/cff/cffload.c similarity index 100% rename from jni/freetype/src/cff/cffload.c rename to other_lib/freetype/src/cff/cffload.c diff --git a/jni/freetype/src/cff/cffload.h b/other_lib/freetype/src/cff/cffload.h similarity index 100% rename from jni/freetype/src/cff/cffload.h rename to other_lib/freetype/src/cff/cffload.h diff --git a/jni/freetype/src/cff/cffobjs.c b/other_lib/freetype/src/cff/cffobjs.c similarity index 100% rename from jni/freetype/src/cff/cffobjs.c rename to other_lib/freetype/src/cff/cffobjs.c diff --git a/jni/freetype/src/cff/cffobjs.h b/other_lib/freetype/src/cff/cffobjs.h similarity index 100% rename from jni/freetype/src/cff/cffobjs.h rename to other_lib/freetype/src/cff/cffobjs.h diff --git a/jni/freetype/src/cff/cffparse.c b/other_lib/freetype/src/cff/cffparse.c similarity index 100% rename from jni/freetype/src/cff/cffparse.c rename to other_lib/freetype/src/cff/cffparse.c diff --git a/jni/freetype/src/cff/cffparse.h b/other_lib/freetype/src/cff/cffparse.h similarity index 100% rename from jni/freetype/src/cff/cffparse.h rename to other_lib/freetype/src/cff/cffparse.h diff --git a/jni/freetype/src/cff/cffpic.c b/other_lib/freetype/src/cff/cffpic.c similarity index 100% rename from jni/freetype/src/cff/cffpic.c rename to other_lib/freetype/src/cff/cffpic.c diff --git a/jni/freetype/src/cff/cffpic.h b/other_lib/freetype/src/cff/cffpic.h similarity index 100% rename from jni/freetype/src/cff/cffpic.h rename to other_lib/freetype/src/cff/cffpic.h diff --git a/jni/freetype/src/cff/cfftoken.h b/other_lib/freetype/src/cff/cfftoken.h similarity index 100% rename from jni/freetype/src/cff/cfftoken.h rename to other_lib/freetype/src/cff/cfftoken.h diff --git a/jni/freetype/src/cff/cfftypes.h b/other_lib/freetype/src/cff/cfftypes.h similarity index 100% rename from jni/freetype/src/cff/cfftypes.h rename to other_lib/freetype/src/cff/cfftypes.h diff --git a/jni/freetype/src/cff/module.mk b/other_lib/freetype/src/cff/module.mk similarity index 100% rename from jni/freetype/src/cff/module.mk rename to other_lib/freetype/src/cff/module.mk diff --git a/jni/freetype/src/cff/rules.mk b/other_lib/freetype/src/cff/rules.mk similarity index 100% rename from jni/freetype/src/cff/rules.mk rename to other_lib/freetype/src/cff/rules.mk diff --git a/jni/freetype/src/cid/Jamfile b/other_lib/freetype/src/cid/Jamfile similarity index 100% rename from jni/freetype/src/cid/Jamfile rename to other_lib/freetype/src/cid/Jamfile diff --git a/jni/freetype/src/cid/ciderrs.h b/other_lib/freetype/src/cid/ciderrs.h similarity index 100% rename from jni/freetype/src/cid/ciderrs.h rename to other_lib/freetype/src/cid/ciderrs.h diff --git a/jni/freetype/src/cid/cidgload.c b/other_lib/freetype/src/cid/cidgload.c similarity index 100% rename from jni/freetype/src/cid/cidgload.c rename to other_lib/freetype/src/cid/cidgload.c diff --git a/jni/freetype/src/cid/cidgload.h b/other_lib/freetype/src/cid/cidgload.h similarity index 100% rename from jni/freetype/src/cid/cidgload.h rename to other_lib/freetype/src/cid/cidgload.h diff --git a/jni/freetype/src/cid/cidload.c b/other_lib/freetype/src/cid/cidload.c similarity index 100% rename from jni/freetype/src/cid/cidload.c rename to other_lib/freetype/src/cid/cidload.c diff --git a/jni/freetype/src/cid/cidload.h b/other_lib/freetype/src/cid/cidload.h similarity index 100% rename from jni/freetype/src/cid/cidload.h rename to other_lib/freetype/src/cid/cidload.h diff --git a/jni/freetype/src/cid/cidobjs.c b/other_lib/freetype/src/cid/cidobjs.c similarity index 100% rename from jni/freetype/src/cid/cidobjs.c rename to other_lib/freetype/src/cid/cidobjs.c diff --git a/jni/freetype/src/cid/cidobjs.h b/other_lib/freetype/src/cid/cidobjs.h similarity index 100% rename from jni/freetype/src/cid/cidobjs.h rename to other_lib/freetype/src/cid/cidobjs.h diff --git a/jni/freetype/src/cid/cidparse.c b/other_lib/freetype/src/cid/cidparse.c similarity index 100% rename from jni/freetype/src/cid/cidparse.c rename to other_lib/freetype/src/cid/cidparse.c diff --git a/jni/freetype/src/cid/cidparse.h b/other_lib/freetype/src/cid/cidparse.h similarity index 100% rename from jni/freetype/src/cid/cidparse.h rename to other_lib/freetype/src/cid/cidparse.h diff --git a/jni/freetype/src/cid/cidriver.c b/other_lib/freetype/src/cid/cidriver.c similarity index 100% rename from jni/freetype/src/cid/cidriver.c rename to other_lib/freetype/src/cid/cidriver.c diff --git a/jni/freetype/src/cid/cidriver.h b/other_lib/freetype/src/cid/cidriver.h similarity index 100% rename from jni/freetype/src/cid/cidriver.h rename to other_lib/freetype/src/cid/cidriver.h diff --git a/jni/freetype/src/cid/cidtoken.h b/other_lib/freetype/src/cid/cidtoken.h similarity index 100% rename from jni/freetype/src/cid/cidtoken.h rename to other_lib/freetype/src/cid/cidtoken.h diff --git a/jni/freetype/src/cid/module.mk b/other_lib/freetype/src/cid/module.mk similarity index 100% rename from jni/freetype/src/cid/module.mk rename to other_lib/freetype/src/cid/module.mk diff --git a/jni/freetype/src/cid/rules.mk b/other_lib/freetype/src/cid/rules.mk similarity index 100% rename from jni/freetype/src/cid/rules.mk rename to other_lib/freetype/src/cid/rules.mk diff --git a/jni/freetype/src/gxvalid/Jamfile b/other_lib/freetype/src/gxvalid/Jamfile similarity index 100% rename from jni/freetype/src/gxvalid/Jamfile rename to other_lib/freetype/src/gxvalid/Jamfile diff --git a/jni/freetype/src/gxvalid/README b/other_lib/freetype/src/gxvalid/README similarity index 100% rename from jni/freetype/src/gxvalid/README rename to other_lib/freetype/src/gxvalid/README diff --git a/jni/freetype/src/gxvalid/gxvalid.h b/other_lib/freetype/src/gxvalid/gxvalid.h similarity index 100% rename from jni/freetype/src/gxvalid/gxvalid.h rename to other_lib/freetype/src/gxvalid/gxvalid.h diff --git a/jni/freetype/src/gxvalid/gxvbsln.c b/other_lib/freetype/src/gxvalid/gxvbsln.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvbsln.c rename to other_lib/freetype/src/gxvalid/gxvbsln.c diff --git a/jni/freetype/src/gxvalid/gxvcommn.c b/other_lib/freetype/src/gxvalid/gxvcommn.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvcommn.c rename to other_lib/freetype/src/gxvalid/gxvcommn.c diff --git a/jni/freetype/src/gxvalid/gxvcommn.h b/other_lib/freetype/src/gxvalid/gxvcommn.h similarity index 100% rename from jni/freetype/src/gxvalid/gxvcommn.h rename to other_lib/freetype/src/gxvalid/gxvcommn.h diff --git a/jni/freetype/src/gxvalid/gxverror.h b/other_lib/freetype/src/gxvalid/gxverror.h similarity index 100% rename from jni/freetype/src/gxvalid/gxverror.h rename to other_lib/freetype/src/gxvalid/gxverror.h diff --git a/jni/freetype/src/gxvalid/gxvfeat.c b/other_lib/freetype/src/gxvalid/gxvfeat.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvfeat.c rename to other_lib/freetype/src/gxvalid/gxvfeat.c diff --git a/jni/freetype/src/gxvalid/gxvfeat.h b/other_lib/freetype/src/gxvalid/gxvfeat.h similarity index 100% rename from jni/freetype/src/gxvalid/gxvfeat.h rename to other_lib/freetype/src/gxvalid/gxvfeat.h diff --git a/jni/freetype/src/gxvalid/gxvjust.c b/other_lib/freetype/src/gxvalid/gxvjust.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvjust.c rename to other_lib/freetype/src/gxvalid/gxvjust.c diff --git a/jni/freetype/src/gxvalid/gxvkern.c b/other_lib/freetype/src/gxvalid/gxvkern.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvkern.c rename to other_lib/freetype/src/gxvalid/gxvkern.c diff --git a/jni/freetype/src/gxvalid/gxvlcar.c b/other_lib/freetype/src/gxvalid/gxvlcar.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvlcar.c rename to other_lib/freetype/src/gxvalid/gxvlcar.c diff --git a/jni/freetype/src/gxvalid/gxvmod.c b/other_lib/freetype/src/gxvalid/gxvmod.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvmod.c rename to other_lib/freetype/src/gxvalid/gxvmod.c diff --git a/jni/freetype/src/gxvalid/gxvmod.h b/other_lib/freetype/src/gxvalid/gxvmod.h similarity index 100% rename from jni/freetype/src/gxvalid/gxvmod.h rename to other_lib/freetype/src/gxvalid/gxvmod.h diff --git a/jni/freetype/src/gxvalid/gxvmort.c b/other_lib/freetype/src/gxvalid/gxvmort.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvmort.c rename to other_lib/freetype/src/gxvalid/gxvmort.c diff --git a/jni/freetype/src/gxvalid/gxvmort.h b/other_lib/freetype/src/gxvalid/gxvmort.h similarity index 100% rename from jni/freetype/src/gxvalid/gxvmort.h rename to other_lib/freetype/src/gxvalid/gxvmort.h diff --git a/jni/freetype/src/gxvalid/gxvmort0.c b/other_lib/freetype/src/gxvalid/gxvmort0.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvmort0.c rename to other_lib/freetype/src/gxvalid/gxvmort0.c diff --git a/jni/freetype/src/gxvalid/gxvmort1.c b/other_lib/freetype/src/gxvalid/gxvmort1.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvmort1.c rename to other_lib/freetype/src/gxvalid/gxvmort1.c diff --git a/jni/freetype/src/gxvalid/gxvmort2.c b/other_lib/freetype/src/gxvalid/gxvmort2.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvmort2.c rename to other_lib/freetype/src/gxvalid/gxvmort2.c diff --git a/jni/freetype/src/gxvalid/gxvmort4.c b/other_lib/freetype/src/gxvalid/gxvmort4.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvmort4.c rename to other_lib/freetype/src/gxvalid/gxvmort4.c diff --git a/jni/freetype/src/gxvalid/gxvmort5.c b/other_lib/freetype/src/gxvalid/gxvmort5.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvmort5.c rename to other_lib/freetype/src/gxvalid/gxvmort5.c diff --git a/jni/freetype/src/gxvalid/gxvmorx.c b/other_lib/freetype/src/gxvalid/gxvmorx.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvmorx.c rename to other_lib/freetype/src/gxvalid/gxvmorx.c diff --git a/jni/freetype/src/gxvalid/gxvmorx.h b/other_lib/freetype/src/gxvalid/gxvmorx.h similarity index 100% rename from jni/freetype/src/gxvalid/gxvmorx.h rename to other_lib/freetype/src/gxvalid/gxvmorx.h diff --git a/jni/freetype/src/gxvalid/gxvmorx0.c b/other_lib/freetype/src/gxvalid/gxvmorx0.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvmorx0.c rename to other_lib/freetype/src/gxvalid/gxvmorx0.c diff --git a/jni/freetype/src/gxvalid/gxvmorx1.c b/other_lib/freetype/src/gxvalid/gxvmorx1.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvmorx1.c rename to other_lib/freetype/src/gxvalid/gxvmorx1.c diff --git a/jni/freetype/src/gxvalid/gxvmorx2.c b/other_lib/freetype/src/gxvalid/gxvmorx2.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvmorx2.c rename to other_lib/freetype/src/gxvalid/gxvmorx2.c diff --git a/jni/freetype/src/gxvalid/gxvmorx4.c b/other_lib/freetype/src/gxvalid/gxvmorx4.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvmorx4.c rename to other_lib/freetype/src/gxvalid/gxvmorx4.c diff --git a/jni/freetype/src/gxvalid/gxvmorx5.c b/other_lib/freetype/src/gxvalid/gxvmorx5.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvmorx5.c rename to other_lib/freetype/src/gxvalid/gxvmorx5.c diff --git a/jni/freetype/src/gxvalid/gxvopbd.c b/other_lib/freetype/src/gxvalid/gxvopbd.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvopbd.c rename to other_lib/freetype/src/gxvalid/gxvopbd.c diff --git a/jni/freetype/src/gxvalid/gxvprop.c b/other_lib/freetype/src/gxvalid/gxvprop.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvprop.c rename to other_lib/freetype/src/gxvalid/gxvprop.c diff --git a/jni/freetype/src/gxvalid/gxvtrak.c b/other_lib/freetype/src/gxvalid/gxvtrak.c similarity index 100% rename from jni/freetype/src/gxvalid/gxvtrak.c rename to other_lib/freetype/src/gxvalid/gxvtrak.c diff --git a/jni/freetype/src/gxvalid/module.mk b/other_lib/freetype/src/gxvalid/module.mk similarity index 100% rename from jni/freetype/src/gxvalid/module.mk rename to other_lib/freetype/src/gxvalid/module.mk diff --git a/jni/freetype/src/gxvalid/rules.mk b/other_lib/freetype/src/gxvalid/rules.mk similarity index 100% rename from jni/freetype/src/gxvalid/rules.mk rename to other_lib/freetype/src/gxvalid/rules.mk diff --git a/jni/freetype/src/gzip/Jamfile b/other_lib/freetype/src/gzip/Jamfile similarity index 100% rename from jni/freetype/src/gzip/Jamfile rename to other_lib/freetype/src/gzip/Jamfile diff --git a/jni/freetype/src/gzip/ftgzip.c b/other_lib/freetype/src/gzip/ftgzip.c similarity index 100% rename from jni/freetype/src/gzip/ftgzip.c rename to other_lib/freetype/src/gzip/ftgzip.c diff --git a/jni/freetype/src/gzip/rules.mk b/other_lib/freetype/src/gzip/rules.mk similarity index 100% rename from jni/freetype/src/gzip/rules.mk rename to other_lib/freetype/src/gzip/rules.mk diff --git a/jni/freetype/src/lzw/Jamfile b/other_lib/freetype/src/lzw/Jamfile similarity index 100% rename from jni/freetype/src/lzw/Jamfile rename to other_lib/freetype/src/lzw/Jamfile diff --git a/jni/freetype/src/lzw/ftlzw.c b/other_lib/freetype/src/lzw/ftlzw.c similarity index 100% rename from jni/freetype/src/lzw/ftlzw.c rename to other_lib/freetype/src/lzw/ftlzw.c diff --git a/jni/freetype/src/lzw/ftzopen.c b/other_lib/freetype/src/lzw/ftzopen.c similarity index 100% rename from jni/freetype/src/lzw/ftzopen.c rename to other_lib/freetype/src/lzw/ftzopen.c diff --git a/jni/freetype/src/lzw/ftzopen.h b/other_lib/freetype/src/lzw/ftzopen.h similarity index 100% rename from jni/freetype/src/lzw/ftzopen.h rename to other_lib/freetype/src/lzw/ftzopen.h diff --git a/jni/freetype/src/lzw/rules.mk b/other_lib/freetype/src/lzw/rules.mk similarity index 100% rename from jni/freetype/src/lzw/rules.mk rename to other_lib/freetype/src/lzw/rules.mk diff --git a/jni/freetype/src/otvalid/Jamfile b/other_lib/freetype/src/otvalid/Jamfile similarity index 100% rename from jni/freetype/src/otvalid/Jamfile rename to other_lib/freetype/src/otvalid/Jamfile diff --git a/jni/freetype/src/otvalid/module.mk b/other_lib/freetype/src/otvalid/module.mk similarity index 100% rename from jni/freetype/src/otvalid/module.mk rename to other_lib/freetype/src/otvalid/module.mk diff --git a/jni/freetype/src/otvalid/otvalid.h b/other_lib/freetype/src/otvalid/otvalid.h similarity index 100% rename from jni/freetype/src/otvalid/otvalid.h rename to other_lib/freetype/src/otvalid/otvalid.h diff --git a/jni/freetype/src/otvalid/otvbase.c b/other_lib/freetype/src/otvalid/otvbase.c similarity index 100% rename from jni/freetype/src/otvalid/otvbase.c rename to other_lib/freetype/src/otvalid/otvbase.c diff --git a/jni/freetype/src/otvalid/otvcommn.c b/other_lib/freetype/src/otvalid/otvcommn.c similarity index 100% rename from jni/freetype/src/otvalid/otvcommn.c rename to other_lib/freetype/src/otvalid/otvcommn.c diff --git a/jni/freetype/src/otvalid/otvcommn.h b/other_lib/freetype/src/otvalid/otvcommn.h similarity index 100% rename from jni/freetype/src/otvalid/otvcommn.h rename to other_lib/freetype/src/otvalid/otvcommn.h diff --git a/jni/freetype/src/otvalid/otverror.h b/other_lib/freetype/src/otvalid/otverror.h similarity index 100% rename from jni/freetype/src/otvalid/otverror.h rename to other_lib/freetype/src/otvalid/otverror.h diff --git a/jni/freetype/src/otvalid/otvgdef.c b/other_lib/freetype/src/otvalid/otvgdef.c similarity index 100% rename from jni/freetype/src/otvalid/otvgdef.c rename to other_lib/freetype/src/otvalid/otvgdef.c diff --git a/jni/freetype/src/otvalid/otvgpos.c b/other_lib/freetype/src/otvalid/otvgpos.c similarity index 100% rename from jni/freetype/src/otvalid/otvgpos.c rename to other_lib/freetype/src/otvalid/otvgpos.c diff --git a/jni/freetype/src/otvalid/otvgpos.h b/other_lib/freetype/src/otvalid/otvgpos.h similarity index 100% rename from jni/freetype/src/otvalid/otvgpos.h rename to other_lib/freetype/src/otvalid/otvgpos.h diff --git a/jni/freetype/src/otvalid/otvgsub.c b/other_lib/freetype/src/otvalid/otvgsub.c similarity index 100% rename from jni/freetype/src/otvalid/otvgsub.c rename to other_lib/freetype/src/otvalid/otvgsub.c diff --git a/jni/freetype/src/otvalid/otvjstf.c b/other_lib/freetype/src/otvalid/otvjstf.c similarity index 100% rename from jni/freetype/src/otvalid/otvjstf.c rename to other_lib/freetype/src/otvalid/otvjstf.c diff --git a/jni/freetype/src/otvalid/otvmath.c b/other_lib/freetype/src/otvalid/otvmath.c similarity index 100% rename from jni/freetype/src/otvalid/otvmath.c rename to other_lib/freetype/src/otvalid/otvmath.c diff --git a/jni/freetype/src/otvalid/otvmod.c b/other_lib/freetype/src/otvalid/otvmod.c similarity index 100% rename from jni/freetype/src/otvalid/otvmod.c rename to other_lib/freetype/src/otvalid/otvmod.c diff --git a/jni/freetype/src/otvalid/otvmod.h b/other_lib/freetype/src/otvalid/otvmod.h similarity index 100% rename from jni/freetype/src/otvalid/otvmod.h rename to other_lib/freetype/src/otvalid/otvmod.h diff --git a/jni/freetype/src/otvalid/rules.mk b/other_lib/freetype/src/otvalid/rules.mk similarity index 100% rename from jni/freetype/src/otvalid/rules.mk rename to other_lib/freetype/src/otvalid/rules.mk diff --git a/jni/freetype/src/pcf/Jamfile b/other_lib/freetype/src/pcf/Jamfile similarity index 100% rename from jni/freetype/src/pcf/Jamfile rename to other_lib/freetype/src/pcf/Jamfile diff --git a/jni/freetype/src/pcf/README b/other_lib/freetype/src/pcf/README similarity index 100% rename from jni/freetype/src/pcf/README rename to other_lib/freetype/src/pcf/README diff --git a/jni/freetype/src/pcf/module.mk b/other_lib/freetype/src/pcf/module.mk similarity index 100% rename from jni/freetype/src/pcf/module.mk rename to other_lib/freetype/src/pcf/module.mk diff --git a/jni/freetype/src/pcf/pcf.h b/other_lib/freetype/src/pcf/pcf.h similarity index 100% rename from jni/freetype/src/pcf/pcf.h rename to other_lib/freetype/src/pcf/pcf.h diff --git a/jni/freetype/src/pcf/pcfdrivr.c b/other_lib/freetype/src/pcf/pcfdrivr.c similarity index 100% rename from jni/freetype/src/pcf/pcfdrivr.c rename to other_lib/freetype/src/pcf/pcfdrivr.c diff --git a/jni/freetype/src/pcf/pcfdrivr.h b/other_lib/freetype/src/pcf/pcfdrivr.h similarity index 100% rename from jni/freetype/src/pcf/pcfdrivr.h rename to other_lib/freetype/src/pcf/pcfdrivr.h diff --git a/jni/freetype/src/pcf/pcferror.h b/other_lib/freetype/src/pcf/pcferror.h similarity index 100% rename from jni/freetype/src/pcf/pcferror.h rename to other_lib/freetype/src/pcf/pcferror.h diff --git a/jni/freetype/src/pcf/pcfread.c b/other_lib/freetype/src/pcf/pcfread.c similarity index 100% rename from jni/freetype/src/pcf/pcfread.c rename to other_lib/freetype/src/pcf/pcfread.c diff --git a/jni/freetype/src/pcf/pcfread.h b/other_lib/freetype/src/pcf/pcfread.h similarity index 100% rename from jni/freetype/src/pcf/pcfread.h rename to other_lib/freetype/src/pcf/pcfread.h diff --git a/jni/freetype/src/pcf/pcfutil.c b/other_lib/freetype/src/pcf/pcfutil.c similarity index 100% rename from jni/freetype/src/pcf/pcfutil.c rename to other_lib/freetype/src/pcf/pcfutil.c diff --git a/jni/freetype/src/pcf/pcfutil.h b/other_lib/freetype/src/pcf/pcfutil.h similarity index 100% rename from jni/freetype/src/pcf/pcfutil.h rename to other_lib/freetype/src/pcf/pcfutil.h diff --git a/jni/freetype/src/pcf/rules.mk b/other_lib/freetype/src/pcf/rules.mk similarity index 100% rename from jni/freetype/src/pcf/rules.mk rename to other_lib/freetype/src/pcf/rules.mk diff --git a/jni/freetype/src/pfr/Jamfile b/other_lib/freetype/src/pfr/Jamfile similarity index 100% rename from jni/freetype/src/pfr/Jamfile rename to other_lib/freetype/src/pfr/Jamfile diff --git a/jni/freetype/src/pfr/module.mk b/other_lib/freetype/src/pfr/module.mk similarity index 100% rename from jni/freetype/src/pfr/module.mk rename to other_lib/freetype/src/pfr/module.mk diff --git a/jni/freetype/src/pfr/pfrcmap.c b/other_lib/freetype/src/pfr/pfrcmap.c similarity index 100% rename from jni/freetype/src/pfr/pfrcmap.c rename to other_lib/freetype/src/pfr/pfrcmap.c diff --git a/jni/freetype/src/pfr/pfrcmap.h b/other_lib/freetype/src/pfr/pfrcmap.h similarity index 100% rename from jni/freetype/src/pfr/pfrcmap.h rename to other_lib/freetype/src/pfr/pfrcmap.h diff --git a/jni/freetype/src/pfr/pfrdrivr.c b/other_lib/freetype/src/pfr/pfrdrivr.c similarity index 100% rename from jni/freetype/src/pfr/pfrdrivr.c rename to other_lib/freetype/src/pfr/pfrdrivr.c diff --git a/jni/freetype/src/pfr/pfrdrivr.h b/other_lib/freetype/src/pfr/pfrdrivr.h similarity index 100% rename from jni/freetype/src/pfr/pfrdrivr.h rename to other_lib/freetype/src/pfr/pfrdrivr.h diff --git a/jni/freetype/src/pfr/pfrerror.h b/other_lib/freetype/src/pfr/pfrerror.h similarity index 100% rename from jni/freetype/src/pfr/pfrerror.h rename to other_lib/freetype/src/pfr/pfrerror.h diff --git a/jni/freetype/src/pfr/pfrgload.c b/other_lib/freetype/src/pfr/pfrgload.c similarity index 100% rename from jni/freetype/src/pfr/pfrgload.c rename to other_lib/freetype/src/pfr/pfrgload.c diff --git a/jni/freetype/src/pfr/pfrgload.h b/other_lib/freetype/src/pfr/pfrgload.h similarity index 100% rename from jni/freetype/src/pfr/pfrgload.h rename to other_lib/freetype/src/pfr/pfrgload.h diff --git a/jni/freetype/src/pfr/pfrload.c b/other_lib/freetype/src/pfr/pfrload.c similarity index 100% rename from jni/freetype/src/pfr/pfrload.c rename to other_lib/freetype/src/pfr/pfrload.c diff --git a/jni/freetype/src/pfr/pfrload.h b/other_lib/freetype/src/pfr/pfrload.h similarity index 100% rename from jni/freetype/src/pfr/pfrload.h rename to other_lib/freetype/src/pfr/pfrload.h diff --git a/jni/freetype/src/pfr/pfrobjs.c b/other_lib/freetype/src/pfr/pfrobjs.c similarity index 100% rename from jni/freetype/src/pfr/pfrobjs.c rename to other_lib/freetype/src/pfr/pfrobjs.c diff --git a/jni/freetype/src/pfr/pfrobjs.h b/other_lib/freetype/src/pfr/pfrobjs.h similarity index 100% rename from jni/freetype/src/pfr/pfrobjs.h rename to other_lib/freetype/src/pfr/pfrobjs.h diff --git a/jni/freetype/src/pfr/pfrsbit.c b/other_lib/freetype/src/pfr/pfrsbit.c similarity index 100% rename from jni/freetype/src/pfr/pfrsbit.c rename to other_lib/freetype/src/pfr/pfrsbit.c diff --git a/jni/freetype/src/pfr/pfrsbit.h b/other_lib/freetype/src/pfr/pfrsbit.h similarity index 100% rename from jni/freetype/src/pfr/pfrsbit.h rename to other_lib/freetype/src/pfr/pfrsbit.h diff --git a/jni/freetype/src/pfr/pfrtypes.h b/other_lib/freetype/src/pfr/pfrtypes.h similarity index 100% rename from jni/freetype/src/pfr/pfrtypes.h rename to other_lib/freetype/src/pfr/pfrtypes.h diff --git a/jni/freetype/src/pfr/rules.mk b/other_lib/freetype/src/pfr/rules.mk similarity index 100% rename from jni/freetype/src/pfr/rules.mk rename to other_lib/freetype/src/pfr/rules.mk diff --git a/jni/freetype/src/psaux/Jamfile b/other_lib/freetype/src/psaux/Jamfile similarity index 100% rename from jni/freetype/src/psaux/Jamfile rename to other_lib/freetype/src/psaux/Jamfile diff --git a/jni/freetype/src/psaux/afmparse.c b/other_lib/freetype/src/psaux/afmparse.c similarity index 100% rename from jni/freetype/src/psaux/afmparse.c rename to other_lib/freetype/src/psaux/afmparse.c diff --git a/jni/freetype/src/psaux/afmparse.h b/other_lib/freetype/src/psaux/afmparse.h similarity index 100% rename from jni/freetype/src/psaux/afmparse.h rename to other_lib/freetype/src/psaux/afmparse.h diff --git a/jni/freetype/src/psaux/module.mk b/other_lib/freetype/src/psaux/module.mk similarity index 100% rename from jni/freetype/src/psaux/module.mk rename to other_lib/freetype/src/psaux/module.mk diff --git a/jni/freetype/src/psaux/psauxerr.h b/other_lib/freetype/src/psaux/psauxerr.h similarity index 100% rename from jni/freetype/src/psaux/psauxerr.h rename to other_lib/freetype/src/psaux/psauxerr.h diff --git a/jni/freetype/src/psaux/psauxmod.c b/other_lib/freetype/src/psaux/psauxmod.c similarity index 100% rename from jni/freetype/src/psaux/psauxmod.c rename to other_lib/freetype/src/psaux/psauxmod.c diff --git a/jni/freetype/src/psaux/psauxmod.h b/other_lib/freetype/src/psaux/psauxmod.h similarity index 100% rename from jni/freetype/src/psaux/psauxmod.h rename to other_lib/freetype/src/psaux/psauxmod.h diff --git a/jni/freetype/src/psaux/psconv.c b/other_lib/freetype/src/psaux/psconv.c similarity index 100% rename from jni/freetype/src/psaux/psconv.c rename to other_lib/freetype/src/psaux/psconv.c diff --git a/jni/freetype/src/psaux/psconv.h b/other_lib/freetype/src/psaux/psconv.h similarity index 100% rename from jni/freetype/src/psaux/psconv.h rename to other_lib/freetype/src/psaux/psconv.h diff --git a/jni/freetype/src/psaux/psobjs.c b/other_lib/freetype/src/psaux/psobjs.c similarity index 100% rename from jni/freetype/src/psaux/psobjs.c rename to other_lib/freetype/src/psaux/psobjs.c diff --git a/jni/freetype/src/psaux/psobjs.h b/other_lib/freetype/src/psaux/psobjs.h similarity index 100% rename from jni/freetype/src/psaux/psobjs.h rename to other_lib/freetype/src/psaux/psobjs.h diff --git a/jni/freetype/src/psaux/rules.mk b/other_lib/freetype/src/psaux/rules.mk similarity index 100% rename from jni/freetype/src/psaux/rules.mk rename to other_lib/freetype/src/psaux/rules.mk diff --git a/jni/freetype/src/psaux/t1cmap.c b/other_lib/freetype/src/psaux/t1cmap.c similarity index 100% rename from jni/freetype/src/psaux/t1cmap.c rename to other_lib/freetype/src/psaux/t1cmap.c diff --git a/jni/freetype/src/psaux/t1cmap.h b/other_lib/freetype/src/psaux/t1cmap.h similarity index 100% rename from jni/freetype/src/psaux/t1cmap.h rename to other_lib/freetype/src/psaux/t1cmap.h diff --git a/jni/freetype/src/psaux/t1decode.c b/other_lib/freetype/src/psaux/t1decode.c similarity index 100% rename from jni/freetype/src/psaux/t1decode.c rename to other_lib/freetype/src/psaux/t1decode.c diff --git a/jni/freetype/src/psaux/t1decode.h b/other_lib/freetype/src/psaux/t1decode.h similarity index 100% rename from jni/freetype/src/psaux/t1decode.h rename to other_lib/freetype/src/psaux/t1decode.h diff --git a/jni/freetype/src/pshinter/Jamfile b/other_lib/freetype/src/pshinter/Jamfile similarity index 100% rename from jni/freetype/src/pshinter/Jamfile rename to other_lib/freetype/src/pshinter/Jamfile diff --git a/jni/freetype/src/pshinter/module.mk b/other_lib/freetype/src/pshinter/module.mk similarity index 100% rename from jni/freetype/src/pshinter/module.mk rename to other_lib/freetype/src/pshinter/module.mk diff --git a/jni/freetype/src/pshinter/pshalgo.c b/other_lib/freetype/src/pshinter/pshalgo.c similarity index 100% rename from jni/freetype/src/pshinter/pshalgo.c rename to other_lib/freetype/src/pshinter/pshalgo.c diff --git a/jni/freetype/src/pshinter/pshalgo.h b/other_lib/freetype/src/pshinter/pshalgo.h similarity index 100% rename from jni/freetype/src/pshinter/pshalgo.h rename to other_lib/freetype/src/pshinter/pshalgo.h diff --git a/jni/freetype/src/pshinter/pshglob.c b/other_lib/freetype/src/pshinter/pshglob.c similarity index 100% rename from jni/freetype/src/pshinter/pshglob.c rename to other_lib/freetype/src/pshinter/pshglob.c diff --git a/jni/freetype/src/pshinter/pshglob.h b/other_lib/freetype/src/pshinter/pshglob.h similarity index 100% rename from jni/freetype/src/pshinter/pshglob.h rename to other_lib/freetype/src/pshinter/pshglob.h diff --git a/jni/freetype/src/pshinter/pshmod.c b/other_lib/freetype/src/pshinter/pshmod.c similarity index 100% rename from jni/freetype/src/pshinter/pshmod.c rename to other_lib/freetype/src/pshinter/pshmod.c diff --git a/jni/freetype/src/pshinter/pshmod.h b/other_lib/freetype/src/pshinter/pshmod.h similarity index 100% rename from jni/freetype/src/pshinter/pshmod.h rename to other_lib/freetype/src/pshinter/pshmod.h diff --git a/jni/freetype/src/pshinter/pshnterr.h b/other_lib/freetype/src/pshinter/pshnterr.h similarity index 100% rename from jni/freetype/src/pshinter/pshnterr.h rename to other_lib/freetype/src/pshinter/pshnterr.h diff --git a/jni/freetype/src/pshinter/pshpic.c b/other_lib/freetype/src/pshinter/pshpic.c similarity index 100% rename from jni/freetype/src/pshinter/pshpic.c rename to other_lib/freetype/src/pshinter/pshpic.c diff --git a/jni/freetype/src/pshinter/pshpic.h b/other_lib/freetype/src/pshinter/pshpic.h similarity index 100% rename from jni/freetype/src/pshinter/pshpic.h rename to other_lib/freetype/src/pshinter/pshpic.h diff --git a/jni/freetype/src/pshinter/pshrec.c b/other_lib/freetype/src/pshinter/pshrec.c similarity index 100% rename from jni/freetype/src/pshinter/pshrec.c rename to other_lib/freetype/src/pshinter/pshrec.c diff --git a/jni/freetype/src/pshinter/pshrec.h b/other_lib/freetype/src/pshinter/pshrec.h similarity index 100% rename from jni/freetype/src/pshinter/pshrec.h rename to other_lib/freetype/src/pshinter/pshrec.h diff --git a/jni/freetype/src/pshinter/rules.mk b/other_lib/freetype/src/pshinter/rules.mk similarity index 100% rename from jni/freetype/src/pshinter/rules.mk rename to other_lib/freetype/src/pshinter/rules.mk diff --git a/jni/freetype/src/psnames/Jamfile b/other_lib/freetype/src/psnames/Jamfile similarity index 100% rename from jni/freetype/src/psnames/Jamfile rename to other_lib/freetype/src/psnames/Jamfile diff --git a/jni/freetype/src/psnames/module.mk b/other_lib/freetype/src/psnames/module.mk similarity index 100% rename from jni/freetype/src/psnames/module.mk rename to other_lib/freetype/src/psnames/module.mk diff --git a/jni/freetype/src/psnames/psmodule.c b/other_lib/freetype/src/psnames/psmodule.c similarity index 100% rename from jni/freetype/src/psnames/psmodule.c rename to other_lib/freetype/src/psnames/psmodule.c diff --git a/jni/freetype/src/psnames/psmodule.h b/other_lib/freetype/src/psnames/psmodule.h similarity index 100% rename from jni/freetype/src/psnames/psmodule.h rename to other_lib/freetype/src/psnames/psmodule.h diff --git a/jni/freetype/src/psnames/psnamerr.h b/other_lib/freetype/src/psnames/psnamerr.h similarity index 100% rename from jni/freetype/src/psnames/psnamerr.h rename to other_lib/freetype/src/psnames/psnamerr.h diff --git a/jni/freetype/src/psnames/pspic.c b/other_lib/freetype/src/psnames/pspic.c similarity index 100% rename from jni/freetype/src/psnames/pspic.c rename to other_lib/freetype/src/psnames/pspic.c diff --git a/jni/freetype/src/psnames/pspic.h b/other_lib/freetype/src/psnames/pspic.h similarity index 100% rename from jni/freetype/src/psnames/pspic.h rename to other_lib/freetype/src/psnames/pspic.h diff --git a/jni/freetype/src/psnames/pstables.h b/other_lib/freetype/src/psnames/pstables.h similarity index 100% rename from jni/freetype/src/psnames/pstables.h rename to other_lib/freetype/src/psnames/pstables.h diff --git a/jni/freetype/src/psnames/rules.mk b/other_lib/freetype/src/psnames/rules.mk similarity index 100% rename from jni/freetype/src/psnames/rules.mk rename to other_lib/freetype/src/psnames/rules.mk diff --git a/jni/freetype/src/raster/Jamfile b/other_lib/freetype/src/raster/Jamfile similarity index 100% rename from jni/freetype/src/raster/Jamfile rename to other_lib/freetype/src/raster/Jamfile diff --git a/jni/freetype/src/raster/ftmisc.h b/other_lib/freetype/src/raster/ftmisc.h similarity index 100% rename from jni/freetype/src/raster/ftmisc.h rename to other_lib/freetype/src/raster/ftmisc.h diff --git a/jni/freetype/src/raster/ftraster.c b/other_lib/freetype/src/raster/ftraster.c similarity index 100% rename from jni/freetype/src/raster/ftraster.c rename to other_lib/freetype/src/raster/ftraster.c diff --git a/jni/freetype/src/raster/ftraster.h b/other_lib/freetype/src/raster/ftraster.h similarity index 100% rename from jni/freetype/src/raster/ftraster.h rename to other_lib/freetype/src/raster/ftraster.h diff --git a/jni/freetype/src/raster/ftrend1.c b/other_lib/freetype/src/raster/ftrend1.c similarity index 100% rename from jni/freetype/src/raster/ftrend1.c rename to other_lib/freetype/src/raster/ftrend1.c diff --git a/jni/freetype/src/raster/ftrend1.h b/other_lib/freetype/src/raster/ftrend1.h similarity index 100% rename from jni/freetype/src/raster/ftrend1.h rename to other_lib/freetype/src/raster/ftrend1.h diff --git a/jni/freetype/src/raster/module.mk b/other_lib/freetype/src/raster/module.mk similarity index 100% rename from jni/freetype/src/raster/module.mk rename to other_lib/freetype/src/raster/module.mk diff --git a/jni/freetype/src/raster/rasterrs.h b/other_lib/freetype/src/raster/rasterrs.h similarity index 100% rename from jni/freetype/src/raster/rasterrs.h rename to other_lib/freetype/src/raster/rasterrs.h diff --git a/jni/freetype/src/raster/rastpic.c b/other_lib/freetype/src/raster/rastpic.c similarity index 100% rename from jni/freetype/src/raster/rastpic.c rename to other_lib/freetype/src/raster/rastpic.c diff --git a/jni/freetype/src/raster/rastpic.h b/other_lib/freetype/src/raster/rastpic.h similarity index 100% rename from jni/freetype/src/raster/rastpic.h rename to other_lib/freetype/src/raster/rastpic.h diff --git a/jni/freetype/src/raster/rules.mk b/other_lib/freetype/src/raster/rules.mk similarity index 100% rename from jni/freetype/src/raster/rules.mk rename to other_lib/freetype/src/raster/rules.mk diff --git a/jni/freetype/src/sfnt/Jamfile b/other_lib/freetype/src/sfnt/Jamfile similarity index 100% rename from jni/freetype/src/sfnt/Jamfile rename to other_lib/freetype/src/sfnt/Jamfile diff --git a/jni/freetype/src/sfnt/module.mk b/other_lib/freetype/src/sfnt/module.mk similarity index 100% rename from jni/freetype/src/sfnt/module.mk rename to other_lib/freetype/src/sfnt/module.mk diff --git a/jni/freetype/src/sfnt/rules.mk b/other_lib/freetype/src/sfnt/rules.mk similarity index 100% rename from jni/freetype/src/sfnt/rules.mk rename to other_lib/freetype/src/sfnt/rules.mk diff --git a/jni/freetype/src/sfnt/sfdriver.c b/other_lib/freetype/src/sfnt/sfdriver.c similarity index 100% rename from jni/freetype/src/sfnt/sfdriver.c rename to other_lib/freetype/src/sfnt/sfdriver.c diff --git a/jni/freetype/src/sfnt/sfdriver.h b/other_lib/freetype/src/sfnt/sfdriver.h similarity index 100% rename from jni/freetype/src/sfnt/sfdriver.h rename to other_lib/freetype/src/sfnt/sfdriver.h diff --git a/jni/freetype/src/sfnt/sferrors.h b/other_lib/freetype/src/sfnt/sferrors.h similarity index 100% rename from jni/freetype/src/sfnt/sferrors.h rename to other_lib/freetype/src/sfnt/sferrors.h diff --git a/jni/freetype/src/sfnt/sfntpic.c b/other_lib/freetype/src/sfnt/sfntpic.c similarity index 100% rename from jni/freetype/src/sfnt/sfntpic.c rename to other_lib/freetype/src/sfnt/sfntpic.c diff --git a/jni/freetype/src/sfnt/sfntpic.h b/other_lib/freetype/src/sfnt/sfntpic.h similarity index 100% rename from jni/freetype/src/sfnt/sfntpic.h rename to other_lib/freetype/src/sfnt/sfntpic.h diff --git a/jni/freetype/src/sfnt/sfobjs.c b/other_lib/freetype/src/sfnt/sfobjs.c similarity index 100% rename from jni/freetype/src/sfnt/sfobjs.c rename to other_lib/freetype/src/sfnt/sfobjs.c diff --git a/jni/freetype/src/sfnt/sfobjs.h b/other_lib/freetype/src/sfnt/sfobjs.h similarity index 100% rename from jni/freetype/src/sfnt/sfobjs.h rename to other_lib/freetype/src/sfnt/sfobjs.h diff --git a/jni/freetype/src/sfnt/ttbdf.c b/other_lib/freetype/src/sfnt/ttbdf.c similarity index 100% rename from jni/freetype/src/sfnt/ttbdf.c rename to other_lib/freetype/src/sfnt/ttbdf.c diff --git a/jni/freetype/src/sfnt/ttbdf.h b/other_lib/freetype/src/sfnt/ttbdf.h similarity index 100% rename from jni/freetype/src/sfnt/ttbdf.h rename to other_lib/freetype/src/sfnt/ttbdf.h diff --git a/jni/freetype/src/sfnt/ttcmap.c b/other_lib/freetype/src/sfnt/ttcmap.c similarity index 100% rename from jni/freetype/src/sfnt/ttcmap.c rename to other_lib/freetype/src/sfnt/ttcmap.c diff --git a/jni/freetype/src/sfnt/ttcmap.h b/other_lib/freetype/src/sfnt/ttcmap.h similarity index 100% rename from jni/freetype/src/sfnt/ttcmap.h rename to other_lib/freetype/src/sfnt/ttcmap.h diff --git a/jni/freetype/src/sfnt/ttcmapc.h b/other_lib/freetype/src/sfnt/ttcmapc.h similarity index 100% rename from jni/freetype/src/sfnt/ttcmapc.h rename to other_lib/freetype/src/sfnt/ttcmapc.h diff --git a/jni/freetype/src/sfnt/ttkern.c b/other_lib/freetype/src/sfnt/ttkern.c similarity index 100% rename from jni/freetype/src/sfnt/ttkern.c rename to other_lib/freetype/src/sfnt/ttkern.c diff --git a/jni/freetype/src/sfnt/ttkern.h b/other_lib/freetype/src/sfnt/ttkern.h similarity index 100% rename from jni/freetype/src/sfnt/ttkern.h rename to other_lib/freetype/src/sfnt/ttkern.h diff --git a/jni/freetype/src/sfnt/ttload.c b/other_lib/freetype/src/sfnt/ttload.c similarity index 100% rename from jni/freetype/src/sfnt/ttload.c rename to other_lib/freetype/src/sfnt/ttload.c diff --git a/jni/freetype/src/sfnt/ttload.h b/other_lib/freetype/src/sfnt/ttload.h similarity index 100% rename from jni/freetype/src/sfnt/ttload.h rename to other_lib/freetype/src/sfnt/ttload.h diff --git a/jni/freetype/src/sfnt/ttmtx.c b/other_lib/freetype/src/sfnt/ttmtx.c similarity index 100% rename from jni/freetype/src/sfnt/ttmtx.c rename to other_lib/freetype/src/sfnt/ttmtx.c diff --git a/jni/freetype/src/sfnt/ttmtx.h b/other_lib/freetype/src/sfnt/ttmtx.h similarity index 100% rename from jni/freetype/src/sfnt/ttmtx.h rename to other_lib/freetype/src/sfnt/ttmtx.h diff --git a/jni/freetype/src/sfnt/ttpost.c b/other_lib/freetype/src/sfnt/ttpost.c similarity index 100% rename from jni/freetype/src/sfnt/ttpost.c rename to other_lib/freetype/src/sfnt/ttpost.c diff --git a/jni/freetype/src/sfnt/ttpost.h b/other_lib/freetype/src/sfnt/ttpost.h similarity index 100% rename from jni/freetype/src/sfnt/ttpost.h rename to other_lib/freetype/src/sfnt/ttpost.h diff --git a/jni/freetype/src/sfnt/ttsbit.c b/other_lib/freetype/src/sfnt/ttsbit.c similarity index 100% rename from jni/freetype/src/sfnt/ttsbit.c rename to other_lib/freetype/src/sfnt/ttsbit.c diff --git a/jni/freetype/src/sfnt/ttsbit.h b/other_lib/freetype/src/sfnt/ttsbit.h similarity index 100% rename from jni/freetype/src/sfnt/ttsbit.h rename to other_lib/freetype/src/sfnt/ttsbit.h diff --git a/jni/freetype/src/smooth/Jamfile b/other_lib/freetype/src/smooth/Jamfile similarity index 100% rename from jni/freetype/src/smooth/Jamfile rename to other_lib/freetype/src/smooth/Jamfile diff --git a/jni/freetype/src/smooth/ftgrays.c b/other_lib/freetype/src/smooth/ftgrays.c similarity index 100% rename from jni/freetype/src/smooth/ftgrays.c rename to other_lib/freetype/src/smooth/ftgrays.c diff --git a/jni/freetype/src/smooth/ftgrays.h b/other_lib/freetype/src/smooth/ftgrays.h similarity index 100% rename from jni/freetype/src/smooth/ftgrays.h rename to other_lib/freetype/src/smooth/ftgrays.h diff --git a/jni/freetype/src/smooth/ftsmerrs.h b/other_lib/freetype/src/smooth/ftsmerrs.h similarity index 100% rename from jni/freetype/src/smooth/ftsmerrs.h rename to other_lib/freetype/src/smooth/ftsmerrs.h diff --git a/jni/freetype/src/smooth/ftsmooth.c b/other_lib/freetype/src/smooth/ftsmooth.c similarity index 100% rename from jni/freetype/src/smooth/ftsmooth.c rename to other_lib/freetype/src/smooth/ftsmooth.c diff --git a/jni/freetype/src/smooth/ftsmooth.h b/other_lib/freetype/src/smooth/ftsmooth.h similarity index 100% rename from jni/freetype/src/smooth/ftsmooth.h rename to other_lib/freetype/src/smooth/ftsmooth.h diff --git a/jni/freetype/src/smooth/ftspic.c b/other_lib/freetype/src/smooth/ftspic.c similarity index 100% rename from jni/freetype/src/smooth/ftspic.c rename to other_lib/freetype/src/smooth/ftspic.c diff --git a/jni/freetype/src/smooth/ftspic.h b/other_lib/freetype/src/smooth/ftspic.h similarity index 100% rename from jni/freetype/src/smooth/ftspic.h rename to other_lib/freetype/src/smooth/ftspic.h diff --git a/jni/freetype/src/smooth/module.mk b/other_lib/freetype/src/smooth/module.mk similarity index 100% rename from jni/freetype/src/smooth/module.mk rename to other_lib/freetype/src/smooth/module.mk diff --git a/jni/freetype/src/smooth/rules.mk b/other_lib/freetype/src/smooth/rules.mk similarity index 100% rename from jni/freetype/src/smooth/rules.mk rename to other_lib/freetype/src/smooth/rules.mk diff --git a/jni/freetype/src/truetype/Jamfile b/other_lib/freetype/src/truetype/Jamfile similarity index 100% rename from jni/freetype/src/truetype/Jamfile rename to other_lib/freetype/src/truetype/Jamfile diff --git a/jni/freetype/src/truetype/module.mk b/other_lib/freetype/src/truetype/module.mk similarity index 100% rename from jni/freetype/src/truetype/module.mk rename to other_lib/freetype/src/truetype/module.mk diff --git a/jni/freetype/src/truetype/rules.mk b/other_lib/freetype/src/truetype/rules.mk similarity index 100% rename from jni/freetype/src/truetype/rules.mk rename to other_lib/freetype/src/truetype/rules.mk diff --git a/jni/freetype/src/truetype/ttdriver.c b/other_lib/freetype/src/truetype/ttdriver.c similarity index 100% rename from jni/freetype/src/truetype/ttdriver.c rename to other_lib/freetype/src/truetype/ttdriver.c diff --git a/jni/freetype/src/truetype/ttdriver.h b/other_lib/freetype/src/truetype/ttdriver.h similarity index 100% rename from jni/freetype/src/truetype/ttdriver.h rename to other_lib/freetype/src/truetype/ttdriver.h diff --git a/jni/freetype/src/truetype/tterrors.h b/other_lib/freetype/src/truetype/tterrors.h similarity index 100% rename from jni/freetype/src/truetype/tterrors.h rename to other_lib/freetype/src/truetype/tterrors.h diff --git a/jni/freetype/src/truetype/ttgload.c b/other_lib/freetype/src/truetype/ttgload.c similarity index 100% rename from jni/freetype/src/truetype/ttgload.c rename to other_lib/freetype/src/truetype/ttgload.c diff --git a/jni/freetype/src/truetype/ttgload.h b/other_lib/freetype/src/truetype/ttgload.h similarity index 100% rename from jni/freetype/src/truetype/ttgload.h rename to other_lib/freetype/src/truetype/ttgload.h diff --git a/jni/freetype/src/truetype/ttgxvar.c b/other_lib/freetype/src/truetype/ttgxvar.c similarity index 100% rename from jni/freetype/src/truetype/ttgxvar.c rename to other_lib/freetype/src/truetype/ttgxvar.c diff --git a/jni/freetype/src/truetype/ttgxvar.h b/other_lib/freetype/src/truetype/ttgxvar.h similarity index 100% rename from jni/freetype/src/truetype/ttgxvar.h rename to other_lib/freetype/src/truetype/ttgxvar.h diff --git a/jni/freetype/src/truetype/ttinterp.c b/other_lib/freetype/src/truetype/ttinterp.c similarity index 100% rename from jni/freetype/src/truetype/ttinterp.c rename to other_lib/freetype/src/truetype/ttinterp.c diff --git a/jni/freetype/src/truetype/ttinterp.h b/other_lib/freetype/src/truetype/ttinterp.h similarity index 100% rename from jni/freetype/src/truetype/ttinterp.h rename to other_lib/freetype/src/truetype/ttinterp.h diff --git a/jni/freetype/src/truetype/ttobjs.c b/other_lib/freetype/src/truetype/ttobjs.c similarity index 100% rename from jni/freetype/src/truetype/ttobjs.c rename to other_lib/freetype/src/truetype/ttobjs.c diff --git a/jni/freetype/src/truetype/ttobjs.h b/other_lib/freetype/src/truetype/ttobjs.h similarity index 100% rename from jni/freetype/src/truetype/ttobjs.h rename to other_lib/freetype/src/truetype/ttobjs.h diff --git a/jni/freetype/src/truetype/ttpic.c b/other_lib/freetype/src/truetype/ttpic.c similarity index 100% rename from jni/freetype/src/truetype/ttpic.c rename to other_lib/freetype/src/truetype/ttpic.c diff --git a/jni/freetype/src/truetype/ttpic.h b/other_lib/freetype/src/truetype/ttpic.h similarity index 100% rename from jni/freetype/src/truetype/ttpic.h rename to other_lib/freetype/src/truetype/ttpic.h diff --git a/jni/freetype/src/truetype/ttpload.c b/other_lib/freetype/src/truetype/ttpload.c similarity index 100% rename from jni/freetype/src/truetype/ttpload.c rename to other_lib/freetype/src/truetype/ttpload.c diff --git a/jni/freetype/src/truetype/ttpload.h b/other_lib/freetype/src/truetype/ttpload.h similarity index 100% rename from jni/freetype/src/truetype/ttpload.h rename to other_lib/freetype/src/truetype/ttpload.h diff --git a/jni/freetype/src/type1/Jamfile b/other_lib/freetype/src/type1/Jamfile similarity index 100% rename from jni/freetype/src/type1/Jamfile rename to other_lib/freetype/src/type1/Jamfile diff --git a/jni/freetype/src/type1/module.mk b/other_lib/freetype/src/type1/module.mk similarity index 100% rename from jni/freetype/src/type1/module.mk rename to other_lib/freetype/src/type1/module.mk diff --git a/jni/freetype/src/type1/rules.mk b/other_lib/freetype/src/type1/rules.mk similarity index 100% rename from jni/freetype/src/type1/rules.mk rename to other_lib/freetype/src/type1/rules.mk diff --git a/jni/freetype/src/type1/t1afm.c b/other_lib/freetype/src/type1/t1afm.c similarity index 100% rename from jni/freetype/src/type1/t1afm.c rename to other_lib/freetype/src/type1/t1afm.c diff --git a/jni/freetype/src/type1/t1afm.h b/other_lib/freetype/src/type1/t1afm.h similarity index 100% rename from jni/freetype/src/type1/t1afm.h rename to other_lib/freetype/src/type1/t1afm.h diff --git a/jni/freetype/src/type1/t1driver.c b/other_lib/freetype/src/type1/t1driver.c similarity index 100% rename from jni/freetype/src/type1/t1driver.c rename to other_lib/freetype/src/type1/t1driver.c diff --git a/jni/freetype/src/type1/t1driver.h b/other_lib/freetype/src/type1/t1driver.h similarity index 100% rename from jni/freetype/src/type1/t1driver.h rename to other_lib/freetype/src/type1/t1driver.h diff --git a/jni/freetype/src/type1/t1errors.h b/other_lib/freetype/src/type1/t1errors.h similarity index 100% rename from jni/freetype/src/type1/t1errors.h rename to other_lib/freetype/src/type1/t1errors.h diff --git a/jni/freetype/src/type1/t1gload.c b/other_lib/freetype/src/type1/t1gload.c similarity index 100% rename from jni/freetype/src/type1/t1gload.c rename to other_lib/freetype/src/type1/t1gload.c diff --git a/jni/freetype/src/type1/t1gload.h b/other_lib/freetype/src/type1/t1gload.h similarity index 100% rename from jni/freetype/src/type1/t1gload.h rename to other_lib/freetype/src/type1/t1gload.h diff --git a/jni/freetype/src/type1/t1load.c b/other_lib/freetype/src/type1/t1load.c similarity index 100% rename from jni/freetype/src/type1/t1load.c rename to other_lib/freetype/src/type1/t1load.c diff --git a/jni/freetype/src/type1/t1load.h b/other_lib/freetype/src/type1/t1load.h similarity index 100% rename from jni/freetype/src/type1/t1load.h rename to other_lib/freetype/src/type1/t1load.h diff --git a/jni/freetype/src/type1/t1objs.c b/other_lib/freetype/src/type1/t1objs.c similarity index 100% rename from jni/freetype/src/type1/t1objs.c rename to other_lib/freetype/src/type1/t1objs.c diff --git a/jni/freetype/src/type1/t1objs.h b/other_lib/freetype/src/type1/t1objs.h similarity index 100% rename from jni/freetype/src/type1/t1objs.h rename to other_lib/freetype/src/type1/t1objs.h diff --git a/jni/freetype/src/type1/t1parse.c b/other_lib/freetype/src/type1/t1parse.c similarity index 100% rename from jni/freetype/src/type1/t1parse.c rename to other_lib/freetype/src/type1/t1parse.c diff --git a/jni/freetype/src/type1/t1parse.h b/other_lib/freetype/src/type1/t1parse.h similarity index 100% rename from jni/freetype/src/type1/t1parse.h rename to other_lib/freetype/src/type1/t1parse.h diff --git a/jni/freetype/src/type1/t1tokens.h b/other_lib/freetype/src/type1/t1tokens.h similarity index 100% rename from jni/freetype/src/type1/t1tokens.h rename to other_lib/freetype/src/type1/t1tokens.h diff --git a/jni/freetype/src/type42/Jamfile b/other_lib/freetype/src/type42/Jamfile similarity index 100% rename from jni/freetype/src/type42/Jamfile rename to other_lib/freetype/src/type42/Jamfile diff --git a/jni/freetype/src/type42/module.mk b/other_lib/freetype/src/type42/module.mk similarity index 100% rename from jni/freetype/src/type42/module.mk rename to other_lib/freetype/src/type42/module.mk diff --git a/jni/freetype/src/type42/rules.mk b/other_lib/freetype/src/type42/rules.mk similarity index 100% rename from jni/freetype/src/type42/rules.mk rename to other_lib/freetype/src/type42/rules.mk diff --git a/jni/freetype/src/type42/t42drivr.c b/other_lib/freetype/src/type42/t42drivr.c similarity index 100% rename from jni/freetype/src/type42/t42drivr.c rename to other_lib/freetype/src/type42/t42drivr.c diff --git a/jni/freetype/src/type42/t42drivr.h b/other_lib/freetype/src/type42/t42drivr.h similarity index 100% rename from jni/freetype/src/type42/t42drivr.h rename to other_lib/freetype/src/type42/t42drivr.h diff --git a/jni/freetype/src/type42/t42error.h b/other_lib/freetype/src/type42/t42error.h similarity index 100% rename from jni/freetype/src/type42/t42error.h rename to other_lib/freetype/src/type42/t42error.h diff --git a/jni/freetype/src/type42/t42objs.c b/other_lib/freetype/src/type42/t42objs.c similarity index 100% rename from jni/freetype/src/type42/t42objs.c rename to other_lib/freetype/src/type42/t42objs.c diff --git a/jni/freetype/src/type42/t42objs.h b/other_lib/freetype/src/type42/t42objs.h similarity index 100% rename from jni/freetype/src/type42/t42objs.h rename to other_lib/freetype/src/type42/t42objs.h diff --git a/jni/freetype/src/type42/t42parse.c b/other_lib/freetype/src/type42/t42parse.c similarity index 100% rename from jni/freetype/src/type42/t42parse.c rename to other_lib/freetype/src/type42/t42parse.c diff --git a/jni/freetype/src/type42/t42parse.h b/other_lib/freetype/src/type42/t42parse.h similarity index 100% rename from jni/freetype/src/type42/t42parse.h rename to other_lib/freetype/src/type42/t42parse.h diff --git a/jni/freetype/src/type42/t42types.h b/other_lib/freetype/src/type42/t42types.h similarity index 100% rename from jni/freetype/src/type42/t42types.h rename to other_lib/freetype/src/type42/t42types.h diff --git a/jni/freetype/src/winfonts/Jamfile b/other_lib/freetype/src/winfonts/Jamfile similarity index 100% rename from jni/freetype/src/winfonts/Jamfile rename to other_lib/freetype/src/winfonts/Jamfile diff --git a/jni/freetype/src/winfonts/fnterrs.h b/other_lib/freetype/src/winfonts/fnterrs.h similarity index 100% rename from jni/freetype/src/winfonts/fnterrs.h rename to other_lib/freetype/src/winfonts/fnterrs.h diff --git a/jni/freetype/src/winfonts/module.mk b/other_lib/freetype/src/winfonts/module.mk similarity index 100% rename from jni/freetype/src/winfonts/module.mk rename to other_lib/freetype/src/winfonts/module.mk diff --git a/jni/freetype/src/winfonts/rules.mk b/other_lib/freetype/src/winfonts/rules.mk similarity index 100% rename from jni/freetype/src/winfonts/rules.mk rename to other_lib/freetype/src/winfonts/rules.mk diff --git a/jni/freetype/src/winfonts/winfnt.c b/other_lib/freetype/src/winfonts/winfnt.c similarity index 100% rename from jni/freetype/src/winfonts/winfnt.c rename to other_lib/freetype/src/winfonts/winfnt.c diff --git a/jni/freetype/src/winfonts/winfnt.h b/other_lib/freetype/src/winfonts/winfnt.h similarity index 100% rename from jni/freetype/src/winfonts/winfnt.h rename to other_lib/freetype/src/winfonts/winfnt.h diff --git a/jni/jpeg/Android.mk b/other_lib/jpeg/Android.mk similarity index 97% rename from jni/jpeg/Android.mk rename to other_lib/jpeg/Android.mk index dbc997d..fae8590 100644 --- a/jni/jpeg/Android.mk +++ b/other_lib/jpeg/Android.mk @@ -33,6 +33,6 @@ LOCAL_C_INCLUDES := $(LOCAL_PATH)/include LOCAL_CFLAGS += -DAVOID_TABLES LOCAL_CFLAGS += -O3 -fstrict-aliasing -fprefetch-loop-arrays -LOCAL_MODULE:= libjpeg +LOCAL_MODULE:= jpeg_xserver include $(BUILD_STATIC_LIBRARY) diff --git a/jni/jpeg/MODULE_LICENSE_BSD_LIKE b/other_lib/jpeg/MODULE_LICENSE_BSD_LIKE similarity index 100% rename from jni/jpeg/MODULE_LICENSE_BSD_LIKE rename to other_lib/jpeg/MODULE_LICENSE_BSD_LIKE diff --git a/jni/jpeg/NOTICE b/other_lib/jpeg/NOTICE similarity index 100% rename from jni/jpeg/NOTICE rename to other_lib/jpeg/NOTICE diff --git a/jni/jpeg/README b/other_lib/jpeg/README similarity index 100% rename from jni/jpeg/README rename to other_lib/jpeg/README diff --git a/jni/jpeg/ansi2knr.1 b/other_lib/jpeg/ansi2knr.1 similarity index 100% rename from jni/jpeg/ansi2knr.1 rename to other_lib/jpeg/ansi2knr.1 diff --git a/jni/jpeg/ansi2knr.c b/other_lib/jpeg/ansi2knr.c similarity index 100% rename from jni/jpeg/ansi2knr.c rename to other_lib/jpeg/ansi2knr.c diff --git a/jni/jpeg/cderror.h b/other_lib/jpeg/cderror.h similarity index 100% rename from jni/jpeg/cderror.h rename to other_lib/jpeg/cderror.h diff --git a/jni/jpeg/cdjpeg.c b/other_lib/jpeg/cdjpeg.c similarity index 100% rename from jni/jpeg/cdjpeg.c rename to other_lib/jpeg/cdjpeg.c diff --git a/jni/jpeg/cdjpeg.h b/other_lib/jpeg/cdjpeg.h similarity index 100% rename from jni/jpeg/cdjpeg.h rename to other_lib/jpeg/cdjpeg.h diff --git a/jni/jpeg/change.log b/other_lib/jpeg/change.log similarity index 100% rename from jni/jpeg/change.log rename to other_lib/jpeg/change.log diff --git a/jni/jpeg/cjpeg.1 b/other_lib/jpeg/cjpeg.1 similarity index 100% rename from jni/jpeg/cjpeg.1 rename to other_lib/jpeg/cjpeg.1 diff --git a/jni/jpeg/cjpeg.c b/other_lib/jpeg/cjpeg.c similarity index 100% rename from jni/jpeg/cjpeg.c rename to other_lib/jpeg/cjpeg.c diff --git a/jni/jpeg/ckconfig.c b/other_lib/jpeg/ckconfig.c similarity index 100% rename from jni/jpeg/ckconfig.c rename to other_lib/jpeg/ckconfig.c diff --git a/jni/jpeg/coderules.doc b/other_lib/jpeg/coderules.doc similarity index 100% rename from jni/jpeg/coderules.doc rename to other_lib/jpeg/coderules.doc diff --git a/jni/jpeg/config.guess b/other_lib/jpeg/config.guess similarity index 100% rename from jni/jpeg/config.guess rename to other_lib/jpeg/config.guess diff --git a/jni/jpeg/config.sub b/other_lib/jpeg/config.sub similarity index 100% rename from jni/jpeg/config.sub rename to other_lib/jpeg/config.sub diff --git a/jni/jpeg/configure b/other_lib/jpeg/configure similarity index 100% rename from jni/jpeg/configure rename to other_lib/jpeg/configure diff --git a/jni/jpeg/djpeg.1 b/other_lib/jpeg/djpeg.1 similarity index 100% rename from jni/jpeg/djpeg.1 rename to other_lib/jpeg/djpeg.1 diff --git a/jni/jpeg/djpeg.c b/other_lib/jpeg/djpeg.c similarity index 100% rename from jni/jpeg/djpeg.c rename to other_lib/jpeg/djpeg.c diff --git a/jni/jpeg/example.c b/other_lib/jpeg/example.c similarity index 100% rename from jni/jpeg/example.c rename to other_lib/jpeg/example.c diff --git a/jni/jpeg/filelist.doc b/other_lib/jpeg/filelist.doc similarity index 100% rename from jni/jpeg/filelist.doc rename to other_lib/jpeg/filelist.doc diff --git a/jni/jpeg/include/jconfig.h b/other_lib/jpeg/include/jconfig.h similarity index 100% rename from jni/jpeg/include/jconfig.h rename to other_lib/jpeg/include/jconfig.h diff --git a/jni/jpeg/include/jerror.h b/other_lib/jpeg/include/jerror.h similarity index 100% rename from jni/jpeg/include/jerror.h rename to other_lib/jpeg/include/jerror.h diff --git a/jni/jpeg/include/jmorecfg.h b/other_lib/jpeg/include/jmorecfg.h similarity index 100% rename from jni/jpeg/include/jmorecfg.h rename to other_lib/jpeg/include/jmorecfg.h diff --git a/jni/jpeg/include/jpegint.h b/other_lib/jpeg/include/jpegint.h similarity index 100% rename from jni/jpeg/include/jpegint.h rename to other_lib/jpeg/include/jpegint.h diff --git a/jni/jpeg/include/jpeglib.h b/other_lib/jpeg/include/jpeglib.h similarity index 100% rename from jni/jpeg/include/jpeglib.h rename to other_lib/jpeg/include/jpeglib.h diff --git a/jni/jpeg/install-sh b/other_lib/jpeg/install-sh similarity index 100% rename from jni/jpeg/install-sh rename to other_lib/jpeg/install-sh diff --git a/jni/jpeg/install.doc b/other_lib/jpeg/install.doc similarity index 100% rename from jni/jpeg/install.doc rename to other_lib/jpeg/install.doc diff --git a/jni/jpeg/jcapimin.c b/other_lib/jpeg/jcapimin.c similarity index 100% rename from jni/jpeg/jcapimin.c rename to other_lib/jpeg/jcapimin.c diff --git a/jni/jpeg/jcapistd.c b/other_lib/jpeg/jcapistd.c similarity index 100% rename from jni/jpeg/jcapistd.c rename to other_lib/jpeg/jcapistd.c diff --git a/jni/jpeg/jccoefct.c b/other_lib/jpeg/jccoefct.c similarity index 100% rename from jni/jpeg/jccoefct.c rename to other_lib/jpeg/jccoefct.c diff --git a/jni/jpeg/jccolor.c b/other_lib/jpeg/jccolor.c similarity index 100% rename from jni/jpeg/jccolor.c rename to other_lib/jpeg/jccolor.c diff --git a/jni/jpeg/jcdctmgr.c b/other_lib/jpeg/jcdctmgr.c similarity index 100% rename from jni/jpeg/jcdctmgr.c rename to other_lib/jpeg/jcdctmgr.c diff --git a/jni/jpeg/jchuff.c b/other_lib/jpeg/jchuff.c similarity index 100% rename from jni/jpeg/jchuff.c rename to other_lib/jpeg/jchuff.c diff --git a/jni/jpeg/jchuff.h b/other_lib/jpeg/jchuff.h similarity index 100% rename from jni/jpeg/jchuff.h rename to other_lib/jpeg/jchuff.h diff --git a/jni/jpeg/jcinit.c b/other_lib/jpeg/jcinit.c similarity index 100% rename from jni/jpeg/jcinit.c rename to other_lib/jpeg/jcinit.c diff --git a/jni/jpeg/jcmainct.c b/other_lib/jpeg/jcmainct.c similarity index 100% rename from jni/jpeg/jcmainct.c rename to other_lib/jpeg/jcmainct.c diff --git a/jni/jpeg/jcmarker.c b/other_lib/jpeg/jcmarker.c similarity index 100% rename from jni/jpeg/jcmarker.c rename to other_lib/jpeg/jcmarker.c diff --git a/jni/jpeg/jcmaster.c b/other_lib/jpeg/jcmaster.c similarity index 100% rename from jni/jpeg/jcmaster.c rename to other_lib/jpeg/jcmaster.c diff --git a/jni/jpeg/jcomapi.c b/other_lib/jpeg/jcomapi.c similarity index 100% rename from jni/jpeg/jcomapi.c rename to other_lib/jpeg/jcomapi.c diff --git a/jni/jpeg/jconfig.bcc b/other_lib/jpeg/jconfig.bcc similarity index 100% rename from jni/jpeg/jconfig.bcc rename to other_lib/jpeg/jconfig.bcc diff --git a/jni/jpeg/jconfig.cfg b/other_lib/jpeg/jconfig.cfg similarity index 100% rename from jni/jpeg/jconfig.cfg rename to other_lib/jpeg/jconfig.cfg diff --git a/jni/jpeg/jconfig.dj b/other_lib/jpeg/jconfig.dj similarity index 100% rename from jni/jpeg/jconfig.dj rename to other_lib/jpeg/jconfig.dj diff --git a/jni/jpeg/jconfig.doc b/other_lib/jpeg/jconfig.doc similarity index 100% rename from jni/jpeg/jconfig.doc rename to other_lib/jpeg/jconfig.doc diff --git a/jni/jpeg/jconfig.mac b/other_lib/jpeg/jconfig.mac similarity index 100% rename from jni/jpeg/jconfig.mac rename to other_lib/jpeg/jconfig.mac diff --git a/jni/jpeg/jconfig.manx b/other_lib/jpeg/jconfig.manx similarity index 100% rename from jni/jpeg/jconfig.manx rename to other_lib/jpeg/jconfig.manx diff --git a/jni/jpeg/jconfig.mc6 b/other_lib/jpeg/jconfig.mc6 similarity index 100% rename from jni/jpeg/jconfig.mc6 rename to other_lib/jpeg/jconfig.mc6 diff --git a/jni/jpeg/jconfig.sas b/other_lib/jpeg/jconfig.sas similarity index 100% rename from jni/jpeg/jconfig.sas rename to other_lib/jpeg/jconfig.sas diff --git a/jni/jpeg/jconfig.st b/other_lib/jpeg/jconfig.st similarity index 100% rename from jni/jpeg/jconfig.st rename to other_lib/jpeg/jconfig.st diff --git a/jni/jpeg/jconfig.vc b/other_lib/jpeg/jconfig.vc similarity index 100% rename from jni/jpeg/jconfig.vc rename to other_lib/jpeg/jconfig.vc diff --git a/jni/jpeg/jconfig.vms b/other_lib/jpeg/jconfig.vms similarity index 100% rename from jni/jpeg/jconfig.vms rename to other_lib/jpeg/jconfig.vms diff --git a/jni/jpeg/jconfig.wat b/other_lib/jpeg/jconfig.wat similarity index 100% rename from jni/jpeg/jconfig.wat rename to other_lib/jpeg/jconfig.wat diff --git a/jni/jpeg/jcparam.c b/other_lib/jpeg/jcparam.c similarity index 100% rename from jni/jpeg/jcparam.c rename to other_lib/jpeg/jcparam.c diff --git a/jni/jpeg/jcphuff.c b/other_lib/jpeg/jcphuff.c similarity index 100% rename from jni/jpeg/jcphuff.c rename to other_lib/jpeg/jcphuff.c diff --git a/jni/jpeg/jcprepct.c b/other_lib/jpeg/jcprepct.c similarity index 100% rename from jni/jpeg/jcprepct.c rename to other_lib/jpeg/jcprepct.c diff --git a/jni/jpeg/jcsample.c b/other_lib/jpeg/jcsample.c similarity index 100% rename from jni/jpeg/jcsample.c rename to other_lib/jpeg/jcsample.c diff --git a/jni/jpeg/jctrans.c b/other_lib/jpeg/jctrans.c similarity index 100% rename from jni/jpeg/jctrans.c rename to other_lib/jpeg/jctrans.c diff --git a/jni/jpeg/jdapimin.c b/other_lib/jpeg/jdapimin.c similarity index 100% rename from jni/jpeg/jdapimin.c rename to other_lib/jpeg/jdapimin.c diff --git a/jni/jpeg/jdapistd.c b/other_lib/jpeg/jdapistd.c similarity index 100% rename from jni/jpeg/jdapistd.c rename to other_lib/jpeg/jdapistd.c diff --git a/jni/jpeg/jdatadst.c b/other_lib/jpeg/jdatadst.c similarity index 100% rename from jni/jpeg/jdatadst.c rename to other_lib/jpeg/jdatadst.c diff --git a/jni/jpeg/jdatasrc.c b/other_lib/jpeg/jdatasrc.c similarity index 100% rename from jni/jpeg/jdatasrc.c rename to other_lib/jpeg/jdatasrc.c diff --git a/jni/jpeg/jdcoefct.c b/other_lib/jpeg/jdcoefct.c similarity index 100% rename from jni/jpeg/jdcoefct.c rename to other_lib/jpeg/jdcoefct.c diff --git a/jni/jpeg/jdcolor.c b/other_lib/jpeg/jdcolor.c similarity index 100% rename from jni/jpeg/jdcolor.c rename to other_lib/jpeg/jdcolor.c diff --git a/jni/jpeg/jdct.h b/other_lib/jpeg/jdct.h similarity index 100% rename from jni/jpeg/jdct.h rename to other_lib/jpeg/jdct.h diff --git a/jni/jpeg/jddctmgr.c b/other_lib/jpeg/jddctmgr.c similarity index 100% rename from jni/jpeg/jddctmgr.c rename to other_lib/jpeg/jddctmgr.c diff --git a/jni/jpeg/jdhuff.c b/other_lib/jpeg/jdhuff.c similarity index 100% rename from jni/jpeg/jdhuff.c rename to other_lib/jpeg/jdhuff.c diff --git a/jni/jpeg/jdhuff.h b/other_lib/jpeg/jdhuff.h similarity index 100% rename from jni/jpeg/jdhuff.h rename to other_lib/jpeg/jdhuff.h diff --git a/jni/jpeg/jdinput.c b/other_lib/jpeg/jdinput.c similarity index 100% rename from jni/jpeg/jdinput.c rename to other_lib/jpeg/jdinput.c diff --git a/jni/jpeg/jdmainct.c b/other_lib/jpeg/jdmainct.c similarity index 100% rename from jni/jpeg/jdmainct.c rename to other_lib/jpeg/jdmainct.c diff --git a/jni/jpeg/jdmarker.c b/other_lib/jpeg/jdmarker.c similarity index 100% rename from jni/jpeg/jdmarker.c rename to other_lib/jpeg/jdmarker.c diff --git a/jni/jpeg/jdmaster.c b/other_lib/jpeg/jdmaster.c similarity index 100% rename from jni/jpeg/jdmaster.c rename to other_lib/jpeg/jdmaster.c diff --git a/jni/jpeg/jdmerge.c b/other_lib/jpeg/jdmerge.c similarity index 100% rename from jni/jpeg/jdmerge.c rename to other_lib/jpeg/jdmerge.c diff --git a/jni/jpeg/jdphuff.c b/other_lib/jpeg/jdphuff.c similarity index 100% rename from jni/jpeg/jdphuff.c rename to other_lib/jpeg/jdphuff.c diff --git a/jni/jpeg/jdpostct.c b/other_lib/jpeg/jdpostct.c similarity index 100% rename from jni/jpeg/jdpostct.c rename to other_lib/jpeg/jdpostct.c diff --git a/jni/jpeg/jdsample.c b/other_lib/jpeg/jdsample.c similarity index 100% rename from jni/jpeg/jdsample.c rename to other_lib/jpeg/jdsample.c diff --git a/jni/jpeg/jdtrans.c b/other_lib/jpeg/jdtrans.c similarity index 100% rename from jni/jpeg/jdtrans.c rename to other_lib/jpeg/jdtrans.c diff --git a/jni/jpeg/jerror.c b/other_lib/jpeg/jerror.c similarity index 100% rename from jni/jpeg/jerror.c rename to other_lib/jpeg/jerror.c diff --git a/jni/jpeg/jfdctflt.c b/other_lib/jpeg/jfdctflt.c similarity index 100% rename from jni/jpeg/jfdctflt.c rename to other_lib/jpeg/jfdctflt.c diff --git a/jni/jpeg/jfdctfst.c b/other_lib/jpeg/jfdctfst.c similarity index 100% rename from jni/jpeg/jfdctfst.c rename to other_lib/jpeg/jfdctfst.c diff --git a/jni/jpeg/jfdctint.c b/other_lib/jpeg/jfdctint.c similarity index 100% rename from jni/jpeg/jfdctint.c rename to other_lib/jpeg/jfdctint.c diff --git a/jni/jpeg/jidctflt.c b/other_lib/jpeg/jidctflt.c similarity index 100% rename from jni/jpeg/jidctflt.c rename to other_lib/jpeg/jidctflt.c diff --git a/jni/jpeg/jidctfst.S b/other_lib/jpeg/jidctfst.S similarity index 100% rename from jni/jpeg/jidctfst.S rename to other_lib/jpeg/jidctfst.S diff --git a/jni/jpeg/jidctfst.c b/other_lib/jpeg/jidctfst.c similarity index 100% rename from jni/jpeg/jidctfst.c rename to other_lib/jpeg/jidctfst.c diff --git a/jni/jpeg/jidctint.c b/other_lib/jpeg/jidctint.c similarity index 100% rename from jni/jpeg/jidctint.c rename to other_lib/jpeg/jidctint.c diff --git a/jni/jpeg/jidctred.c b/other_lib/jpeg/jidctred.c similarity index 100% rename from jni/jpeg/jidctred.c rename to other_lib/jpeg/jidctred.c diff --git a/jni/jpeg/jinclude.h b/other_lib/jpeg/jinclude.h similarity index 100% rename from jni/jpeg/jinclude.h rename to other_lib/jpeg/jinclude.h diff --git a/jni/jpeg/jmem-android.c b/other_lib/jpeg/jmem-android.c similarity index 100% rename from jni/jpeg/jmem-android.c rename to other_lib/jpeg/jmem-android.c diff --git a/jni/jpeg/jmemansi.c b/other_lib/jpeg/jmemansi.c similarity index 100% rename from jni/jpeg/jmemansi.c rename to other_lib/jpeg/jmemansi.c diff --git a/jni/jpeg/jmemdos.c b/other_lib/jpeg/jmemdos.c similarity index 100% rename from jni/jpeg/jmemdos.c rename to other_lib/jpeg/jmemdos.c diff --git a/jni/jpeg/jmemdosa.asm b/other_lib/jpeg/jmemdosa.asm similarity index 100% rename from jni/jpeg/jmemdosa.asm rename to other_lib/jpeg/jmemdosa.asm diff --git a/jni/jpeg/jmemmac.c b/other_lib/jpeg/jmemmac.c similarity index 100% rename from jni/jpeg/jmemmac.c rename to other_lib/jpeg/jmemmac.c diff --git a/jni/jpeg/jmemmgr.c b/other_lib/jpeg/jmemmgr.c similarity index 100% rename from jni/jpeg/jmemmgr.c rename to other_lib/jpeg/jmemmgr.c diff --git a/jni/jpeg/jmemname.c b/other_lib/jpeg/jmemname.c similarity index 100% rename from jni/jpeg/jmemname.c rename to other_lib/jpeg/jmemname.c diff --git a/jni/jpeg/jmemnobs.c b/other_lib/jpeg/jmemnobs.c similarity index 100% rename from jni/jpeg/jmemnobs.c rename to other_lib/jpeg/jmemnobs.c diff --git a/jni/jpeg/jmemsys.h b/other_lib/jpeg/jmemsys.h similarity index 100% rename from jni/jpeg/jmemsys.h rename to other_lib/jpeg/jmemsys.h diff --git a/jni/jpeg/jpegtran.1 b/other_lib/jpeg/jpegtran.1 similarity index 100% rename from jni/jpeg/jpegtran.1 rename to other_lib/jpeg/jpegtran.1 diff --git a/jni/jpeg/jpegtran.c b/other_lib/jpeg/jpegtran.c similarity index 100% rename from jni/jpeg/jpegtran.c rename to other_lib/jpeg/jpegtran.c diff --git a/jni/jpeg/jquant1.c b/other_lib/jpeg/jquant1.c similarity index 100% rename from jni/jpeg/jquant1.c rename to other_lib/jpeg/jquant1.c diff --git a/jni/jpeg/jquant2.c b/other_lib/jpeg/jquant2.c similarity index 100% rename from jni/jpeg/jquant2.c rename to other_lib/jpeg/jquant2.c diff --git a/jni/jpeg/jutils.c b/other_lib/jpeg/jutils.c similarity index 100% rename from jni/jpeg/jutils.c rename to other_lib/jpeg/jutils.c diff --git a/jni/jpeg/jversion.h b/other_lib/jpeg/jversion.h similarity index 100% rename from jni/jpeg/jversion.h rename to other_lib/jpeg/jversion.h diff --git a/jni/jpeg/libjpeg.doc b/other_lib/jpeg/libjpeg.doc similarity index 100% rename from jni/jpeg/libjpeg.doc rename to other_lib/jpeg/libjpeg.doc diff --git a/jni/jpeg/ltconfig b/other_lib/jpeg/ltconfig similarity index 100% rename from jni/jpeg/ltconfig rename to other_lib/jpeg/ltconfig diff --git a/jni/jpeg/ltmain.sh b/other_lib/jpeg/ltmain.sh similarity index 100% rename from jni/jpeg/ltmain.sh rename to other_lib/jpeg/ltmain.sh diff --git a/jni/jpeg/makcjpeg.st b/other_lib/jpeg/makcjpeg.st similarity index 100% rename from jni/jpeg/makcjpeg.st rename to other_lib/jpeg/makcjpeg.st diff --git a/jni/jpeg/makdjpeg.st b/other_lib/jpeg/makdjpeg.st similarity index 100% rename from jni/jpeg/makdjpeg.st rename to other_lib/jpeg/makdjpeg.st diff --git a/jni/jpeg/makeapps.ds b/other_lib/jpeg/makeapps.ds similarity index 100% rename from jni/jpeg/makeapps.ds rename to other_lib/jpeg/makeapps.ds diff --git a/jni/jpeg/makefile.ansi b/other_lib/jpeg/makefile.ansi similarity index 100% rename from jni/jpeg/makefile.ansi rename to other_lib/jpeg/makefile.ansi diff --git a/jni/jpeg/makefile.bcc b/other_lib/jpeg/makefile.bcc similarity index 100% rename from jni/jpeg/makefile.bcc rename to other_lib/jpeg/makefile.bcc diff --git a/jni/jpeg/makefile.cfg b/other_lib/jpeg/makefile.cfg similarity index 100% rename from jni/jpeg/makefile.cfg rename to other_lib/jpeg/makefile.cfg diff --git a/jni/jpeg/makefile.dj b/other_lib/jpeg/makefile.dj similarity index 100% rename from jni/jpeg/makefile.dj rename to other_lib/jpeg/makefile.dj diff --git a/jni/jpeg/makefile.manx b/other_lib/jpeg/makefile.manx similarity index 100% rename from jni/jpeg/makefile.manx rename to other_lib/jpeg/makefile.manx diff --git a/jni/jpeg/makefile.mc6 b/other_lib/jpeg/makefile.mc6 similarity index 100% rename from jni/jpeg/makefile.mc6 rename to other_lib/jpeg/makefile.mc6 diff --git a/jni/jpeg/makefile.mms b/other_lib/jpeg/makefile.mms similarity index 100% rename from jni/jpeg/makefile.mms rename to other_lib/jpeg/makefile.mms diff --git a/jni/jpeg/makefile.sas b/other_lib/jpeg/makefile.sas similarity index 100% rename from jni/jpeg/makefile.sas rename to other_lib/jpeg/makefile.sas diff --git a/jni/jpeg/makefile.unix b/other_lib/jpeg/makefile.unix similarity index 100% rename from jni/jpeg/makefile.unix rename to other_lib/jpeg/makefile.unix diff --git a/jni/jpeg/makefile.vc b/other_lib/jpeg/makefile.vc similarity index 100% rename from jni/jpeg/makefile.vc rename to other_lib/jpeg/makefile.vc diff --git a/jni/jpeg/makefile.vms b/other_lib/jpeg/makefile.vms similarity index 100% rename from jni/jpeg/makefile.vms rename to other_lib/jpeg/makefile.vms diff --git a/jni/jpeg/makefile.wat b/other_lib/jpeg/makefile.wat similarity index 100% rename from jni/jpeg/makefile.wat rename to other_lib/jpeg/makefile.wat diff --git a/jni/jpeg/makelib.ds b/other_lib/jpeg/makelib.ds similarity index 100% rename from jni/jpeg/makelib.ds rename to other_lib/jpeg/makelib.ds diff --git a/jni/jpeg/makeproj.mac b/other_lib/jpeg/makeproj.mac similarity index 100% rename from jni/jpeg/makeproj.mac rename to other_lib/jpeg/makeproj.mac diff --git a/jni/jpeg/makljpeg.st b/other_lib/jpeg/makljpeg.st similarity index 100% rename from jni/jpeg/makljpeg.st rename to other_lib/jpeg/makljpeg.st diff --git a/jni/jpeg/maktjpeg.st b/other_lib/jpeg/maktjpeg.st similarity index 100% rename from jni/jpeg/maktjpeg.st rename to other_lib/jpeg/maktjpeg.st diff --git a/jni/jpeg/makvms.opt b/other_lib/jpeg/makvms.opt similarity index 100% rename from jni/jpeg/makvms.opt rename to other_lib/jpeg/makvms.opt diff --git a/jni/jpeg/rdbmp.c b/other_lib/jpeg/rdbmp.c similarity index 100% rename from jni/jpeg/rdbmp.c rename to other_lib/jpeg/rdbmp.c diff --git a/jni/jpeg/rdcolmap.c b/other_lib/jpeg/rdcolmap.c similarity index 100% rename from jni/jpeg/rdcolmap.c rename to other_lib/jpeg/rdcolmap.c diff --git a/jni/jpeg/rdgif.c b/other_lib/jpeg/rdgif.c similarity index 100% rename from jni/jpeg/rdgif.c rename to other_lib/jpeg/rdgif.c diff --git a/jni/jpeg/rdjpgcom.1 b/other_lib/jpeg/rdjpgcom.1 similarity index 100% rename from jni/jpeg/rdjpgcom.1 rename to other_lib/jpeg/rdjpgcom.1 diff --git a/jni/jpeg/rdjpgcom.c b/other_lib/jpeg/rdjpgcom.c similarity index 100% rename from jni/jpeg/rdjpgcom.c rename to other_lib/jpeg/rdjpgcom.c diff --git a/jni/jpeg/rdppm.c b/other_lib/jpeg/rdppm.c similarity index 100% rename from jni/jpeg/rdppm.c rename to other_lib/jpeg/rdppm.c diff --git a/jni/jpeg/rdrle.c b/other_lib/jpeg/rdrle.c similarity index 100% rename from jni/jpeg/rdrle.c rename to other_lib/jpeg/rdrle.c diff --git a/jni/jpeg/rdswitch.c b/other_lib/jpeg/rdswitch.c similarity index 100% rename from jni/jpeg/rdswitch.c rename to other_lib/jpeg/rdswitch.c diff --git a/jni/jpeg/rdtarga.c b/other_lib/jpeg/rdtarga.c similarity index 100% rename from jni/jpeg/rdtarga.c rename to other_lib/jpeg/rdtarga.c diff --git a/jni/jpeg/structure.doc b/other_lib/jpeg/structure.doc similarity index 100% rename from jni/jpeg/structure.doc rename to other_lib/jpeg/structure.doc diff --git a/jni/jpeg/testimg.bmp b/other_lib/jpeg/testimg.bmp similarity index 100% rename from jni/jpeg/testimg.bmp rename to other_lib/jpeg/testimg.bmp diff --git a/jni/jpeg/testimg.jpg b/other_lib/jpeg/testimg.jpg similarity index 100% rename from jni/jpeg/testimg.jpg rename to other_lib/jpeg/testimg.jpg diff --git a/jni/jpeg/testimg.ppm b/other_lib/jpeg/testimg.ppm similarity index 100% rename from jni/jpeg/testimg.ppm rename to other_lib/jpeg/testimg.ppm diff --git a/jni/jpeg/testimgp.jpg b/other_lib/jpeg/testimgp.jpg similarity index 100% rename from jni/jpeg/testimgp.jpg rename to other_lib/jpeg/testimgp.jpg diff --git a/jni/jpeg/testorig.jpg b/other_lib/jpeg/testorig.jpg similarity index 100% rename from jni/jpeg/testorig.jpg rename to other_lib/jpeg/testorig.jpg diff --git a/jni/jpeg/testprog.jpg b/other_lib/jpeg/testprog.jpg similarity index 100% rename from jni/jpeg/testprog.jpg rename to other_lib/jpeg/testprog.jpg diff --git a/jni/jpeg/transupp.c b/other_lib/jpeg/transupp.c similarity index 100% rename from jni/jpeg/transupp.c rename to other_lib/jpeg/transupp.c diff --git a/jni/jpeg/transupp.h b/other_lib/jpeg/transupp.h similarity index 100% rename from jni/jpeg/transupp.h rename to other_lib/jpeg/transupp.h diff --git a/jni/jpeg/usage.doc b/other_lib/jpeg/usage.doc similarity index 100% rename from jni/jpeg/usage.doc rename to other_lib/jpeg/usage.doc diff --git a/jni/jpeg/wizard.doc b/other_lib/jpeg/wizard.doc similarity index 100% rename from jni/jpeg/wizard.doc rename to other_lib/jpeg/wizard.doc diff --git a/jni/jpeg/wrbmp.c b/other_lib/jpeg/wrbmp.c similarity index 100% rename from jni/jpeg/wrbmp.c rename to other_lib/jpeg/wrbmp.c diff --git a/jni/jpeg/wrgif.c b/other_lib/jpeg/wrgif.c similarity index 100% rename from jni/jpeg/wrgif.c rename to other_lib/jpeg/wrgif.c diff --git a/jni/jpeg/wrjpgcom.1 b/other_lib/jpeg/wrjpgcom.1 similarity index 100% rename from jni/jpeg/wrjpgcom.1 rename to other_lib/jpeg/wrjpgcom.1 diff --git a/jni/jpeg/wrjpgcom.c b/other_lib/jpeg/wrjpgcom.c similarity index 100% rename from jni/jpeg/wrjpgcom.c rename to other_lib/jpeg/wrjpgcom.c diff --git a/jni/jpeg/wrppm.c b/other_lib/jpeg/wrppm.c similarity index 100% rename from jni/jpeg/wrppm.c rename to other_lib/jpeg/wrppm.c diff --git a/jni/jpeg/wrrle.c b/other_lib/jpeg/wrrle.c similarity index 100% rename from jni/jpeg/wrrle.c rename to other_lib/jpeg/wrrle.c diff --git a/jni/jpeg/wrtarga.c b/other_lib/jpeg/wrtarga.c similarity index 100% rename from jni/jpeg/wrtarga.c rename to other_lib/jpeg/wrtarga.c diff --git a/other_lib/ogg/AUTHORS b/other_lib/ogg/AUTHORS new file mode 100644 index 0000000..80c787c --- /dev/null +++ b/other_lib/ogg/AUTHORS @@ -0,0 +1,4 @@ +Monty + +and the rest of the Xiph.Org Foundation. + diff --git a/other_lib/ogg/Android.mk b/other_lib/ogg/Android.mk new file mode 100644 index 0000000..a0cfe8e --- /dev/null +++ b/other_lib/ogg/Android.mk @@ -0,0 +1,22 @@ +LOCAL_PATH := $(call my-dir) + +include $(CLEAR_VARS) + +LOCAL_MODULE := ogg_xserver + +LOCAL_C_INCLUDES := $(LOCAL_PATH)/include +LOCAL_CFLAGS := -O3 + + +LOCAL_CPP_EXTENSION := .cpp + +LOCAL_SRC_FILES := $(addprefix src/, $(notdir $(wildcard $(LOCAL_PATH)/src/*.c) $(wildcard $(LOCAL_PATH)/src/*.cpp))) + +LOCAL_STATIC_LIBRARIES := + +LOCAL_SHARED_LIBRARIES := + +LOCAL_LDLIBS := + +include $(BUILD_STATIC_LIBRARY) + diff --git a/other_lib/ogg/CHANGES b/other_lib/ogg/CHANGES new file mode 100644 index 0000000..40c60b6 --- /dev/null +++ b/other_lib/ogg/CHANGES @@ -0,0 +1,49 @@ +Version 1.2.0 (2010 March 25) + +* Alter default flushing behavior to span less often and use larger page + sizes when packet sizes are large. +* Build fixes for additional compilers +* Documentation updates + +Version 1.1.4 (2009 June 24) + +* New async error reporting mechanism. Calls made after a fatal error are + now safely handled in the event an error code is ignored +* Added allocation checks useful to some embedded applications +* fix possible read past end of buffer when reading 0 bits +* Updates to API documentation +* Build fixes + +Version 1.1.3 (2005 November 27) + + * Correct a bug in the granulepos field of pages where no packet ends + * New VS2003 and XCode builds, minor fixes to other builds + * documentation fixes and cleanup + +Version 1.1.2 (2004 September 23) + + * fix a bug with multipage packet assembly after seek + +Version 1.1.1 (2004 September 12) + + * various bugfixes + * important bugfix for 64-bit platforms + * various portability fixes + * autotools cleanup from Thomas Vander Stichele + * Symbian OS build support from Colin Ward at CSIRO + * new multiplexed Ogg stream documentation + +Version 1.1 (2003 November 17) + + * big-endian bitpacker routines for Theora + * various portability fixes + * improved API documenation + * RFC 3533 documentation of the format by Silvia Pfeiffer at CSIRO + * RFC 3534 documentation of the application/ogg mime-type by Linus Walleij + +Version 1.0 (2002 July 19) + + * First stable release + * little-endian bitpacker routines for Vorbis + * basic Ogg bitstream sync and coding support + diff --git a/other_lib/ogg/COPYING b/other_lib/ogg/COPYING new file mode 100644 index 0000000..6111c6c --- /dev/null +++ b/other_lib/ogg/COPYING @@ -0,0 +1,28 @@ +Copyright (c) 2002, Xiph.org Foundation + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +- Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +- Neither the name of the Xiph.org Foundation nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/other_lib/ogg/README b/other_lib/ogg/README new file mode 100644 index 0000000..e31d40a --- /dev/null +++ b/other_lib/ogg/README @@ -0,0 +1,133 @@ +******************************************************************** +* * +* THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * +* USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * +* GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * +* IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * +* * +* THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2002 * +* by the Xiph.Org Foundation http://www.xiph.org/ * +* * +******************************************************************** + +WHAT'S HERE: + +This source distribution includes libogg and nothing else. Other modules +(eg, the modules vorbis, vorbis-tools and vorbis-plugins for the Vorbis +codec) contain the codec libraries for use with Ogg bitstreams. + +Directory: + +./src The source for libogg, a BSD-license inplementation of + the public domain Ogg bitstream format + +./include Library API headers and codebooks + +./doc Ogg specification documents + +./win32 Win32 projects and build automation + +./macosx MacOS X project and build files + +./macos Classic MacOS 9 projects and build automation + +./debian Rules/spec files for building Debian .deb packages + (may not be present, depending on your distribution) + +WHAT IS OGG?: + +Ogg project codecs use the Ogg bitstream format to arrange the raw, +compressed bitstream into a more robust, useful form. For example, +the Ogg bitstream makes seeking, time stamping and error recovery +possible, as well as mixing several sepearate, concurrent media +streams into a single physical bitstream. + +CONTACT: + +The Ogg homepage is located at 'http://www.xiph.org/ogg/'. +Up to date technical documents, contact information, source code and +pre-built utilities may be found there. + +BUILDING FROM REPOSITORY SOURCE: + +A standard svn build should consist of nothing more than: + +./autogen.sh +make + +and as root if desired : + +make install + +This will install the Ogg libraries (static and shared) into +/usr/local/lib, includes into /usr/local/include and API manpages +(once we write some) into /usr/local/man. + +BUILDING FROM TARBALL DISTRIBUTIONS: + +./configure +make + +and optionally (as root): +make install + +BUILDING RPMS: + +RPMs may be built by: + +make dist +rpm -ta libogg-.tar.gz + +BUILDING ON WIN32: + +Use the project file in the win32 directory. It should compile out of the box. +You can also run one of the batch files from the commandline. + +E.g.: build_ogg_dynamic + +CROSS COMPILING FROM LINUX TO WIN32: + +It is also possible to cross compile from Linux to windows using the MinGW +cross tools and even to run the test suite under Wine, the Linux/*nix +windows emulator. + +On Debian and Ubuntu systems, these cross compiler tools can be installed +by doing: + + sudo apt-get mingw32 mingw32-binutils mingw32-runtime wine + +Once these tools are installed its possible to compile and test by +executing the following commands: + + ./configure --host=i586-mingw32msvc --target=i586-mingw32msvc \ + --build=i586-linux + make + make check + +The above has been tested with the following versions of the tools on +Ubuntu's Hardy Heron release: + + mingw32 4.2.1.dfsg-1ubuntu1 + mingw32-binutils 2.17.50-20070129.1-1 + mingw32-runtime 3.13-1 + wine 0.9.59-0ubuntu4 + +BUILDING ON MACOS 9: + +Ogg on MacOS 9 is built using CodeWarrior 5.3. To build it, first +open ogg/mac/libogg.mcp, switch to the "Targets" pane, select +everything, and make the project. In ogg/mac/Output you will now have +both debug and final versions of Ogg shared libraries to link your +projects against. + +To build a project using Ogg, add access paths to your CodeWarrior +project for the ogg/include and ogg/mac/Output folders. Be sure that +"interpret DOS and Unix paths" is turned on in your project; it can be +found in the "access paths" pane in your project settings. Now simply +add the shared libraries you need to your project (OggLib at least) +and #include "ogg/ogg.h" wherever you need to acces Ogg functionality. + +(Build instructions for Ogg codecs such as vorbis are similar and may +be found in those source modules' README files) + +$Id: README 14726 2008-04-14 08:40:46Z erikd $ diff --git a/other_lib/ogg/include/ogg/config_types.h b/other_lib/ogg/include/ogg/config_types.h new file mode 100644 index 0000000..a320fc8 --- /dev/null +++ b/other_lib/ogg/include/ogg/config_types.h @@ -0,0 +1,11 @@ +#ifndef __CONFIG_TYPES_H__ +#define __CONFIG_TYPES_H__ + +/* these are filled in by configure */ +typedef short ogg_int16_t; +typedef unsigned short ogg_uint16_t; +typedef int ogg_int32_t; +typedef unsigned int ogg_uint32_t; +typedef long long ogg_int64_t; + +#endif diff --git a/other_lib/ogg/include/ogg/ogg.h b/other_lib/ogg/include/ogg/ogg.h new file mode 100644 index 0000000..ae0cfd5 --- /dev/null +++ b/other_lib/ogg/include/ogg/ogg.h @@ -0,0 +1,208 @@ +/******************************************************************** + * * + * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * + * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * + * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * + * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * + * * + * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 * + * by the Xiph.Org Foundation http://www.xiph.org/ * + * * + ******************************************************************** + + function: toplevel libogg include + last mod: $Id: ogg.h 16051 2009-05-27 05:00:06Z xiphmont $ + + ********************************************************************/ +#ifndef _OGG_H +#define _OGG_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include + +typedef struct { + void *iov_base; + size_t iov_len; +} ogg_iovec_t; + +typedef struct { + long endbyte; + int endbit; + + unsigned char *buffer; + unsigned char *ptr; + long storage; +} oggpack_buffer; + +/* ogg_page is used to encapsulate the data in one Ogg bitstream page *****/ + +typedef struct { + unsigned char *header; + long header_len; + unsigned char *body; + long body_len; +} ogg_page; + +/* ogg_stream_state contains the current encode/decode state of a logical + Ogg bitstream **********************************************************/ + +typedef struct { + unsigned char *body_data; /* bytes from packet bodies */ + long body_storage; /* storage elements allocated */ + long body_fill; /* elements stored; fill mark */ + long body_returned; /* elements of fill returned */ + + + int *lacing_vals; /* The values that will go to the segment table */ + ogg_int64_t *granule_vals; /* granulepos values for headers. Not compact + this way, but it is simple coupled to the + lacing fifo */ + long lacing_storage; + long lacing_fill; + long lacing_packet; + long lacing_returned; + + unsigned char header[282]; /* working space for header encode */ + int header_fill; + + int e_o_s; /* set when we have buffered the last packet in the + logical bitstream */ + int b_o_s; /* set after we've written the initial page + of a logical bitstream */ + long serialno; + long pageno; + ogg_int64_t packetno; /* sequence number for decode; the framing + knows where there's a hole in the data, + but we need coupling so that the codec + (which is in a seperate abstraction + layer) also knows about the gap */ + ogg_int64_t granulepos; + +} ogg_stream_state; + +/* ogg_packet is used to encapsulate the data and metadata belonging + to a single raw Ogg/Vorbis packet *************************************/ + +typedef struct { + unsigned char *packet; + long bytes; + long b_o_s; + long e_o_s; + + ogg_int64_t granulepos; + + ogg_int64_t packetno; /* sequence number for decode; the framing + knows where there's a hole in the data, + but we need coupling so that the codec + (which is in a seperate abstraction + layer) also knows about the gap */ +} ogg_packet; + +typedef struct { + unsigned char *data; + int storage; + int fill; + int returned; + + int unsynced; + int headerbytes; + int bodybytes; +} ogg_sync_state; + +/* Ogg BITSTREAM PRIMITIVES: bitstream ************************/ + +extern void oggpack_writeinit(oggpack_buffer *b); +extern int oggpack_writecheck(oggpack_buffer *b); +extern void oggpack_writetrunc(oggpack_buffer *b,long bits); +extern void oggpack_writealign(oggpack_buffer *b); +extern void oggpack_writecopy(oggpack_buffer *b,void *source,long bits); +extern void oggpack_reset(oggpack_buffer *b); +extern void oggpack_writeclear(oggpack_buffer *b); +extern void oggpack_readinit(oggpack_buffer *b,unsigned char *buf,int bytes); +extern void oggpack_write(oggpack_buffer *b,unsigned long value,int bits); +extern long oggpack_look(oggpack_buffer *b,int bits); +extern long oggpack_look1(oggpack_buffer *b); +extern void oggpack_adv(oggpack_buffer *b,int bits); +extern void oggpack_adv1(oggpack_buffer *b); +extern long oggpack_read(oggpack_buffer *b,int bits); +extern long oggpack_read1(oggpack_buffer *b); +extern long oggpack_bytes(oggpack_buffer *b); +extern long oggpack_bits(oggpack_buffer *b); +extern unsigned char *oggpack_get_buffer(oggpack_buffer *b); + +extern void oggpackB_writeinit(oggpack_buffer *b); +extern int oggpackB_writecheck(oggpack_buffer *b); +extern void oggpackB_writetrunc(oggpack_buffer *b,long bits); +extern void oggpackB_writealign(oggpack_buffer *b); +extern void oggpackB_writecopy(oggpack_buffer *b,void *source,long bits); +extern void oggpackB_reset(oggpack_buffer *b); +extern void oggpackB_writeclear(oggpack_buffer *b); +extern void oggpackB_readinit(oggpack_buffer *b,unsigned char *buf,int bytes); +extern void oggpackB_write(oggpack_buffer *b,unsigned long value,int bits); +extern long oggpackB_look(oggpack_buffer *b,int bits); +extern long oggpackB_look1(oggpack_buffer *b); +extern void oggpackB_adv(oggpack_buffer *b,int bits); +extern void oggpackB_adv1(oggpack_buffer *b); +extern long oggpackB_read(oggpack_buffer *b,int bits); +extern long oggpackB_read1(oggpack_buffer *b); +extern long oggpackB_bytes(oggpack_buffer *b); +extern long oggpackB_bits(oggpack_buffer *b); +extern unsigned char *oggpackB_get_buffer(oggpack_buffer *b); + +/* Ogg BITSTREAM PRIMITIVES: encoding **************************/ + +extern int ogg_stream_packetin(ogg_stream_state *os, ogg_packet *op); +extern int ogg_stream_iovecin(ogg_stream_state *os, ogg_iovec_t *iov, + int count, long e_o_s, ogg_int64_t granulepos); +extern int ogg_stream_pageout(ogg_stream_state *os, ogg_page *og); +extern int ogg_stream_flush(ogg_stream_state *os, ogg_page *og); + +/* Ogg BITSTREAM PRIMITIVES: decoding **************************/ + +extern int ogg_sync_init(ogg_sync_state *oy); +extern int ogg_sync_clear(ogg_sync_state *oy); +extern int ogg_sync_reset(ogg_sync_state *oy); +extern int ogg_sync_destroy(ogg_sync_state *oy); +extern int ogg_sync_check(ogg_sync_state *oy); + +extern char *ogg_sync_buffer(ogg_sync_state *oy, long size); +extern int ogg_sync_wrote(ogg_sync_state *oy, long bytes); +extern long ogg_sync_pageseek(ogg_sync_state *oy,ogg_page *og); +extern int ogg_sync_pageout(ogg_sync_state *oy, ogg_page *og); +extern int ogg_stream_pagein(ogg_stream_state *os, ogg_page *og); +extern int ogg_stream_packetout(ogg_stream_state *os,ogg_packet *op); +extern int ogg_stream_packetpeek(ogg_stream_state *os,ogg_packet *op); + +/* Ogg BITSTREAM PRIMITIVES: general ***************************/ + +extern int ogg_stream_init(ogg_stream_state *os,int serialno); +extern int ogg_stream_clear(ogg_stream_state *os); +extern int ogg_stream_reset(ogg_stream_state *os); +extern int ogg_stream_reset_serialno(ogg_stream_state *os,int serialno); +extern int ogg_stream_destroy(ogg_stream_state *os); +extern int ogg_stream_check(ogg_stream_state *os); +extern int ogg_stream_eos(ogg_stream_state *os); + +extern void ogg_page_checksum_set(ogg_page *og); + +extern int ogg_page_version(const ogg_page *og); +extern int ogg_page_continued(const ogg_page *og); +extern int ogg_page_bos(const ogg_page *og); +extern int ogg_page_eos(const ogg_page *og); +extern ogg_int64_t ogg_page_granulepos(const ogg_page *og); +extern int ogg_page_serialno(const ogg_page *og); +extern long ogg_page_pageno(const ogg_page *og); +extern int ogg_page_packets(const ogg_page *og); + +extern void ogg_packet_clear(ogg_packet *op); + + +#ifdef __cplusplus +} +#endif + +#endif /* _OGG_H */ diff --git a/other_lib/ogg/include/ogg/os_types.h b/other_lib/ogg/include/ogg/os_types.h new file mode 100644 index 0000000..f6f8b38 --- /dev/null +++ b/other_lib/ogg/include/ogg/os_types.h @@ -0,0 +1,148 @@ +/******************************************************************** + * * + * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * + * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * + * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * + * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * + * * + * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2002 * + * by the Xiph.Org Foundation http://www.xiph.org/ * + * * + ******************************************************************** + + function: #ifdef jail to whip a few platforms into the UNIX ideal. + last mod: $Id: os_types.h 16649 2009-10-25 00:49:58Z ds $ + + ********************************************************************/ +#ifndef _OS_TYPES_H +#define _OS_TYPES_H + +/* make it easy on the folks that want to compile the libs with a + different malloc than stdlib */ +#define _ogg_malloc malloc +#define _ogg_calloc calloc +#define _ogg_realloc realloc +#define _ogg_free free + +#if defined(_WIN32) + +# if defined(__CYGWIN__) +# include + typedef int16_t ogg_int16_t; + typedef uint16_t ogg_uint16_t; + typedef int32_t ogg_int32_t; + typedef uint32_t ogg_uint32_t; + typedef int64_t ogg_int64_t; + typedef uint64_t ogg_uint64_t; +# elif defined(__MINGW32__) +# include + typedef short ogg_int16_t; + typedef unsigned short ogg_uint16_t; + typedef int ogg_int32_t; + typedef unsigned int ogg_uint32_t; + typedef long long ogg_int64_t; + typedef unsigned long long ogg_uint64_t; +# elif defined(__MWERKS__) + typedef long long ogg_int64_t; + typedef int ogg_int32_t; + typedef unsigned int ogg_uint32_t; + typedef short ogg_int16_t; + typedef unsigned short ogg_uint16_t; +# else + /* MSVC/Borland */ + typedef __int64 ogg_int64_t; + typedef __int32 ogg_int32_t; + typedef unsigned __int32 ogg_uint32_t; + typedef __int16 ogg_int16_t; + typedef unsigned __int16 ogg_uint16_t; +# endif + +#elif defined(__MACOS__) + +# include + typedef SInt16 ogg_int16_t; + typedef UInt16 ogg_uint16_t; + typedef SInt32 ogg_int32_t; + typedef UInt32 ogg_uint32_t; + typedef SInt64 ogg_int64_t; + +#elif (defined(__APPLE__) && defined(__MACH__)) /* MacOS X Framework build */ + +# include + typedef int16_t ogg_int16_t; + typedef u_int16_t ogg_uint16_t; + typedef int32_t ogg_int32_t; + typedef u_int32_t ogg_uint32_t; + typedef int64_t ogg_int64_t; + +#elif defined(__HAIKU__) + + /* Haiku */ +# include + typedef short ogg_int16_t; + typedef unsigned short ogg_uint16_t; + typedef int ogg_int32_t; + typedef unsigned int ogg_uint32_t; + typedef long long ogg_int64_t; + +#elif defined(__BEOS__) + + /* Be */ +# include + typedef int16_t ogg_int16_t; + typedef u_int16_t ogg_uint16_t; + typedef int32_t ogg_int32_t; + typedef u_int32_t ogg_uint32_t; + typedef int64_t ogg_int64_t; + +#elif defined (__EMX__) + + /* OS/2 GCC */ + typedef short ogg_int16_t; + typedef unsigned short ogg_uint16_t; + typedef int ogg_int32_t; + typedef unsigned int ogg_uint32_t; + typedef long long ogg_int64_t; + +#elif defined (DJGPP) + + /* DJGPP */ + typedef short ogg_int16_t; + typedef int ogg_int32_t; + typedef unsigned int ogg_uint32_t; + typedef long long ogg_int64_t; + +#elif defined(R5900) + + /* PS2 EE */ + typedef long ogg_int64_t; + typedef int ogg_int32_t; + typedef unsigned ogg_uint32_t; + typedef short ogg_int16_t; + +#elif defined(__SYMBIAN32__) + + /* Symbian GCC */ + typedef signed short ogg_int16_t; + typedef unsigned short ogg_uint16_t; + typedef signed int ogg_int32_t; + typedef unsigned int ogg_uint32_t; + typedef long long int ogg_int64_t; + +#elif defined(__TMS320C6X__) + + /* TI C64x compiler */ + typedef signed short ogg_int16_t; + typedef unsigned short ogg_uint16_t; + typedef signed int ogg_int32_t; + typedef unsigned int ogg_uint32_t; + typedef long long int ogg_int64_t; + +#else + +# include +# include + +#endif + +#endif /* _OS_TYPES_H */ diff --git a/other_lib/ogg/src/bitwise.c b/other_lib/ogg/src/bitwise.c new file mode 100644 index 0000000..e800901 --- /dev/null +++ b/other_lib/ogg/src/bitwise.c @@ -0,0 +1,822 @@ +/******************************************************************** + * * + * THIS FILE IS PART OF THE Ogg CONTAINER SOURCE CODE. * + * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * + * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * + * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * + * * + * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2010 * + * by the Xiph.Org Foundation http://www.xiph.org/ * + * * + ******************************************************************** + + function: packing variable sized words into an octet stream + last mod: $Id: bitwise.c 16993 2010-03-21 23:15:46Z xiphmont $ + + ********************************************************************/ + +/* We're 'LSb' endian; if we write a word but read individual bits, + then we'll read the lsb first */ + +#include +#include +#include + +#define BUFFER_INCREMENT 256 + +static const unsigned long mask[]= +{0x00000000,0x00000001,0x00000003,0x00000007,0x0000000f, + 0x0000001f,0x0000003f,0x0000007f,0x000000ff,0x000001ff, + 0x000003ff,0x000007ff,0x00000fff,0x00001fff,0x00003fff, + 0x00007fff,0x0000ffff,0x0001ffff,0x0003ffff,0x0007ffff, + 0x000fffff,0x001fffff,0x003fffff,0x007fffff,0x00ffffff, + 0x01ffffff,0x03ffffff,0x07ffffff,0x0fffffff,0x1fffffff, + 0x3fffffff,0x7fffffff,0xffffffff }; + +static const unsigned int mask8B[]= +{0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff}; + +void oggpack_writeinit(oggpack_buffer *b){ + memset(b,0,sizeof(*b)); + b->ptr=b->buffer=_ogg_malloc(BUFFER_INCREMENT); + b->buffer[0]='\0'; + b->storage=BUFFER_INCREMENT; +} + +void oggpackB_writeinit(oggpack_buffer *b){ + oggpack_writeinit(b); +} + +int oggpack_writecheck(oggpack_buffer *b){ + if(!b->ptr || !b->storage)return -1; + return 0; +} + +int oggpackB_writecheck(oggpack_buffer *b){ + return oggpack_writecheck(b); +} + +void oggpack_writetrunc(oggpack_buffer *b,long bits){ + long bytes=bits>>3; + if(b->ptr){ + bits-=bytes*8; + b->ptr=b->buffer+bytes; + b->endbit=bits; + b->endbyte=bytes; + *b->ptr&=mask[bits]; + } +} + +void oggpackB_writetrunc(oggpack_buffer *b,long bits){ + long bytes=bits>>3; + if(b->ptr){ + bits-=bytes*8; + b->ptr=b->buffer+bytes; + b->endbit=bits; + b->endbyte=bytes; + *b->ptr&=mask8B[bits]; + } +} + +/* Takes only up to 32 bits. */ +void oggpack_write(oggpack_buffer *b,unsigned long value,int bits){ + if(b->endbyte+4>=b->storage){ + void *ret; + if(!b->ptr)return; + ret=_ogg_realloc(b->buffer,b->storage+BUFFER_INCREMENT); + if(!ret){ + oggpack_writeclear(b); + return; + } + b->buffer=ret; + b->storage+=BUFFER_INCREMENT; + b->ptr=b->buffer+b->endbyte; + } + + value&=mask[bits]; + bits+=b->endbit; + + b->ptr[0]|=value<endbit; + + if(bits>=8){ + b->ptr[1]=(unsigned char)(value>>(8-b->endbit)); + if(bits>=16){ + b->ptr[2]=(unsigned char)(value>>(16-b->endbit)); + if(bits>=24){ + b->ptr[3]=(unsigned char)(value>>(24-b->endbit)); + if(bits>=32){ + if(b->endbit) + b->ptr[4]=(unsigned char)(value>>(32-b->endbit)); + else + b->ptr[4]=0; + } + } + } + } + + b->endbyte+=bits/8; + b->ptr+=bits/8; + b->endbit=bits&7; +} + +/* Takes only up to 32 bits. */ +void oggpackB_write(oggpack_buffer *b,unsigned long value,int bits){ + if(b->endbyte+4>=b->storage){ + void *ret; + if(!b->ptr)return; + ret=_ogg_realloc(b->buffer,b->storage+BUFFER_INCREMENT); + if(!ret){ + oggpack_writeclear(b); + return; + } + b->buffer=ret; + b->storage+=BUFFER_INCREMENT; + b->ptr=b->buffer+b->endbyte; + } + + value=(value&mask[bits])<<(32-bits); + bits+=b->endbit; + + b->ptr[0]|=value>>(24+b->endbit); + + if(bits>=8){ + b->ptr[1]=(unsigned char)(value>>(16+b->endbit)); + if(bits>=16){ + b->ptr[2]=(unsigned char)(value>>(8+b->endbit)); + if(bits>=24){ + b->ptr[3]=(unsigned char)(value>>(b->endbit)); + if(bits>=32){ + if(b->endbit) + b->ptr[4]=(unsigned char)(value<<(8-b->endbit)); + else + b->ptr[4]=0; + } + } + } + } + + b->endbyte+=bits/8; + b->ptr+=bits/8; + b->endbit=bits&7; +} + +void oggpack_writealign(oggpack_buffer *b){ + int bits=8-b->endbit; + if(bits<8) + oggpack_write(b,0,bits); +} + +void oggpackB_writealign(oggpack_buffer *b){ + int bits=8-b->endbit; + if(bits<8) + oggpackB_write(b,0,bits); +} + +static void oggpack_writecopy_helper(oggpack_buffer *b, + void *source, + long bits, + void (*w)(oggpack_buffer *, + unsigned long, + int), + int msb){ + unsigned char *ptr=(unsigned char *)source; + + long bytes=bits/8; + bits-=bytes*8; + + if(b->endbit){ + int i; + /* unaligned copy. Do it the hard way. */ + for(i=0;iendbyte+bytes+1>=b->storage){ + void *ret; + if(!b->ptr)return; + b->storage=b->endbyte+bytes+BUFFER_INCREMENT; + ret=_ogg_realloc(b->buffer,b->storage); + if(!ret){ + oggpack_writeclear(b); + return; + } + b->buffer=ret; + b->ptr=b->buffer+b->endbyte; + } + + memmove(b->ptr,source,bytes); + b->ptr+=bytes; + b->endbyte+=bytes; + *b->ptr=0; + + } + if(bits){ + if(msb) + w(b,(unsigned long)(ptr[bytes]>>(8-bits)),bits); + else + w(b,(unsigned long)(ptr[bytes]),bits); + } +} + +void oggpack_writecopy(oggpack_buffer *b,void *source,long bits){ + oggpack_writecopy_helper(b,source,bits,oggpack_write,0); +} + +void oggpackB_writecopy(oggpack_buffer *b,void *source,long bits){ + oggpack_writecopy_helper(b,source,bits,oggpackB_write,1); +} + +void oggpack_reset(oggpack_buffer *b){ + if(!b->ptr)return; + b->ptr=b->buffer; + b->buffer[0]=0; + b->endbit=b->endbyte=0; +} + +void oggpackB_reset(oggpack_buffer *b){ + oggpack_reset(b); +} + +void oggpack_writeclear(oggpack_buffer *b){ + if(b->buffer)_ogg_free(b->buffer); + memset(b,0,sizeof(*b)); +} + +void oggpackB_writeclear(oggpack_buffer *b){ + oggpack_writeclear(b); +} + +void oggpack_readinit(oggpack_buffer *b,unsigned char *buf,int bytes){ + memset(b,0,sizeof(*b)); + b->buffer=b->ptr=buf; + b->storage=bytes; +} + +void oggpackB_readinit(oggpack_buffer *b,unsigned char *buf,int bytes){ + oggpack_readinit(b,buf,bytes); +} + +/* Read in bits without advancing the bitptr; bits <= 32 */ +long oggpack_look(oggpack_buffer *b,int bits){ + unsigned long ret; + unsigned long m=mask[bits]; + + bits+=b->endbit; + + if(b->endbyte+4>=b->storage){ + /* not the main path */ + if(b->endbyte*8+bits>b->storage*8)return(-1); + } + + ret=b->ptr[0]>>b->endbit; + if(bits>8){ + ret|=b->ptr[1]<<(8-b->endbit); + if(bits>16){ + ret|=b->ptr[2]<<(16-b->endbit); + if(bits>24){ + ret|=b->ptr[3]<<(24-b->endbit); + if(bits>32 && b->endbit) + ret|=b->ptr[4]<<(32-b->endbit); + } + } + } + return(m&ret); +} + +/* Read in bits without advancing the bitptr; bits <= 32 */ +long oggpackB_look(oggpack_buffer *b,int bits){ + unsigned long ret; + int m=32-bits; + + bits+=b->endbit; + + if(b->endbyte+4>=b->storage){ + /* not the main path */ + if(b->endbyte*8+bits>b->storage*8)return(-1); + } + + ret=b->ptr[0]<<(24+b->endbit); + if(bits>8){ + ret|=b->ptr[1]<<(16+b->endbit); + if(bits>16){ + ret|=b->ptr[2]<<(8+b->endbit); + if(bits>24){ + ret|=b->ptr[3]<<(b->endbit); + if(bits>32 && b->endbit) + ret|=b->ptr[4]>>(8-b->endbit); + } + } + } + return ((ret&0xffffffff)>>(m>>1))>>((m+1)>>1); +} + +long oggpack_look1(oggpack_buffer *b){ + if(b->endbyte>=b->storage)return(-1); + return((b->ptr[0]>>b->endbit)&1); +} + +long oggpackB_look1(oggpack_buffer *b){ + if(b->endbyte>=b->storage)return(-1); + return((b->ptr[0]>>(7-b->endbit))&1); +} + +void oggpack_adv(oggpack_buffer *b,int bits){ + bits+=b->endbit; + b->ptr+=bits/8; + b->endbyte+=bits/8; + b->endbit=bits&7; +} + +void oggpackB_adv(oggpack_buffer *b,int bits){ + oggpack_adv(b,bits); +} + +void oggpack_adv1(oggpack_buffer *b){ + if(++(b->endbit)>7){ + b->endbit=0; + b->ptr++; + b->endbyte++; + } +} + +void oggpackB_adv1(oggpack_buffer *b){ + oggpack_adv1(b); +} + +/* bits <= 32 */ +long oggpack_read(oggpack_buffer *b,int bits){ + long ret; + unsigned long m=mask[bits]; + + bits+=b->endbit; + + if(b->endbyte+4>=b->storage){ + /* not the main path */ + ret=-1L; + if(b->endbyte*8+bits>b->storage*8)goto overflow; + } + + ret=b->ptr[0]>>b->endbit; + if(bits>8){ + ret|=b->ptr[1]<<(8-b->endbit); + if(bits>16){ + ret|=b->ptr[2]<<(16-b->endbit); + if(bits>24){ + ret|=b->ptr[3]<<(24-b->endbit); + if(bits>32 && b->endbit){ + ret|=b->ptr[4]<<(32-b->endbit); + } + } + } + } + ret&=m; + + overflow: + + b->ptr+=bits/8; + b->endbyte+=bits/8; + b->endbit=bits&7; + return(ret); +} + +/* bits <= 32 */ +long oggpackB_read(oggpack_buffer *b,int bits){ + long ret; + long m=32-bits; + + bits+=b->endbit; + + if(b->endbyte+4>=b->storage){ + /* not the main path */ + ret=-1L; + if(b->endbyte*8+bits>b->storage*8)goto overflow; + /* special case to avoid reading b->ptr[0], which might be past the end of + the buffer; also skips some useless accounting */ + else if(!bits)return(0L); + } + + ret=b->ptr[0]<<(24+b->endbit); + if(bits>8){ + ret|=b->ptr[1]<<(16+b->endbit); + if(bits>16){ + ret|=b->ptr[2]<<(8+b->endbit); + if(bits>24){ + ret|=b->ptr[3]<<(b->endbit); + if(bits>32 && b->endbit) + ret|=b->ptr[4]>>(8-b->endbit); + } + } + } + ret=((ret&0xffffffffUL)>>(m>>1))>>((m+1)>>1); + + overflow: + + b->ptr+=bits/8; + b->endbyte+=bits/8; + b->endbit=bits&7; + return(ret); +} + +long oggpack_read1(oggpack_buffer *b){ + long ret; + + if(b->endbyte>=b->storage){ + /* not the main path */ + ret=-1L; + goto overflow; + } + + ret=(b->ptr[0]>>b->endbit)&1; + + overflow: + + b->endbit++; + if(b->endbit>7){ + b->endbit=0; + b->ptr++; + b->endbyte++; + } + return(ret); +} + +long oggpackB_read1(oggpack_buffer *b){ + long ret; + + if(b->endbyte>=b->storage){ + /* not the main path */ + ret=-1L; + goto overflow; + } + + ret=(b->ptr[0]>>(7-b->endbit))&1; + + overflow: + + b->endbit++; + if(b->endbit>7){ + b->endbit=0; + b->ptr++; + b->endbyte++; + } + return(ret); +} + +long oggpack_bytes(oggpack_buffer *b){ + return(b->endbyte+(b->endbit+7)/8); +} + +long oggpack_bits(oggpack_buffer *b){ + return(b->endbyte*8+b->endbit); +} + +long oggpackB_bytes(oggpack_buffer *b){ + return oggpack_bytes(b); +} + +long oggpackB_bits(oggpack_buffer *b){ + return oggpack_bits(b); +} + +unsigned char *oggpack_get_buffer(oggpack_buffer *b){ + return(b->buffer); +} + +unsigned char *oggpackB_get_buffer(oggpack_buffer *b){ + return oggpack_get_buffer(b); +} + +/* Self test of the bitwise routines; everything else is based on + them, so they damned well better be solid. */ + +#ifdef _V_SELFTEST +#include + +static int ilog(unsigned int v){ + int ret=0; + while(v){ + ret++; + v>>=1; + } + return(ret); +} + +oggpack_buffer o; +oggpack_buffer r; + +void report(char *in){ + fprintf(stderr,"%s",in); + exit(1); +} + +void cliptest(unsigned long *b,int vals,int bits,int *comp,int compsize){ + long bytes,i; + unsigned char *buffer; + + oggpack_reset(&o); + for(i=0;i +#include +#include + +/* A complete description of Ogg framing exists in docs/framing.html */ + +int ogg_page_version(const ogg_page *og){ + return((int)(og->header[4])); +} + +int ogg_page_continued(const ogg_page *og){ + return((int)(og->header[5]&0x01)); +} + +int ogg_page_bos(const ogg_page *og){ + return((int)(og->header[5]&0x02)); +} + +int ogg_page_eos(const ogg_page *og){ + return((int)(og->header[5]&0x04)); +} + +ogg_int64_t ogg_page_granulepos(const ogg_page *og){ + unsigned char *page=og->header; + ogg_int64_t granulepos=page[13]&(0xff); + granulepos= (granulepos<<8)|(page[12]&0xff); + granulepos= (granulepos<<8)|(page[11]&0xff); + granulepos= (granulepos<<8)|(page[10]&0xff); + granulepos= (granulepos<<8)|(page[9]&0xff); + granulepos= (granulepos<<8)|(page[8]&0xff); + granulepos= (granulepos<<8)|(page[7]&0xff); + granulepos= (granulepos<<8)|(page[6]&0xff); + return(granulepos); +} + +int ogg_page_serialno(const ogg_page *og){ + return(og->header[14] | + (og->header[15]<<8) | + (og->header[16]<<16) | + (og->header[17]<<24)); +} + +long ogg_page_pageno(const ogg_page *og){ + return(og->header[18] | + (og->header[19]<<8) | + (og->header[20]<<16) | + (og->header[21]<<24)); +} + + + +/* returns the number of packets that are completed on this page (if + the leading packet is begun on a previous page, but ends on this + page, it's counted */ + +/* NOTE: +If a page consists of a packet begun on a previous page, and a new +packet begun (but not completed) on this page, the return will be: + ogg_page_packets(page) ==1, + ogg_page_continued(page) !=0 + +If a page happens to be a single packet that was begun on a +previous page, and spans to the next page (in the case of a three or +more page packet), the return will be: + ogg_page_packets(page) ==0, + ogg_page_continued(page) !=0 +*/ + +int ogg_page_packets(const ogg_page *og){ + int i,n=og->header[26],count=0; + for(i=0;iheader[27+i]<255)count++; + return(count); +} + + +#if 0 +/* helper to initialize lookup for direct-table CRC (illustrative; we + use the static init below) */ + +static ogg_uint32_t _ogg_crc_entry(unsigned long index){ + int i; + unsigned long r; + + r = index << 24; + for (i=0; i<8; i++) + if (r & 0x80000000UL) + r = (r << 1) ^ 0x04c11db7; /* The same as the ethernet generator + polynomial, although we use an + unreflected alg and an init/final + of 0, not 0xffffffff */ + else + r<<=1; + return (r & 0xffffffffUL); +} +#endif + +static const ogg_uint32_t crc_lookup[256]={ + 0x00000000,0x04c11db7,0x09823b6e,0x0d4326d9, + 0x130476dc,0x17c56b6b,0x1a864db2,0x1e475005, + 0x2608edb8,0x22c9f00f,0x2f8ad6d6,0x2b4bcb61, + 0x350c9b64,0x31cd86d3,0x3c8ea00a,0x384fbdbd, + 0x4c11db70,0x48d0c6c7,0x4593e01e,0x4152fda9, + 0x5f15adac,0x5bd4b01b,0x569796c2,0x52568b75, + 0x6a1936c8,0x6ed82b7f,0x639b0da6,0x675a1011, + 0x791d4014,0x7ddc5da3,0x709f7b7a,0x745e66cd, + 0x9823b6e0,0x9ce2ab57,0x91a18d8e,0x95609039, + 0x8b27c03c,0x8fe6dd8b,0x82a5fb52,0x8664e6e5, + 0xbe2b5b58,0xbaea46ef,0xb7a96036,0xb3687d81, + 0xad2f2d84,0xa9ee3033,0xa4ad16ea,0xa06c0b5d, + 0xd4326d90,0xd0f37027,0xddb056fe,0xd9714b49, + 0xc7361b4c,0xc3f706fb,0xceb42022,0xca753d95, + 0xf23a8028,0xf6fb9d9f,0xfbb8bb46,0xff79a6f1, + 0xe13ef6f4,0xe5ffeb43,0xe8bccd9a,0xec7dd02d, + 0x34867077,0x30476dc0,0x3d044b19,0x39c556ae, + 0x278206ab,0x23431b1c,0x2e003dc5,0x2ac12072, + 0x128e9dcf,0x164f8078,0x1b0ca6a1,0x1fcdbb16, + 0x018aeb13,0x054bf6a4,0x0808d07d,0x0cc9cdca, + 0x7897ab07,0x7c56b6b0,0x71159069,0x75d48dde, + 0x6b93dddb,0x6f52c06c,0x6211e6b5,0x66d0fb02, + 0x5e9f46bf,0x5a5e5b08,0x571d7dd1,0x53dc6066, + 0x4d9b3063,0x495a2dd4,0x44190b0d,0x40d816ba, + 0xaca5c697,0xa864db20,0xa527fdf9,0xa1e6e04e, + 0xbfa1b04b,0xbb60adfc,0xb6238b25,0xb2e29692, + 0x8aad2b2f,0x8e6c3698,0x832f1041,0x87ee0df6, + 0x99a95df3,0x9d684044,0x902b669d,0x94ea7b2a, + 0xe0b41de7,0xe4750050,0xe9362689,0xedf73b3e, + 0xf3b06b3b,0xf771768c,0xfa325055,0xfef34de2, + 0xc6bcf05f,0xc27dede8,0xcf3ecb31,0xcbffd686, + 0xd5b88683,0xd1799b34,0xdc3abded,0xd8fba05a, + 0x690ce0ee,0x6dcdfd59,0x608edb80,0x644fc637, + 0x7a089632,0x7ec98b85,0x738aad5c,0x774bb0eb, + 0x4f040d56,0x4bc510e1,0x46863638,0x42472b8f, + 0x5c007b8a,0x58c1663d,0x558240e4,0x51435d53, + 0x251d3b9e,0x21dc2629,0x2c9f00f0,0x285e1d47, + 0x36194d42,0x32d850f5,0x3f9b762c,0x3b5a6b9b, + 0x0315d626,0x07d4cb91,0x0a97ed48,0x0e56f0ff, + 0x1011a0fa,0x14d0bd4d,0x19939b94,0x1d528623, + 0xf12f560e,0xf5ee4bb9,0xf8ad6d60,0xfc6c70d7, + 0xe22b20d2,0xe6ea3d65,0xeba91bbc,0xef68060b, + 0xd727bbb6,0xd3e6a601,0xdea580d8,0xda649d6f, + 0xc423cd6a,0xc0e2d0dd,0xcda1f604,0xc960ebb3, + 0xbd3e8d7e,0xb9ff90c9,0xb4bcb610,0xb07daba7, + 0xae3afba2,0xaafbe615,0xa7b8c0cc,0xa379dd7b, + 0x9b3660c6,0x9ff77d71,0x92b45ba8,0x9675461f, + 0x8832161a,0x8cf30bad,0x81b02d74,0x857130c3, + 0x5d8a9099,0x594b8d2e,0x5408abf7,0x50c9b640, + 0x4e8ee645,0x4a4ffbf2,0x470cdd2b,0x43cdc09c, + 0x7b827d21,0x7f436096,0x7200464f,0x76c15bf8, + 0x68860bfd,0x6c47164a,0x61043093,0x65c52d24, + 0x119b4be9,0x155a565e,0x18197087,0x1cd86d30, + 0x029f3d35,0x065e2082,0x0b1d065b,0x0fdc1bec, + 0x3793a651,0x3352bbe6,0x3e119d3f,0x3ad08088, + 0x2497d08d,0x2056cd3a,0x2d15ebe3,0x29d4f654, + 0xc5a92679,0xc1683bce,0xcc2b1d17,0xc8ea00a0, + 0xd6ad50a5,0xd26c4d12,0xdf2f6bcb,0xdbee767c, + 0xe3a1cbc1,0xe760d676,0xea23f0af,0xeee2ed18, + 0xf0a5bd1d,0xf464a0aa,0xf9278673,0xfde69bc4, + 0x89b8fd09,0x8d79e0be,0x803ac667,0x84fbdbd0, + 0x9abc8bd5,0x9e7d9662,0x933eb0bb,0x97ffad0c, + 0xafb010b1,0xab710d06,0xa6322bdf,0xa2f33668, + 0xbcb4666d,0xb8757bda,0xb5365d03,0xb1f740b4}; + +/* init the encode/decode logical stream state */ + +int ogg_stream_init(ogg_stream_state *os,int serialno){ + if(os){ + memset(os,0,sizeof(*os)); + os->body_storage=16*1024; + os->lacing_storage=1024; + + os->body_data=_ogg_malloc(os->body_storage*sizeof(*os->body_data)); + os->lacing_vals=_ogg_malloc(os->lacing_storage*sizeof(*os->lacing_vals)); + os->granule_vals=_ogg_malloc(os->lacing_storage*sizeof(*os->granule_vals)); + + if(!os->body_data || !os->lacing_vals || !os->granule_vals){ + ogg_stream_clear(os); + return -1; + } + + os->serialno=serialno; + + return(0); + } + return(-1); +} + +/* async/delayed error detection for the ogg_stream_state */ +int ogg_stream_check(ogg_stream_state *os){ + if(!os || !os->body_data) return -1; + return 0; +} + +/* _clear does not free os, only the non-flat storage within */ +int ogg_stream_clear(ogg_stream_state *os){ + if(os){ + if(os->body_data)_ogg_free(os->body_data); + if(os->lacing_vals)_ogg_free(os->lacing_vals); + if(os->granule_vals)_ogg_free(os->granule_vals); + + memset(os,0,sizeof(*os)); + } + return(0); +} + +int ogg_stream_destroy(ogg_stream_state *os){ + if(os){ + ogg_stream_clear(os); + _ogg_free(os); + } + return(0); +} + +/* Helpers for ogg_stream_encode; this keeps the structure and + what's happening fairly clear */ + +static int _os_body_expand(ogg_stream_state *os,int needed){ + if(os->body_storage<=os->body_fill+needed){ + void *ret; + ret=_ogg_realloc(os->body_data,(os->body_storage+needed+1024)* + sizeof(*os->body_data)); + if(!ret){ + ogg_stream_clear(os); + return -1; + } + os->body_storage+=(needed+1024); + os->body_data=ret; + } + return 0; +} + +static int _os_lacing_expand(ogg_stream_state *os,int needed){ + if(os->lacing_storage<=os->lacing_fill+needed){ + void *ret; + ret=_ogg_realloc(os->lacing_vals,(os->lacing_storage+needed+32)* + sizeof(*os->lacing_vals)); + if(!ret){ + ogg_stream_clear(os); + return -1; + } + os->lacing_vals=ret; + ret=_ogg_realloc(os->granule_vals,(os->lacing_storage+needed+32)* + sizeof(*os->granule_vals)); + if(!ret){ + ogg_stream_clear(os); + return -1; + } + os->granule_vals=ret; + os->lacing_storage+=(needed+32); + } + return 0; +} + +/* checksum the page */ +/* Direct table CRC; note that this will be faster in the future if we + perform the checksum silmultaneously with other copies */ + +void ogg_page_checksum_set(ogg_page *og){ + if(og){ + ogg_uint32_t crc_reg=0; + int i; + + /* safety; needed for API behavior, but not framing code */ + og->header[22]=0; + og->header[23]=0; + og->header[24]=0; + og->header[25]=0; + + for(i=0;iheader_len;i++) + crc_reg=(crc_reg<<8)^crc_lookup[((crc_reg >> 24)&0xff)^og->header[i]]; + for(i=0;ibody_len;i++) + crc_reg=(crc_reg<<8)^crc_lookup[((crc_reg >> 24)&0xff)^og->body[i]]; + + og->header[22]=(unsigned char)(crc_reg&0xff); + og->header[23]=(unsigned char)((crc_reg>>8)&0xff); + og->header[24]=(unsigned char)((crc_reg>>16)&0xff); + og->header[25]=(unsigned char)((crc_reg>>24)&0xff); + } +} + +/* submit data to the internal buffer of the framing engine */ +int ogg_stream_iovecin(ogg_stream_state *os, ogg_iovec_t *iov, int count, + long e_o_s, ogg_int64_t granulepos){ + + int bytes = 0, lacing_vals, i; + + if(ogg_stream_check(os)) return -1; + if(!iov) return 0; + + for (i = 0; i < count; ++i) bytes += (int)iov[i].iov_len; + lacing_vals=bytes/255+1; + + if(os->body_returned){ + /* advance packet data according to the body_returned pointer. We + had to keep it around to return a pointer into the buffer last + call */ + + os->body_fill-=os->body_returned; + if(os->body_fill) + memmove(os->body_data,os->body_data+os->body_returned, + os->body_fill); + os->body_returned=0; + } + + /* make sure we have the buffer storage */ + if(_os_body_expand(os,bytes) || _os_lacing_expand(os,lacing_vals)) + return -1; + + /* Copy in the submitted packet. Yes, the copy is a waste; this is + the liability of overly clean abstraction for the time being. It + will actually be fairly easy to eliminate the extra copy in the + future */ + + for (i = 0; i < count; ++i) { + memcpy(os->body_data+os->body_fill, iov[i].iov_base, iov[i].iov_len); + os->body_fill += (int)iov[i].iov_len; + } + + /* Store lacing vals for this packet */ + for(i=0;ilacing_vals[os->lacing_fill+i]=255; + os->granule_vals[os->lacing_fill+i]=os->granulepos; + } + os->lacing_vals[os->lacing_fill+i]=bytes%255; + os->granulepos=os->granule_vals[os->lacing_fill+i]=granulepos; + + /* flag the first segment as the beginning of the packet */ + os->lacing_vals[os->lacing_fill]|= 0x100; + + os->lacing_fill+=lacing_vals; + + /* for the sake of completeness */ + os->packetno++; + + if(e_o_s)os->e_o_s=1; + + return(0); +} + +int ogg_stream_packetin(ogg_stream_state *os,ogg_packet *op){ + ogg_iovec_t iov; + iov.iov_base = op->packet; + iov.iov_len = op->bytes; + return ogg_stream_iovecin(os, &iov, 1, op->e_o_s, op->granulepos); +} + +/* Conditionally flush a page; force==0 will only flush nominal-size + pages, force==1 forces us to flush a page regardless of page size + so long as there's any data available at all. */ +static int ogg_stream_flush_i(ogg_stream_state *os,ogg_page *og, int force){ + int i; + int vals=0; + int maxvals=(os->lacing_fill>255?255:os->lacing_fill); + int bytes=0; + long acc=0; + ogg_int64_t granule_pos=-1; + + if(ogg_stream_check(os)) return(0); + if(maxvals==0) return(0); + + /* construct a page */ + /* decide how many segments to include */ + + /* If this is the initial header case, the first page must only include + the initial header packet */ + if(os->b_o_s==0){ /* 'initial header page' case */ + granule_pos=0; + for(vals=0;valslacing_vals[vals]&0x0ff)<255){ + vals++; + break; + } + } + }else{ + + /* The extra packets_done, packet_just_done logic here attempts to do two things: + 1) Don't unneccessarily span pages. + 2) Unless necessary, don't flush pages if there are less than four packets on + them; this expands page size to reduce unneccessary overhead if incoming packets + are large. + These are not necessary behaviors, just 'always better than naive flushing' + without requiring an application to explicitly request a specific optimized + behavior. We'll want an explicit behavior setup pathway eventually as well. */ + + int packets_done=0; + int packet_just_done=0; + for(vals=0;vals4096 && packet_just_done>=4){ + force=1; + break; + } + acc+=os->lacing_vals[vals]&0x0ff; + if((os->lacing_vals[vals]&0xff)<255){ + granule_pos=os->granule_vals[vals]; + packet_just_done=++packets_done; + }else + packet_just_done=0; + } + if(vals==255)force=1; + } + + if(!force) return(0); + + /* construct the header in temp storage */ + memcpy(os->header,"OggS",4); + + /* stream structure version */ + os->header[4]=0x00; + + /* continued packet flag? */ + os->header[5]=0x00; + if((os->lacing_vals[0]&0x100)==0)os->header[5]|=0x01; + /* first page flag? */ + if(os->b_o_s==0)os->header[5]|=0x02; + /* last page flag? */ + if(os->e_o_s && os->lacing_fill==vals)os->header[5]|=0x04; + os->b_o_s=1; + + /* 64 bits of PCM position */ + for(i=6;i<14;i++){ + os->header[i]=(unsigned char)(granule_pos&0xff); + granule_pos>>=8; + } + + /* 32 bits of stream serial number */ + { + long serialno=os->serialno; + for(i=14;i<18;i++){ + os->header[i]=(unsigned char)(serialno&0xff); + serialno>>=8; + } + } + + /* 32 bits of page counter (we have both counter and page header + because this val can roll over) */ + if(os->pageno==-1)os->pageno=0; /* because someone called + stream_reset; this would be a + strange thing to do in an + encode stream, but it has + plausible uses */ + { + long pageno=os->pageno++; + for(i=18;i<22;i++){ + os->header[i]=(unsigned char)(pageno&0xff); + pageno>>=8; + } + } + + /* zero for computation; filled in later */ + os->header[22]=0; + os->header[23]=0; + os->header[24]=0; + os->header[25]=0; + + /* segment table */ + os->header[26]=(unsigned char)(vals&0xff); + for(i=0;iheader[i+27]=(unsigned char)(os->lacing_vals[i]&0xff); + + /* set pointers in the ogg_page struct */ + og->header=os->header; + og->header_len=os->header_fill=vals+27; + og->body=os->body_data+os->body_returned; + og->body_len=bytes; + + /* advance the lacing data and set the body_returned pointer */ + + os->lacing_fill-=vals; + memmove(os->lacing_vals,os->lacing_vals+vals,os->lacing_fill*sizeof(*os->lacing_vals)); + memmove(os->granule_vals,os->granule_vals+vals,os->lacing_fill*sizeof(*os->granule_vals)); + os->body_returned+=bytes; + + /* calculate the checksum */ + + ogg_page_checksum_set(og); + + /* done */ + return(1); +} + +/* This will flush remaining packets into a page (returning nonzero), + even if there is not enough data to trigger a flush normally + (undersized page). If there are no packets or partial packets to + flush, ogg_stream_flush returns 0. Note that ogg_stream_flush will + try to flush a normal sized page like ogg_stream_pageout; a call to + ogg_stream_flush does not guarantee that all packets have flushed. + Only a return value of 0 from ogg_stream_flush indicates all packet + data is flushed into pages. + + since ogg_stream_flush will flush the last page in a stream even if + it's undersized, you almost certainly want to use ogg_stream_pageout + (and *not* ogg_stream_flush) unless you specifically need to flush + an page regardless of size in the middle of a stream. */ + +int ogg_stream_flush(ogg_stream_state *os,ogg_page *og){ + return ogg_stream_flush_i(os,og,1); +} + +/* This constructs pages from buffered packet segments. The pointers +returned are to static buffers; do not free. The returned buffers are +good only until the next call (using the same ogg_stream_state) */ + +int ogg_stream_pageout(ogg_stream_state *os, ogg_page *og){ + int force=0; + if(ogg_stream_check(os)) return 0; + + if((os->e_o_s&&os->lacing_fill) || /* 'were done, now flush' case */ + (os->lacing_fill&&!os->b_o_s)) /* 'initial header page' case */ + force=1; + + return(ogg_stream_flush_i(os,og,force)); +} + +int ogg_stream_eos(ogg_stream_state *os){ + if(ogg_stream_check(os)) return 1; + return os->e_o_s; +} + +/* DECODING PRIMITIVES: packet streaming layer **********************/ + +/* This has two layers to place more of the multi-serialno and paging + control in the application's hands. First, we expose a data buffer + using ogg_sync_buffer(). The app either copies into the + buffer, or passes it directly to read(), etc. We then call + ogg_sync_wrote() to tell how many bytes we just added. + + Pages are returned (pointers into the buffer in ogg_sync_state) + by ogg_sync_pageout(). The page is then submitted to + ogg_stream_pagein() along with the appropriate + ogg_stream_state* (ie, matching serialno). We then get raw + packets out calling ogg_stream_packetout() with a + ogg_stream_state. */ + +/* initialize the struct to a known state */ +int ogg_sync_init(ogg_sync_state *oy){ + if(oy){ + oy->storage = -1; /* used as a readiness flag */ + memset(oy,0,sizeof(*oy)); + } + return(0); +} + +/* clear non-flat storage within */ +int ogg_sync_clear(ogg_sync_state *oy){ + if(oy){ + if(oy->data)_ogg_free(oy->data); + memset(oy,0,sizeof(*oy)); + } + return(0); +} + +int ogg_sync_destroy(ogg_sync_state *oy){ + if(oy){ + ogg_sync_clear(oy); + _ogg_free(oy); + } + return(0); +} + +int ogg_sync_check(ogg_sync_state *oy){ + if(oy->storage<0) return -1; + return 0; +} + +char *ogg_sync_buffer(ogg_sync_state *oy, long size){ + if(ogg_sync_check(oy)) return NULL; + + /* first, clear out any space that has been previously returned */ + if(oy->returned){ + oy->fill-=oy->returned; + if(oy->fill>0) + memmove(oy->data,oy->data+oy->returned,oy->fill); + oy->returned=0; + } + + if(size>oy->storage-oy->fill){ + /* We need to extend the internal buffer */ + long newsize=size+oy->fill+4096; /* an extra page to be nice */ + void *ret; + + if(oy->data) + ret=_ogg_realloc(oy->data,newsize); + else + ret=_ogg_malloc(newsize); + if(!ret){ + ogg_sync_clear(oy); + return NULL; + } + oy->data=ret; + oy->storage=newsize; + } + + /* expose a segment at least as large as requested at the fill mark */ + return((char *)oy->data+oy->fill); +} + +int ogg_sync_wrote(ogg_sync_state *oy, long bytes){ + if(ogg_sync_check(oy))return -1; + if(oy->fill+bytes>oy->storage)return -1; + oy->fill+=bytes; + return(0); +} + +/* sync the stream. This is meant to be useful for finding page + boundaries. + + return values for this: + -n) skipped n bytes + 0) page not ready; more data (no bytes skipped) + n) page synced at current location; page length n bytes + +*/ + +long ogg_sync_pageseek(ogg_sync_state *oy,ogg_page *og){ + unsigned char *page=oy->data+oy->returned; + unsigned char *next; + long bytes=oy->fill-oy->returned; + + if(ogg_sync_check(oy))return 0; + + if(oy->headerbytes==0){ + int headerbytes,i; + if(bytes<27)return(0); /* not enough for a header */ + + /* verify capture pattern */ + if(memcmp(page,"OggS",4))goto sync_fail; + + headerbytes=page[26]+27; + if(bytesbodybytes+=page[27+i]; + oy->headerbytes=headerbytes; + } + + if(oy->bodybytes+oy->headerbytes>bytes)return(0); + + /* The whole test page is buffered. Verify the checksum */ + { + /* Grab the checksum bytes, set the header field to zero */ + char chksum[4]; + ogg_page log; + + memcpy(chksum,page+22,4); + memset(page+22,0,4); + + /* set up a temp page struct and recompute the checksum */ + log.header=page; + log.header_len=oy->headerbytes; + log.body=page+oy->headerbytes; + log.body_len=oy->bodybytes; + ogg_page_checksum_set(&log); + + /* Compare */ + if(memcmp(chksum,page+22,4)){ + /* D'oh. Mismatch! Corrupt page (or miscapture and not a page + at all) */ + /* replace the computed checksum with the one actually read in */ + memcpy(page+22,chksum,4); + + /* Bad checksum. Lose sync */ + goto sync_fail; + } + } + + /* yes, have a whole page all ready to go */ + { + unsigned char *page=oy->data+oy->returned; + long bytes; + + if(og){ + og->header=page; + og->header_len=oy->headerbytes; + og->body=page+oy->headerbytes; + og->body_len=oy->bodybytes; + } + + oy->unsynced=0; + oy->returned+=(bytes=oy->headerbytes+oy->bodybytes); + oy->headerbytes=0; + oy->bodybytes=0; + return(bytes); + } + + sync_fail: + + oy->headerbytes=0; + oy->bodybytes=0; + + /* search for possible capture */ + next=memchr(page+1,'O',bytes-1); + if(!next) + next=oy->data+oy->fill; + + oy->returned=(int)(next-oy->data); + return((long)-(next-page)); +} + +/* sync the stream and get a page. Keep trying until we find a page. + Supress 'sync errors' after reporting the first. + + return values: + -1) recapture (hole in data) + 0) need more data + 1) page returned + + Returns pointers into buffered data; invalidated by next call to + _stream, _clear, _init, or _buffer */ + +int ogg_sync_pageout(ogg_sync_state *oy, ogg_page *og){ + + if(ogg_sync_check(oy))return 0; + + /* all we need to do is verify a page at the head of the stream + buffer. If it doesn't verify, we look for the next potential + frame */ + + for(;;){ + long ret=ogg_sync_pageseek(oy,og); + if(ret>0){ + /* have a page */ + return(1); + } + if(ret==0){ + /* need more data */ + return(0); + } + + /* head did not start a synced page... skipped some bytes */ + if(!oy->unsynced){ + oy->unsynced=1; + return(-1); + } + + /* loop. keep looking */ + + } +} + +/* add the incoming page to the stream state; we decompose the page + into packet segments here as well. */ + +int ogg_stream_pagein(ogg_stream_state *os, ogg_page *og){ + unsigned char *header=og->header; + unsigned char *body=og->body; + long bodysize=og->body_len; + int segptr=0; + + int version=ogg_page_version(og); + int continued=ogg_page_continued(og); + int bos=ogg_page_bos(og); + int eos=ogg_page_eos(og); + ogg_int64_t granulepos=ogg_page_granulepos(og); + int serialno=ogg_page_serialno(og); + long pageno=ogg_page_pageno(og); + int segments=header[26]; + + if(ogg_stream_check(os)) return -1; + + /* clean up 'returned data' */ + { + long lr=os->lacing_returned; + long br=os->body_returned; + + /* body data */ + if(br){ + os->body_fill-=br; + if(os->body_fill) + memmove(os->body_data,os->body_data+br,os->body_fill); + os->body_returned=0; + } + + if(lr){ + /* segment table */ + if(os->lacing_fill-lr){ + memmove(os->lacing_vals,os->lacing_vals+lr, + (os->lacing_fill-lr)*sizeof(*os->lacing_vals)); + memmove(os->granule_vals,os->granule_vals+lr, + (os->lacing_fill-lr)*sizeof(*os->granule_vals)); + } + os->lacing_fill-=lr; + os->lacing_packet-=lr; + os->lacing_returned=0; + } + } + + /* check the serial number */ + if(serialno!=os->serialno)return(-1); + if(version>0)return(-1); + + if(_os_lacing_expand(os,segments+1)) return -1; + + /* are we in sequence? */ + if(pageno!=os->pageno){ + int i; + + /* unroll previous partial packet (if any) */ + for(i=os->lacing_packet;ilacing_fill;i++) + os->body_fill-=os->lacing_vals[i]&0xff; + os->lacing_fill=os->lacing_packet; + + /* make a note of dropped data in segment table */ + if(os->pageno!=-1){ + os->lacing_vals[os->lacing_fill++]=0x400; + os->lacing_packet++; + } + } + + /* are we a 'continued packet' page? If so, we may need to skip + some segments */ + if(continued){ + if(os->lacing_fill<1 || + os->lacing_vals[os->lacing_fill-1]==0x400){ + bos=0; + for(;segptrbody_data+os->body_fill,body,bodysize); + os->body_fill+=bodysize; + } + + { + int saved=-1; + while(segptrlacing_vals[os->lacing_fill]=val; + os->granule_vals[os->lacing_fill]=-1; + + if(bos){ + os->lacing_vals[os->lacing_fill]|=0x100; + bos=0; + } + + if(val<255)saved=os->lacing_fill; + + os->lacing_fill++; + segptr++; + + if(val<255)os->lacing_packet=os->lacing_fill; + } + + /* set the granulepos on the last granuleval of the last full packet */ + if(saved!=-1){ + os->granule_vals[saved]=granulepos; + } + + } + + if(eos){ + os->e_o_s=1; + if(os->lacing_fill>0) + os->lacing_vals[os->lacing_fill-1]|=0x200; + } + + os->pageno=pageno+1; + + return(0); +} + +/* clear things to an initial state. Good to call, eg, before seeking */ +int ogg_sync_reset(ogg_sync_state *oy){ + if(ogg_sync_check(oy))return -1; + + oy->fill=0; + oy->returned=0; + oy->unsynced=0; + oy->headerbytes=0; + oy->bodybytes=0; + return(0); +} + +int ogg_stream_reset(ogg_stream_state *os){ + if(ogg_stream_check(os)) return -1; + + os->body_fill=0; + os->body_returned=0; + + os->lacing_fill=0; + os->lacing_packet=0; + os->lacing_returned=0; + + os->header_fill=0; + + os->e_o_s=0; + os->b_o_s=0; + os->pageno=-1; + os->packetno=0; + os->granulepos=0; + + return(0); +} + +int ogg_stream_reset_serialno(ogg_stream_state *os,int serialno){ + if(ogg_stream_check(os)) return -1; + ogg_stream_reset(os); + os->serialno=serialno; + return(0); +} + +static int _packetout(ogg_stream_state *os,ogg_packet *op,int adv){ + + /* The last part of decode. We have the stream broken into packet + segments. Now we need to group them into packets (or return the + out of sync markers) */ + + int ptr=os->lacing_returned; + + if(os->lacing_packet<=ptr)return(0); + + if(os->lacing_vals[ptr]&0x400){ + /* we need to tell the codec there's a gap; it might need to + handle previous packet dependencies. */ + os->lacing_returned++; + os->packetno++; + return(-1); + } + + if(!op && !adv)return(1); /* just using peek as an inexpensive way + to ask if there's a whole packet + waiting */ + + /* Gather the whole packet. We'll have no holes or a partial packet */ + { + int size=os->lacing_vals[ptr]&0xff; + int bytes=size; + int eos=os->lacing_vals[ptr]&0x200; /* last packet of the stream? */ + int bos=os->lacing_vals[ptr]&0x100; /* first packet of the stream? */ + + while(size==255){ + int val=os->lacing_vals[++ptr]; + size=val&0xff; + if(val&0x200)eos=0x200; + bytes+=size; + } + + if(op){ + op->e_o_s=eos; + op->b_o_s=bos; + op->packet=os->body_data+os->body_returned; + op->packetno=os->packetno; + op->granulepos=os->granule_vals[ptr]; + op->bytes=bytes; + } + + if(adv){ + os->body_returned+=bytes; + os->lacing_returned=ptr+1; + os->packetno++; + } + } + return(1); +} + +int ogg_stream_packetout(ogg_stream_state *os,ogg_packet *op){ + if(ogg_stream_check(os)) return 0; + return _packetout(os,op,1); +} + +int ogg_stream_packetpeek(ogg_stream_state *os,ogg_packet *op){ + if(ogg_stream_check(os)) return 0; + return _packetout(os,op,0); +} + +void ogg_packet_clear(ogg_packet *op) { + _ogg_free(op->packet); + memset(op, 0, sizeof(*op)); +} + +#ifdef _V_SELFTEST +#include + +ogg_stream_state os_en, os_de; +ogg_sync_state oy; + +void checkpacket(ogg_packet *op,int len, int no, int pos){ + long j; + static int sequence=0; + static int lastno=0; + + if(op->bytes!=len){ + fprintf(stderr,"incorrect packet length (%d != %d)!\n",op->bytes,len); + exit(1); + } + if(op->granulepos!=pos){ + fprintf(stderr,"incorrect packet granpos (%ld != %ld)!\n",(long)op->granulepos,pos); + exit(1); + } + + /* packet number just follows sequence/gap; adjust the input number + for that */ + if(no==0){ + sequence=0; + }else{ + sequence++; + if(no>lastno+1) + sequence++; + } + lastno=no; + if(op->packetno!=sequence){ + fprintf(stderr,"incorrect packet sequence %ld != %d\n", + (long)(op->packetno),sequence); + exit(1); + } + + /* Test data */ + for(j=0;jbytes;j++) + if(op->packet[j]!=((j+no)&0xff)){ + fprintf(stderr,"body data mismatch (1) at pos %ld: %x!=%lx!\n\n", + j,op->packet[j],(j+no)&0xff); + exit(1); + } +} + +void check_page(unsigned char *data,const int *header,ogg_page *og){ + long j; + /* Test data */ + for(j=0;jbody_len;j++) + if(og->body[j]!=data[j]){ + fprintf(stderr,"body data mismatch (2) at pos %ld: %x!=%x!\n\n", + j,data[j],og->body[j]); + exit(1); + } + + /* Test header */ + for(j=0;jheader_len;j++){ + if(og->header[j]!=header[j]){ + fprintf(stderr,"header content mismatch at pos %ld:\n",j); + for(j=0;jheader[j]); + fprintf(stderr,"\n"); + exit(1); + } + } + if(og->header_len!=header[26]+27){ + fprintf(stderr,"header length incorrect! (%ld!=%d)\n", + og->header_len,header[26]+27); + exit(1); + } +} + +void print_header(ogg_page *og){ + int j; + fprintf(stderr,"\nHEADER:\n"); + fprintf(stderr," capture: %c %c %c %c version: %d flags: %x\n", + og->header[0],og->header[1],og->header[2],og->header[3], + (int)og->header[4],(int)og->header[5]); + + fprintf(stderr," granulepos: %d serialno: %d pageno: %ld\n", + (og->header[9]<<24)|(og->header[8]<<16)| + (og->header[7]<<8)|og->header[6], + (og->header[17]<<24)|(og->header[16]<<16)| + (og->header[15]<<8)|og->header[14], + ((long)(og->header[21])<<24)|(og->header[20]<<16)| + (og->header[19]<<8)|og->header[18]); + + fprintf(stderr," checksum: %02x:%02x:%02x:%02x\n segments: %d (", + (int)og->header[22],(int)og->header[23], + (int)og->header[24],(int)og->header[25], + (int)og->header[26]); + + for(j=27;jheader_len;j++) + fprintf(stderr,"%d ",(int)og->header[j]); + fprintf(stderr,")\n\n"); +} + +void copy_page(ogg_page *og){ + unsigned char *temp=_ogg_malloc(og->header_len); + memcpy(temp,og->header,og->header_len); + og->header=temp; + + temp=_ogg_malloc(og->body_len); + memcpy(temp,og->body,og->body_len); + og->body=temp; +} + +void free_page(ogg_page *og){ + _ogg_free (og->header); + _ogg_free (og->body); +} + +void error(void){ + fprintf(stderr,"error!\n"); + exit(1); +} + +/* 17 only */ +const int head1_0[] = {0x4f,0x67,0x67,0x53,0,0x06, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,0,0,0,0, + 0x15,0xed,0xec,0x91, + 1, + 17}; + +/* 17, 254, 255, 256, 500, 510, 600 byte, pad */ +const int head1_1[] = {0x4f,0x67,0x67,0x53,0,0x02, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,0,0,0,0, + 0x59,0x10,0x6c,0x2c, + 1, + 17}; +const int head2_1[] = {0x4f,0x67,0x67,0x53,0,0x04, + 0x07,0x18,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,1,0,0,0, + 0x89,0x33,0x85,0xce, + 13, + 254,255,0,255,1,255,245,255,255,0, + 255,255,90}; + +/* nil packets; beginning,middle,end */ +const int head1_2[] = {0x4f,0x67,0x67,0x53,0,0x02, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,0,0,0,0, + 0xff,0x7b,0x23,0x17, + 1, + 0}; +const int head2_2[] = {0x4f,0x67,0x67,0x53,0,0x04, + 0x07,0x28,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,1,0,0,0, + 0x5c,0x3f,0x66,0xcb, + 17, + 17,254,255,0,0,255,1,0,255,245,255,255,0, + 255,255,90,0}; + +/* large initial packet */ +const int head1_3[] = {0x4f,0x67,0x67,0x53,0,0x02, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,0,0,0,0, + 0x01,0x27,0x31,0xaa, + 18, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,10}; + +const int head2_3[] = {0x4f,0x67,0x67,0x53,0,0x04, + 0x07,0x08,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,1,0,0,0, + 0x7f,0x4e,0x8a,0xd2, + 4, + 255,4,255,0}; + + +/* continuing packet test */ +const int head1_4[] = {0x4f,0x67,0x67,0x53,0,0x02, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,0,0,0,0, + 0xff,0x7b,0x23,0x17, + 1, + 0}; + +const int head2_4[] = {0x4f,0x67,0x67,0x53,0,0x00, + 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, + 0x01,0x02,0x03,0x04,1,0,0,0, + 0xf8,0x3c,0x19,0x79, + 255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255}; + +const int head3_4[] = {0x4f,0x67,0x67,0x53,0,0x05, + 0x07,0x0c,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,2,0,0,0, + 0x38,0xe6,0xb6,0x28, + 6, + 255,220,255,4,255,0}; + + +/* spill expansion test */ +const int head1_4b[] = {0x4f,0x67,0x67,0x53,0,0x02, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,0,0,0,0, + 0xff,0x7b,0x23,0x17, + 1, + 0}; + +const int head2_4b[] = {0x4f,0x67,0x67,0x53,0,0x00, + 0x07,0x10,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,1,0,0,0, + 0xce,0x8f,0x17,0x1a, + 23, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,10,255,4,255,0,0}; + + +const int head3_4b[] = {0x4f,0x67,0x67,0x53,0,0x04, + 0x07,0x14,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,2,0,0,0, + 0x9b,0xb2,0x50,0xa1, + 1, + 0}; + +/* page with the 255 segment limit */ +const int head1_5[] = {0x4f,0x67,0x67,0x53,0,0x02, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,0,0,0,0, + 0xff,0x7b,0x23,0x17, + 1, + 0}; + +const int head2_5[] = {0x4f,0x67,0x67,0x53,0,0x00, + 0x07,0xfc,0x03,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,1,0,0,0, + 0xed,0x2a,0x2e,0xa7, + 255, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10}; + +const int head3_5[] = {0x4f,0x67,0x67,0x53,0,0x04, + 0x07,0x00,0x04,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,2,0,0,0, + 0x6c,0x3b,0x82,0x3d, + 1, + 50}; + + +/* packet that overspans over an entire page */ +const int head1_6[] = {0x4f,0x67,0x67,0x53,0,0x02, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,0,0,0,0, + 0xff,0x7b,0x23,0x17, + 1, + 0}; + +const int head2_6[] = {0x4f,0x67,0x67,0x53,0,0x00, + 0x07,0x04,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,1,0,0,0, + 0x68,0x22,0x7c,0x3d, + 255, + 100, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255}; + +const int head3_6[] = {0x4f,0x67,0x67,0x53,0,0x01, + 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, + 0x01,0x02,0x03,0x04,2,0,0,0, + 0xf4,0x87,0xba,0xf3, + 255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255}; + +const int head4_6[] = {0x4f,0x67,0x67,0x53,0,0x05, + 0x07,0x10,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,3,0,0,0, + 0xf7,0x2f,0x6c,0x60, + 5, + 254,255,4,255,0}; + +/* packet that overspans over an entire page */ +const int head1_7[] = {0x4f,0x67,0x67,0x53,0,0x02, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,0,0,0,0, + 0xff,0x7b,0x23,0x17, + 1, + 0}; + +const int head2_7[] = {0x4f,0x67,0x67,0x53,0,0x00, + 0x07,0x04,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,1,0,0,0, + 0x68,0x22,0x7c,0x3d, + 255, + 100, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255, + 255,255,255,255,255,255}; + +const int head3_7[] = {0x4f,0x67,0x67,0x53,0,0x05, + 0x07,0x08,0x00,0x00,0x00,0x00,0x00,0x00, + 0x01,0x02,0x03,0x04,2,0,0,0, + 0xd4,0xe0,0x60,0xe5, + 1, + 0}; + +void test_pack(const int *pl, const int **headers, int byteskip, + int pageskip, int packetskip){ + unsigned char *data=_ogg_malloc(1024*1024); /* for scripted test cases only */ + long inptr=0; + long outptr=0; + long deptr=0; + long depacket=0; + long granule_pos=7,pageno=0; + int i,j,packets,pageout=pageskip; + int eosflag=0; + int bosflag=0; + + int byteskipcount=0; + + ogg_stream_reset(&os_en); + ogg_stream_reset(&os_de); + ogg_sync_reset(&oy); + + for(packets=0;packetsbyteskip){ + memcpy(next,og.header,byteskipcount-byteskip); + next+=byteskipcount-byteskip; + byteskipcount=byteskip; + } + + byteskipcount+=og.body_len; + if(byteskipcount>byteskip){ + memcpy(next,og.body,byteskipcount-byteskip); + next+=byteskipcount-byteskip; + byteskipcount=byteskip; + } + + ogg_sync_wrote(&oy,next-buf); + + while(1){ + int ret=ogg_sync_pageout(&oy,&og_de); + if(ret==0)break; + if(ret<0)continue; + /* got a page. Happy happy. Verify that it's good. */ + + fprintf(stderr,"(%ld), ",pageout); + + check_page(data+deptr,headers[pageout],&og_de); + deptr+=og_de.body_len; + pageout++; + + /* submit it to deconstitution */ + ogg_stream_pagein(&os_de,&og_de); + + /* packets out? */ + while(ogg_stream_packetpeek(&os_de,&op_de2)>0){ + ogg_stream_packetpeek(&os_de,NULL); + ogg_stream_packetout(&os_de,&op_de); /* just catching them all */ + + /* verify peek and out match */ + if(memcmp(&op_de,&op_de2,sizeof(op_de))){ + fprintf(stderr,"packetout != packetpeek! pos=%ld\n", + depacket); + exit(1); + } + + /* verify the packet! */ + /* check data */ + if(memcmp(data+depacket,op_de.packet,op_de.bytes)){ + fprintf(stderr,"packet data mismatch in decode! pos=%ld\n", + depacket); + exit(1); + } + /* check bos flag */ + if(bosflag==0 && op_de.b_o_s==0){ + fprintf(stderr,"b_o_s flag not set on packet!\n"); + exit(1); + } + if(bosflag && op_de.b_o_s){ + fprintf(stderr,"b_o_s flag incorrectly set on packet!\n"); + exit(1); + } + bosflag=1; + depacket+=op_de.bytes; + + /* check eos flag */ + if(eosflag){ + fprintf(stderr,"Multiple decoded packets with eos flag!\n"); + exit(1); + } + + if(op_de.e_o_s)eosflag=1; + + /* check granulepos flag */ + if(op_de.granulepos!=-1){ + fprintf(stderr," granule:%ld ",(long)op_de.granulepos); + } + } + } + } + } + } + } + _ogg_free(data); + if(headers[pageno]!=NULL){ + fprintf(stderr,"did not write last page!\n"); + exit(1); + } + if(headers[pageout]!=NULL){ + fprintf(stderr,"did not decode last page!\n"); + exit(1); + } + if(inptr!=outptr){ + fprintf(stderr,"encoded page data incomplete!\n"); + exit(1); + } + if(inptr!=deptr){ + fprintf(stderr,"decoded page data incomplete!\n"); + exit(1); + } + if(inptr!=depacket){ + fprintf(stderr,"decoded packet data incomplete!\n"); + exit(1); + } + if(!eosflag){ + fprintf(stderr,"Never got a packet with EOS set!\n"); + exit(1); + } + fprintf(stderr,"ok.\n"); +} + +int main(void){ + + ogg_stream_init(&os_en,0x04030201); + ogg_stream_init(&os_de,0x04030201); + ogg_sync_init(&oy); + + /* Exercise each code path in the framing code. Also verify that + the checksums are working. */ + + { + /* 17 only */ + const int packets[]={17, -1}; + const int *headret[]={head1_0,NULL}; + + fprintf(stderr,"testing single page encoding... "); + test_pack(packets,headret,0,0,0); + } + + { + /* 17, 254, 255, 256, 500, 510, 600 byte, pad */ + const int packets[]={17, 254, 255, 256, 500, 510, 600, -1}; + const int *headret[]={head1_1,head2_1,NULL}; + + fprintf(stderr,"testing basic page encoding... "); + test_pack(packets,headret,0,0,0); + } + + { + /* nil packets; beginning,middle,end */ + const int packets[]={0,17, 254, 255, 0, 256, 0, 500, 510, 600, 0, -1}; + const int *headret[]={head1_2,head2_2,NULL}; + + fprintf(stderr,"testing basic nil packets... "); + test_pack(packets,headret,0,0,0); + } + + { + /* large initial packet */ + const int packets[]={4345,259,255,-1}; + const int *headret[]={head1_3,head2_3,NULL}; + + fprintf(stderr,"testing initial-packet lacing > 4k... "); + test_pack(packets,headret,0,0,0); + } + + { + /* continuing packet test; with page spill expansion, we have to + overflow the lacing table. */ + const int packets[]={0,65500,259,255,-1}; + const int *headret[]={head1_4,head2_4,head3_4,NULL}; + + fprintf(stderr,"testing single packet page span... "); + test_pack(packets,headret,0,0,0); + } + + { + /* spill expand packet test */ + const int packets[]={0,4345,259,255,0,0,-1}; + const int *headret[]={head1_4b,head2_4b,head3_4b,NULL}; + + fprintf(stderr,"testing page spill expansion... "); + test_pack(packets,headret,0,0,0); + } + + /* page with the 255 segment limit */ + { + + const int packets[]={0,10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,10, + 10,10,10,10,10,10,10,50,-1}; + const int *headret[]={head1_5,head2_5,head3_5,NULL}; + + fprintf(stderr,"testing max packet segments... "); + test_pack(packets,headret,0,0,0); + } + + { + /* packet that overspans over an entire page */ + const int packets[]={0,100,130049,259,255,-1}; + const int *headret[]={head1_6,head2_6,head3_6,head4_6,NULL}; + + fprintf(stderr,"testing very large packets... "); + test_pack(packets,headret,0,0,0); + } + + { + /* test for the libogg 1.1.1 resync in large continuation bug + found by Josh Coalson) */ + const int packets[]={0,100,130049,259,255,-1}; + const int *headret[]={head1_6,head2_6,head3_6,head4_6,NULL}; + + fprintf(stderr,"testing continuation resync in very large packets... "); + test_pack(packets,headret,100,2,3); + } + + { + /* term only page. why not? */ + const int packets[]={0,100,64770,-1}; + const int *headret[]={head1_7,head2_7,head3_7,NULL}; + + fprintf(stderr,"testing zero data page (1 nil packet)... "); + test_pack(packets,headret,0,0,0); + } + + + + { + /* build a bunch of pages for testing */ + unsigned char *data=_ogg_malloc(1024*1024); + int pl[]={0, 1,1,98,4079, 1,1,2954,2057, 76,34,912,0,234,1000,1000, 1000,300,-1}; + int inptr=0,i,j; + ogg_page og[5]; + + ogg_stream_reset(&os_en); + + for(i=0;pl[i]!=-1;i++){ + ogg_packet op; + int len=pl[i]; + + op.packet=data+inptr; + op.bytes=len; + op.e_o_s=(pl[i+1]<0?1:0); + op.granulepos=(i+1)*1000; + + for(j=0;j0)error(); + + /* Test fractional page inputs: incomplete fixed header */ + memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header+3, + 20); + ogg_sync_wrote(&oy,20); + if(ogg_sync_pageout(&oy,&og_de)>0)error(); + + /* Test fractional page inputs: incomplete header */ + memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header+23, + 5); + ogg_sync_wrote(&oy,5); + if(ogg_sync_pageout(&oy,&og_de)>0)error(); + + /* Test fractional page inputs: incomplete body */ + + memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header+28, + og[1].header_len-28); + ogg_sync_wrote(&oy,og[1].header_len-28); + if(ogg_sync_pageout(&oy,&og_de)>0)error(); + + memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body,1000); + ogg_sync_wrote(&oy,1000); + if(ogg_sync_pageout(&oy,&og_de)>0)error(); + + memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body+1000, + og[1].body_len-1000); + ogg_sync_wrote(&oy,og[1].body_len-1000); + if(ogg_sync_pageout(&oy,&og_de)<=0)error(); + + fprintf(stderr,"ok.\n"); + } + + /* Test fractional page inputs: page + incomplete capture */ + { + ogg_page og_de; + fprintf(stderr,"Testing sync on 1+partial inputs... "); + ogg_sync_reset(&oy); + + memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header, + og[1].header_len); + ogg_sync_wrote(&oy,og[1].header_len); + + memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body, + og[1].body_len); + ogg_sync_wrote(&oy,og[1].body_len); + + memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header, + 20); + ogg_sync_wrote(&oy,20); + if(ogg_sync_pageout(&oy,&og_de)<=0)error(); + if(ogg_sync_pageout(&oy,&og_de)>0)error(); + + memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header+20, + og[1].header_len-20); + ogg_sync_wrote(&oy,og[1].header_len-20); + memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body, + og[1].body_len); + ogg_sync_wrote(&oy,og[1].body_len); + if(ogg_sync_pageout(&oy,&og_de)<=0)error(); + + fprintf(stderr,"ok.\n"); + } + + /* Test recapture: garbage + page */ + { + ogg_page og_de; + fprintf(stderr,"Testing search for capture... "); + ogg_sync_reset(&oy); + + /* 'garbage' */ + memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body, + og[1].body_len); + ogg_sync_wrote(&oy,og[1].body_len); + + memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header, + og[1].header_len); + ogg_sync_wrote(&oy,og[1].header_len); + + memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body, + og[1].body_len); + ogg_sync_wrote(&oy,og[1].body_len); + + memcpy(ogg_sync_buffer(&oy,og[2].header_len),og[2].header, + 20); + ogg_sync_wrote(&oy,20); + if(ogg_sync_pageout(&oy,&og_de)>0)error(); + if(ogg_sync_pageout(&oy,&og_de)<=0)error(); + if(ogg_sync_pageout(&oy,&og_de)>0)error(); + + memcpy(ogg_sync_buffer(&oy,og[2].header_len),og[2].header+20, + og[2].header_len-20); + ogg_sync_wrote(&oy,og[2].header_len-20); + memcpy(ogg_sync_buffer(&oy,og[2].body_len),og[2].body, + og[2].body_len); + ogg_sync_wrote(&oy,og[2].body_len); + if(ogg_sync_pageout(&oy,&og_de)<=0)error(); + + fprintf(stderr,"ok.\n"); + } + + /* Test recapture: page + garbage + page */ + { + ogg_page og_de; + fprintf(stderr,"Testing recapture... "); + ogg_sync_reset(&oy); + + memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header, + og[1].header_len); + ogg_sync_wrote(&oy,og[1].header_len); + + memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body, + og[1].body_len); + ogg_sync_wrote(&oy,og[1].body_len); + + memcpy(ogg_sync_buffer(&oy,og[2].header_len),og[2].header, + og[2].header_len); + ogg_sync_wrote(&oy,og[2].header_len); + + memcpy(ogg_sync_buffer(&oy,og[2].header_len),og[2].header, + og[2].header_len); + ogg_sync_wrote(&oy,og[2].header_len); + + if(ogg_sync_pageout(&oy,&og_de)<=0)error(); + + memcpy(ogg_sync_buffer(&oy,og[2].body_len),og[2].body, + og[2].body_len-5); + ogg_sync_wrote(&oy,og[2].body_len-5); + + memcpy(ogg_sync_buffer(&oy,og[3].header_len),og[3].header, + og[3].header_len); + ogg_sync_wrote(&oy,og[3].header_len); + + memcpy(ogg_sync_buffer(&oy,og[3].body_len),og[3].body, + og[3].body_len); + ogg_sync_wrote(&oy,og[3].body_len); + + if(ogg_sync_pageout(&oy,&og_de)>0)error(); + if(ogg_sync_pageout(&oy,&og_de)<=0)error(); + + fprintf(stderr,"ok.\n"); + } + + /* Free page data that was previously copied */ + { + for(i=0;i<5;i++){ + free_page(&og[i]); + } + } + } + + return(0); +} + +#endif + + + + diff --git a/jni/application/pixman-0.30.2/AUTHORS b/other_lib/pixman-0.30.2/AUTHORS similarity index 100% rename from jni/application/pixman-0.30.2/AUTHORS rename to other_lib/pixman-0.30.2/AUTHORS diff --git a/jni/application/pixman-0.30.2/Android.mk b/other_lib/pixman-0.30.2/Android.mk similarity index 97% rename from jni/application/pixman-0.30.2/Android.mk rename to other_lib/pixman-0.30.2/Android.mk index 743f469..4efc658 100644 --- a/jni/application/pixman-0.30.2/Android.mk +++ b/other_lib/pixman-0.30.2/Android.mk @@ -4,7 +4,7 @@ include $(CLEAR_VARS) #LOCAL_SDK_VERSION := 14 -LOCAL_MODULE := libpixman-1 +LOCAL_MODULE := pixman-1_xserver LOCAL_C_INCLUDES := \ $(LOCAL_PATH) \ diff --git a/jni/application/pixman-0.30.2/COPYING b/other_lib/pixman-0.30.2/COPYING similarity index 100% rename from jni/application/pixman-0.30.2/COPYING rename to other_lib/pixman-0.30.2/COPYING diff --git a/jni/application/pixman-0.30.2/ChangeLog b/other_lib/pixman-0.30.2/ChangeLog similarity index 100% rename from jni/application/pixman-0.30.2/ChangeLog rename to other_lib/pixman-0.30.2/ChangeLog diff --git a/jni/application/pixman-0.30.2/INSTALL b/other_lib/pixman-0.30.2/INSTALL similarity index 100% rename from jni/application/pixman-0.30.2/INSTALL rename to other_lib/pixman-0.30.2/INSTALL diff --git a/jni/application/pixman-0.30.2/Makefile.am b/other_lib/pixman-0.30.2/Makefile.am similarity index 100% rename from jni/application/pixman-0.30.2/Makefile.am rename to other_lib/pixman-0.30.2/Makefile.am diff --git a/jni/application/pixman-0.30.2/Makefile.in b/other_lib/pixman-0.30.2/Makefile.in similarity index 100% rename from jni/application/pixman-0.30.2/Makefile.in rename to other_lib/pixman-0.30.2/Makefile.in diff --git a/jni/application/pixman-0.30.2/Makefile.win32 b/other_lib/pixman-0.30.2/Makefile.win32 similarity index 100% rename from jni/application/pixman-0.30.2/Makefile.win32 rename to other_lib/pixman-0.30.2/Makefile.win32 diff --git a/jni/application/pixman-0.30.2/Makefile.win32.common b/other_lib/pixman-0.30.2/Makefile.win32.common similarity index 100% rename from jni/application/pixman-0.30.2/Makefile.win32.common rename to other_lib/pixman-0.30.2/Makefile.win32.common diff --git a/jni/application/pixman-0.30.2/NEWS b/other_lib/pixman-0.30.2/NEWS similarity index 100% rename from jni/application/pixman-0.30.2/NEWS rename to other_lib/pixman-0.30.2/NEWS diff --git a/jni/application/pixman-0.30.2/README b/other_lib/pixman-0.30.2/README similarity index 100% rename from jni/application/pixman-0.30.2/README rename to other_lib/pixman-0.30.2/README diff --git a/jni/application/pixman-0.30.2/aclocal.m4 b/other_lib/pixman-0.30.2/aclocal.m4 similarity index 100% rename from jni/application/pixman-0.30.2/aclocal.m4 rename to other_lib/pixman-0.30.2/aclocal.m4 diff --git a/jni/application/pixman-0.30.2/config.guess b/other_lib/pixman-0.30.2/config.guess similarity index 100% rename from jni/application/pixman-0.30.2/config.guess rename to other_lib/pixman-0.30.2/config.guess diff --git a/jni/application/pixman-0.30.2/config.h b/other_lib/pixman-0.30.2/config.h similarity index 100% rename from jni/application/pixman-0.30.2/config.h rename to other_lib/pixman-0.30.2/config.h diff --git a/jni/application/pixman-0.30.2/config.h.in b/other_lib/pixman-0.30.2/config.h.in similarity index 100% rename from jni/application/pixman-0.30.2/config.h.in rename to other_lib/pixman-0.30.2/config.h.in diff --git a/jni/application/pixman-0.30.2/config.sub b/other_lib/pixman-0.30.2/config.sub similarity index 100% rename from jni/application/pixman-0.30.2/config.sub rename to other_lib/pixman-0.30.2/config.sub diff --git a/jni/application/pixman-0.30.2/configure b/other_lib/pixman-0.30.2/configure similarity index 100% rename from jni/application/pixman-0.30.2/configure rename to other_lib/pixman-0.30.2/configure diff --git a/jni/application/pixman-0.30.2/configure.ac b/other_lib/pixman-0.30.2/configure.ac similarity index 100% rename from jni/application/pixman-0.30.2/configure.ac rename to other_lib/pixman-0.30.2/configure.ac diff --git a/jni/application/pixman-0.30.2/demos/Makefile.am b/other_lib/pixman-0.30.2/demos/Makefile.am similarity index 100% rename from jni/application/pixman-0.30.2/demos/Makefile.am rename to other_lib/pixman-0.30.2/demos/Makefile.am diff --git a/jni/application/pixman-0.30.2/demos/Makefile.in b/other_lib/pixman-0.30.2/demos/Makefile.in similarity index 100% rename from jni/application/pixman-0.30.2/demos/Makefile.in rename to other_lib/pixman-0.30.2/demos/Makefile.in diff --git a/jni/application/pixman-0.30.2/demos/alpha-test.c b/other_lib/pixman-0.30.2/demos/alpha-test.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/alpha-test.c rename to other_lib/pixman-0.30.2/demos/alpha-test.c diff --git a/jni/application/pixman-0.30.2/demos/checkerboard.c b/other_lib/pixman-0.30.2/demos/checkerboard.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/checkerboard.c rename to other_lib/pixman-0.30.2/demos/checkerboard.c diff --git a/jni/application/pixman-0.30.2/demos/clip-in.c b/other_lib/pixman-0.30.2/demos/clip-in.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/clip-in.c rename to other_lib/pixman-0.30.2/demos/clip-in.c diff --git a/jni/application/pixman-0.30.2/demos/clip-test.c b/other_lib/pixman-0.30.2/demos/clip-test.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/clip-test.c rename to other_lib/pixman-0.30.2/demos/clip-test.c diff --git a/jni/application/pixman-0.30.2/demos/composite-test.c b/other_lib/pixman-0.30.2/demos/composite-test.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/composite-test.c rename to other_lib/pixman-0.30.2/demos/composite-test.c diff --git a/jni/application/pixman-0.30.2/demos/conical-test.c b/other_lib/pixman-0.30.2/demos/conical-test.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/conical-test.c rename to other_lib/pixman-0.30.2/demos/conical-test.c diff --git a/jni/application/pixman-0.30.2/demos/convolution-test.c b/other_lib/pixman-0.30.2/demos/convolution-test.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/convolution-test.c rename to other_lib/pixman-0.30.2/demos/convolution-test.c diff --git a/jni/application/pixman-0.30.2/demos/gradient-test.c b/other_lib/pixman-0.30.2/demos/gradient-test.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/gradient-test.c rename to other_lib/pixman-0.30.2/demos/gradient-test.c diff --git a/jni/application/pixman-0.30.2/demos/gtk-utils.c b/other_lib/pixman-0.30.2/demos/gtk-utils.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/gtk-utils.c rename to other_lib/pixman-0.30.2/demos/gtk-utils.c diff --git a/jni/application/pixman-0.30.2/demos/gtk-utils.h b/other_lib/pixman-0.30.2/demos/gtk-utils.h similarity index 100% rename from jni/application/pixman-0.30.2/demos/gtk-utils.h rename to other_lib/pixman-0.30.2/demos/gtk-utils.h diff --git a/jni/application/pixman-0.30.2/demos/linear-gradient.c b/other_lib/pixman-0.30.2/demos/linear-gradient.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/linear-gradient.c rename to other_lib/pixman-0.30.2/demos/linear-gradient.c diff --git a/jni/application/pixman-0.30.2/demos/parrot.c b/other_lib/pixman-0.30.2/demos/parrot.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/parrot.c rename to other_lib/pixman-0.30.2/demos/parrot.c diff --git a/jni/application/pixman-0.30.2/demos/parrot.jpg b/other_lib/pixman-0.30.2/demos/parrot.jpg similarity index 100% rename from jni/application/pixman-0.30.2/demos/parrot.jpg rename to other_lib/pixman-0.30.2/demos/parrot.jpg diff --git a/jni/application/pixman-0.30.2/demos/quad2quad.c b/other_lib/pixman-0.30.2/demos/quad2quad.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/quad2quad.c rename to other_lib/pixman-0.30.2/demos/quad2quad.c diff --git a/jni/application/pixman-0.30.2/demos/radial-test.c b/other_lib/pixman-0.30.2/demos/radial-test.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/radial-test.c rename to other_lib/pixman-0.30.2/demos/radial-test.c diff --git a/jni/application/pixman-0.30.2/demos/scale.c b/other_lib/pixman-0.30.2/demos/scale.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/scale.c rename to other_lib/pixman-0.30.2/demos/scale.c diff --git a/jni/application/pixman-0.30.2/demos/scale.ui b/other_lib/pixman-0.30.2/demos/scale.ui similarity index 100% rename from jni/application/pixman-0.30.2/demos/scale.ui rename to other_lib/pixman-0.30.2/demos/scale.ui diff --git a/jni/application/pixman-0.30.2/demos/screen-test.c b/other_lib/pixman-0.30.2/demos/screen-test.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/screen-test.c rename to other_lib/pixman-0.30.2/demos/screen-test.c diff --git a/jni/application/pixman-0.30.2/demos/srgb-test.c b/other_lib/pixman-0.30.2/demos/srgb-test.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/srgb-test.c rename to other_lib/pixman-0.30.2/demos/srgb-test.c diff --git a/jni/application/pixman-0.30.2/demos/srgb-trap-test.c b/other_lib/pixman-0.30.2/demos/srgb-trap-test.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/srgb-trap-test.c rename to other_lib/pixman-0.30.2/demos/srgb-trap-test.c diff --git a/jni/application/pixman-0.30.2/demos/trap-test.c b/other_lib/pixman-0.30.2/demos/trap-test.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/trap-test.c rename to other_lib/pixman-0.30.2/demos/trap-test.c diff --git a/jni/application/pixman-0.30.2/demos/tri-test.c b/other_lib/pixman-0.30.2/demos/tri-test.c similarity index 100% rename from jni/application/pixman-0.30.2/demos/tri-test.c rename to other_lib/pixman-0.30.2/demos/tri-test.c diff --git a/jni/application/pixman-0.30.2/depcomp b/other_lib/pixman-0.30.2/depcomp similarity index 100% rename from jni/application/pixman-0.30.2/depcomp rename to other_lib/pixman-0.30.2/depcomp diff --git a/jni/application/pixman-0.30.2/install-sh b/other_lib/pixman-0.30.2/install-sh similarity index 100% rename from jni/application/pixman-0.30.2/install-sh rename to other_lib/pixman-0.30.2/install-sh diff --git a/jni/application/pixman-0.30.2/ltmain.sh b/other_lib/pixman-0.30.2/ltmain.sh similarity index 100% rename from jni/application/pixman-0.30.2/ltmain.sh rename to other_lib/pixman-0.30.2/ltmain.sh diff --git a/jni/application/pixman-0.30.2/missing b/other_lib/pixman-0.30.2/missing similarity index 100% rename from jni/application/pixman-0.30.2/missing rename to other_lib/pixman-0.30.2/missing diff --git a/jni/application/pixman-0.30.2/pixman-1-uninstalled.pc.in b/other_lib/pixman-0.30.2/pixman-1-uninstalled.pc.in similarity index 100% rename from jni/application/pixman-0.30.2/pixman-1-uninstalled.pc.in rename to other_lib/pixman-0.30.2/pixman-1-uninstalled.pc.in diff --git a/jni/application/pixman-0.30.2/pixman-1.pc.in b/other_lib/pixman-0.30.2/pixman-1.pc.in similarity index 100% rename from jni/application/pixman-0.30.2/pixman-1.pc.in rename to other_lib/pixman-0.30.2/pixman-1.pc.in diff --git a/jni/application/pixman-0.30.2/pixman/Android.mk b/other_lib/pixman-0.30.2/pixman/Android.mk similarity index 100% rename from jni/application/pixman-0.30.2/pixman/Android.mk rename to other_lib/pixman-0.30.2/pixman/Android.mk diff --git a/jni/application/pixman-0.30.2/pixman/Makefile.am b/other_lib/pixman-0.30.2/pixman/Makefile.am similarity index 100% rename from jni/application/pixman-0.30.2/pixman/Makefile.am rename to other_lib/pixman-0.30.2/pixman/Makefile.am diff --git a/jni/application/pixman-0.30.2/pixman/Makefile.in b/other_lib/pixman-0.30.2/pixman/Makefile.in similarity index 100% rename from jni/application/pixman-0.30.2/pixman/Makefile.in rename to other_lib/pixman-0.30.2/pixman/Makefile.in diff --git a/jni/application/pixman-0.30.2/pixman/Makefile.sources b/other_lib/pixman-0.30.2/pixman/Makefile.sources similarity index 100% rename from jni/application/pixman-0.30.2/pixman/Makefile.sources rename to other_lib/pixman-0.30.2/pixman/Makefile.sources diff --git a/jni/application/pixman-0.30.2/pixman/Makefile.win32 b/other_lib/pixman-0.30.2/pixman/Makefile.win32 similarity index 100% rename from jni/application/pixman-0.30.2/pixman/Makefile.win32 rename to other_lib/pixman-0.30.2/pixman/Makefile.win32 diff --git a/jni/application/pixman-0.30.2/pixman/config.h b/other_lib/pixman-0.30.2/pixman/config.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/config.h rename to other_lib/pixman-0.30.2/pixman/config.h diff --git a/jni/application/pixman-0.30.2/pixman/loongson-mmintrin.h b/other_lib/pixman-0.30.2/pixman/loongson-mmintrin.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/loongson-mmintrin.h rename to other_lib/pixman-0.30.2/pixman/loongson-mmintrin.h diff --git a/jni/application/pixman-0.30.2/pixman/pixman-access-accessors.c b/other_lib/pixman-0.30.2/pixman/pixman-access-accessors.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-access-accessors.c rename to other_lib/pixman-0.30.2/pixman/pixman-access-accessors.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-access.c b/other_lib/pixman-0.30.2/pixman/pixman-access.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-access.c rename to other_lib/pixman-0.30.2/pixman/pixman-access.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-accessor.h b/other_lib/pixman-0.30.2/pixman/pixman-accessor.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-accessor.h rename to other_lib/pixman-0.30.2/pixman/pixman-accessor.h diff --git a/jni/application/pixman-0.30.2/pixman/pixman-arm-common.h b/other_lib/pixman-0.30.2/pixman/pixman-arm-common.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-arm-common.h rename to other_lib/pixman-0.30.2/pixman/pixman-arm-common.h diff --git a/jni/application/pixman-0.30.2/pixman/pixman-arm-neon-asm-bilinear.S b/other_lib/pixman-0.30.2/pixman/pixman-arm-neon-asm-bilinear.S similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-arm-neon-asm-bilinear.S rename to other_lib/pixman-0.30.2/pixman/pixman-arm-neon-asm-bilinear.S diff --git a/jni/application/pixman-0.30.2/pixman/pixman-arm-neon-asm.S b/other_lib/pixman-0.30.2/pixman/pixman-arm-neon-asm.S similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-arm-neon-asm.S rename to other_lib/pixman-0.30.2/pixman/pixman-arm-neon-asm.S diff --git a/jni/application/pixman-0.30.2/pixman/pixman-arm-neon-asm.h b/other_lib/pixman-0.30.2/pixman/pixman-arm-neon-asm.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-arm-neon-asm.h rename to other_lib/pixman-0.30.2/pixman/pixman-arm-neon-asm.h diff --git a/jni/application/pixman-0.30.2/pixman/pixman-arm-neon.c b/other_lib/pixman-0.30.2/pixman/pixman-arm-neon.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-arm-neon.c rename to other_lib/pixman-0.30.2/pixman/pixman-arm-neon.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-arm-simd-asm-scaled.S b/other_lib/pixman-0.30.2/pixman/pixman-arm-simd-asm-scaled.S similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-arm-simd-asm-scaled.S rename to other_lib/pixman-0.30.2/pixman/pixman-arm-simd-asm-scaled.S diff --git a/jni/application/pixman-0.30.2/pixman/pixman-arm-simd-asm.S b/other_lib/pixman-0.30.2/pixman/pixman-arm-simd-asm.S similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-arm-simd-asm.S rename to other_lib/pixman-0.30.2/pixman/pixman-arm-simd-asm.S diff --git a/jni/application/pixman-0.30.2/pixman/pixman-arm-simd-asm.h b/other_lib/pixman-0.30.2/pixman/pixman-arm-simd-asm.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-arm-simd-asm.h rename to other_lib/pixman-0.30.2/pixman/pixman-arm-simd-asm.h diff --git a/jni/application/pixman-0.30.2/pixman/pixman-arm-simd.c b/other_lib/pixman-0.30.2/pixman/pixman-arm-simd.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-arm-simd.c rename to other_lib/pixman-0.30.2/pixman/pixman-arm-simd.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-arm.c b/other_lib/pixman-0.30.2/pixman/pixman-arm.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-arm.c rename to other_lib/pixman-0.30.2/pixman/pixman-arm.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-bits-image.c b/other_lib/pixman-0.30.2/pixman/pixman-bits-image.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-bits-image.c rename to other_lib/pixman-0.30.2/pixman/pixman-bits-image.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-combine-float.c b/other_lib/pixman-0.30.2/pixman/pixman-combine-float.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-combine-float.c rename to other_lib/pixman-0.30.2/pixman/pixman-combine-float.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-combine32.c b/other_lib/pixman-0.30.2/pixman/pixman-combine32.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-combine32.c rename to other_lib/pixman-0.30.2/pixman/pixman-combine32.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-combine32.h b/other_lib/pixman-0.30.2/pixman/pixman-combine32.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-combine32.h rename to other_lib/pixman-0.30.2/pixman/pixman-combine32.h diff --git a/jni/application/pixman-0.30.2/pixman/pixman-compiler.h b/other_lib/pixman-0.30.2/pixman/pixman-compiler.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-compiler.h rename to other_lib/pixman-0.30.2/pixman/pixman-compiler.h diff --git a/jni/application/pixman-0.30.2/pixman/pixman-conical-gradient.c b/other_lib/pixman-0.30.2/pixman/pixman-conical-gradient.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-conical-gradient.c rename to other_lib/pixman-0.30.2/pixman/pixman-conical-gradient.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-edge-accessors.c b/other_lib/pixman-0.30.2/pixman/pixman-edge-accessors.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-edge-accessors.c rename to other_lib/pixman-0.30.2/pixman/pixman-edge-accessors.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-edge-imp.h b/other_lib/pixman-0.30.2/pixman/pixman-edge-imp.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-edge-imp.h rename to other_lib/pixman-0.30.2/pixman/pixman-edge-imp.h diff --git a/jni/application/pixman-0.30.2/pixman/pixman-edge.c b/other_lib/pixman-0.30.2/pixman/pixman-edge.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-edge.c rename to other_lib/pixman-0.30.2/pixman/pixman-edge.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-fast-path.c b/other_lib/pixman-0.30.2/pixman/pixman-fast-path.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-fast-path.c rename to other_lib/pixman-0.30.2/pixman/pixman-fast-path.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-filter.c b/other_lib/pixman-0.30.2/pixman/pixman-filter.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-filter.c rename to other_lib/pixman-0.30.2/pixman/pixman-filter.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-general.c b/other_lib/pixman-0.30.2/pixman/pixman-general.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-general.c rename to other_lib/pixman-0.30.2/pixman/pixman-general.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-glyph.c b/other_lib/pixman-0.30.2/pixman/pixman-glyph.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-glyph.c rename to other_lib/pixman-0.30.2/pixman/pixman-glyph.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-gradient-walker.c b/other_lib/pixman-0.30.2/pixman/pixman-gradient-walker.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-gradient-walker.c rename to other_lib/pixman-0.30.2/pixman/pixman-gradient-walker.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-image.c b/other_lib/pixman-0.30.2/pixman/pixman-image.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-image.c rename to other_lib/pixman-0.30.2/pixman/pixman-image.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-implementation.c b/other_lib/pixman-0.30.2/pixman/pixman-implementation.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-implementation.c rename to other_lib/pixman-0.30.2/pixman/pixman-implementation.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-inlines.h b/other_lib/pixman-0.30.2/pixman/pixman-inlines.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-inlines.h rename to other_lib/pixman-0.30.2/pixman/pixman-inlines.h diff --git a/jni/application/pixman-0.30.2/pixman/pixman-linear-gradient.c b/other_lib/pixman-0.30.2/pixman/pixman-linear-gradient.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-linear-gradient.c rename to other_lib/pixman-0.30.2/pixman/pixman-linear-gradient.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-matrix.c b/other_lib/pixman-0.30.2/pixman/pixman-matrix.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-matrix.c rename to other_lib/pixman-0.30.2/pixman/pixman-matrix.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-mips-dspr2-asm.S b/other_lib/pixman-0.30.2/pixman/pixman-mips-dspr2-asm.S similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-mips-dspr2-asm.S rename to other_lib/pixman-0.30.2/pixman/pixman-mips-dspr2-asm.S diff --git a/jni/application/pixman-0.30.2/pixman/pixman-mips-dspr2-asm.h b/other_lib/pixman-0.30.2/pixman/pixman-mips-dspr2-asm.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-mips-dspr2-asm.h rename to other_lib/pixman-0.30.2/pixman/pixman-mips-dspr2-asm.h diff --git a/jni/application/pixman-0.30.2/pixman/pixman-mips-dspr2.c b/other_lib/pixman-0.30.2/pixman/pixman-mips-dspr2.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-mips-dspr2.c rename to other_lib/pixman-0.30.2/pixman/pixman-mips-dspr2.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-mips-dspr2.h b/other_lib/pixman-0.30.2/pixman/pixman-mips-dspr2.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-mips-dspr2.h rename to other_lib/pixman-0.30.2/pixman/pixman-mips-dspr2.h diff --git a/jni/application/pixman-0.30.2/pixman/pixman-mips-memcpy-asm.S b/other_lib/pixman-0.30.2/pixman/pixman-mips-memcpy-asm.S similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-mips-memcpy-asm.S rename to other_lib/pixman-0.30.2/pixman/pixman-mips-memcpy-asm.S diff --git a/jni/application/pixman-0.30.2/pixman/pixman-mips.c b/other_lib/pixman-0.30.2/pixman/pixman-mips.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-mips.c rename to other_lib/pixman-0.30.2/pixman/pixman-mips.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-mmx.c b/other_lib/pixman-0.30.2/pixman/pixman-mmx.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-mmx.c rename to other_lib/pixman-0.30.2/pixman/pixman-mmx.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-noop.c b/other_lib/pixman-0.30.2/pixman/pixman-noop.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-noop.c rename to other_lib/pixman-0.30.2/pixman/pixman-noop.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-ppc.c b/other_lib/pixman-0.30.2/pixman/pixman-ppc.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-ppc.c rename to other_lib/pixman-0.30.2/pixman/pixman-ppc.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-private.h b/other_lib/pixman-0.30.2/pixman/pixman-private.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-private.h rename to other_lib/pixman-0.30.2/pixman/pixman-private.h diff --git a/jni/application/pixman-0.30.2/pixman/pixman-radial-gradient.c b/other_lib/pixman-0.30.2/pixman/pixman-radial-gradient.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-radial-gradient.c rename to other_lib/pixman-0.30.2/pixman/pixman-radial-gradient.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-region.c b/other_lib/pixman-0.30.2/pixman/pixman-region.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-region.c rename to other_lib/pixman-0.30.2/pixman/pixman-region.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-region16.c b/other_lib/pixman-0.30.2/pixman/pixman-region16.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-region16.c rename to other_lib/pixman-0.30.2/pixman/pixman-region16.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-region32.c b/other_lib/pixman-0.30.2/pixman/pixman-region32.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-region32.c rename to other_lib/pixman-0.30.2/pixman/pixman-region32.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-solid-fill.c b/other_lib/pixman-0.30.2/pixman/pixman-solid-fill.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-solid-fill.c rename to other_lib/pixman-0.30.2/pixman/pixman-solid-fill.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-sse2.c b/other_lib/pixman-0.30.2/pixman/pixman-sse2.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-sse2.c rename to other_lib/pixman-0.30.2/pixman/pixman-sse2.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-timer.c b/other_lib/pixman-0.30.2/pixman/pixman-timer.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-timer.c rename to other_lib/pixman-0.30.2/pixman/pixman-timer.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-trap.c b/other_lib/pixman-0.30.2/pixman/pixman-trap.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-trap.c rename to other_lib/pixman-0.30.2/pixman/pixman-trap.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-utils.c b/other_lib/pixman-0.30.2/pixman/pixman-utils.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-utils.c rename to other_lib/pixman-0.30.2/pixman/pixman-utils.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-version.h b/other_lib/pixman-0.30.2/pixman/pixman-version.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-version.h rename to other_lib/pixman-0.30.2/pixman/pixman-version.h diff --git a/jni/application/pixman-0.30.2/pixman/pixman-version.h.in b/other_lib/pixman-0.30.2/pixman/pixman-version.h.in similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-version.h.in rename to other_lib/pixman-0.30.2/pixman/pixman-version.h.in diff --git a/jni/application/pixman-0.30.2/pixman/pixman-vmx.c b/other_lib/pixman-0.30.2/pixman/pixman-vmx.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-vmx.c rename to other_lib/pixman-0.30.2/pixman/pixman-vmx.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman-x86.c b/other_lib/pixman-0.30.2/pixman/pixman-x86.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman-x86.c rename to other_lib/pixman-0.30.2/pixman/pixman-x86.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman.c b/other_lib/pixman-0.30.2/pixman/pixman.c similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman.c rename to other_lib/pixman-0.30.2/pixman/pixman.c diff --git a/jni/application/pixman-0.30.2/pixman/pixman.h b/other_lib/pixman-0.30.2/pixman/pixman.h similarity index 100% rename from jni/application/pixman-0.30.2/pixman/pixman.h rename to other_lib/pixman-0.30.2/pixman/pixman.h diff --git a/jni/application/pixman-0.30.2/pixman/solaris-hwcap.mapfile b/other_lib/pixman-0.30.2/pixman/solaris-hwcap.mapfile similarity index 100% rename from jni/application/pixman-0.30.2/pixman/solaris-hwcap.mapfile rename to other_lib/pixman-0.30.2/pixman/solaris-hwcap.mapfile diff --git a/jni/application/pixman-0.30.2/test/Makefile.am b/other_lib/pixman-0.30.2/test/Makefile.am similarity index 100% rename from jni/application/pixman-0.30.2/test/Makefile.am rename to other_lib/pixman-0.30.2/test/Makefile.am diff --git a/jni/application/pixman-0.30.2/test/Makefile.in b/other_lib/pixman-0.30.2/test/Makefile.in similarity index 100% rename from jni/application/pixman-0.30.2/test/Makefile.in rename to other_lib/pixman-0.30.2/test/Makefile.in diff --git a/jni/application/pixman-0.30.2/test/Makefile.sources b/other_lib/pixman-0.30.2/test/Makefile.sources similarity index 100% rename from jni/application/pixman-0.30.2/test/Makefile.sources rename to other_lib/pixman-0.30.2/test/Makefile.sources diff --git a/jni/application/pixman-0.30.2/test/a1-trap-test.c b/other_lib/pixman-0.30.2/test/a1-trap-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/a1-trap-test.c rename to other_lib/pixman-0.30.2/test/a1-trap-test.c diff --git a/jni/application/pixman-0.30.2/test/affine-test.c b/other_lib/pixman-0.30.2/test/affine-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/affine-test.c rename to other_lib/pixman-0.30.2/test/affine-test.c diff --git a/jni/application/pixman-0.30.2/test/alpha-loop.c b/other_lib/pixman-0.30.2/test/alpha-loop.c similarity index 100% rename from jni/application/pixman-0.30.2/test/alpha-loop.c rename to other_lib/pixman-0.30.2/test/alpha-loop.c diff --git a/jni/application/pixman-0.30.2/test/alphamap.c b/other_lib/pixman-0.30.2/test/alphamap.c similarity index 100% rename from jni/application/pixman-0.30.2/test/alphamap.c rename to other_lib/pixman-0.30.2/test/alphamap.c diff --git a/jni/application/pixman-0.30.2/test/blitters-test.c b/other_lib/pixman-0.30.2/test/blitters-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/blitters-test.c rename to other_lib/pixman-0.30.2/test/blitters-test.c diff --git a/jni/application/pixman-0.30.2/test/check-formats.c b/other_lib/pixman-0.30.2/test/check-formats.c similarity index 100% rename from jni/application/pixman-0.30.2/test/check-formats.c rename to other_lib/pixman-0.30.2/test/check-formats.c diff --git a/jni/application/pixman-0.30.2/test/combiner-test.c b/other_lib/pixman-0.30.2/test/combiner-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/combiner-test.c rename to other_lib/pixman-0.30.2/test/combiner-test.c diff --git a/jni/application/pixman-0.30.2/test/composite-traps-test.c b/other_lib/pixman-0.30.2/test/composite-traps-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/composite-traps-test.c rename to other_lib/pixman-0.30.2/test/composite-traps-test.c diff --git a/jni/application/pixman-0.30.2/test/composite.c b/other_lib/pixman-0.30.2/test/composite.c similarity index 100% rename from jni/application/pixman-0.30.2/test/composite.c rename to other_lib/pixman-0.30.2/test/composite.c diff --git a/jni/application/pixman-0.30.2/test/fetch-test.c b/other_lib/pixman-0.30.2/test/fetch-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/fetch-test.c rename to other_lib/pixman-0.30.2/test/fetch-test.c diff --git a/jni/application/pixman-0.30.2/test/glyph-test.c b/other_lib/pixman-0.30.2/test/glyph-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/glyph-test.c rename to other_lib/pixman-0.30.2/test/glyph-test.c diff --git a/jni/application/pixman-0.30.2/test/gradient-crash-test.c b/other_lib/pixman-0.30.2/test/gradient-crash-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/gradient-crash-test.c rename to other_lib/pixman-0.30.2/test/gradient-crash-test.c diff --git a/jni/application/pixman-0.30.2/test/infinite-loop.c b/other_lib/pixman-0.30.2/test/infinite-loop.c similarity index 100% rename from jni/application/pixman-0.30.2/test/infinite-loop.c rename to other_lib/pixman-0.30.2/test/infinite-loop.c diff --git a/jni/application/pixman-0.30.2/test/lowlevel-blt-bench.c b/other_lib/pixman-0.30.2/test/lowlevel-blt-bench.c similarity index 100% rename from jni/application/pixman-0.30.2/test/lowlevel-blt-bench.c rename to other_lib/pixman-0.30.2/test/lowlevel-blt-bench.c diff --git a/jni/application/pixman-0.30.2/test/matrix-test.c b/other_lib/pixman-0.30.2/test/matrix-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/matrix-test.c rename to other_lib/pixman-0.30.2/test/matrix-test.c diff --git a/jni/application/pixman-0.30.2/test/oob-test.c b/other_lib/pixman-0.30.2/test/oob-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/oob-test.c rename to other_lib/pixman-0.30.2/test/oob-test.c diff --git a/jni/application/pixman-0.30.2/test/pdf-op-test.c b/other_lib/pixman-0.30.2/test/pdf-op-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/pdf-op-test.c rename to other_lib/pixman-0.30.2/test/pdf-op-test.c diff --git a/jni/application/pixman-0.30.2/test/pixel-test.c b/other_lib/pixman-0.30.2/test/pixel-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/pixel-test.c rename to other_lib/pixman-0.30.2/test/pixel-test.c diff --git a/jni/application/pixman-0.30.2/test/prng-test.c b/other_lib/pixman-0.30.2/test/prng-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/prng-test.c rename to other_lib/pixman-0.30.2/test/prng-test.c diff --git a/jni/application/pixman-0.30.2/test/radial-perf-test.c b/other_lib/pixman-0.30.2/test/radial-perf-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/radial-perf-test.c rename to other_lib/pixman-0.30.2/test/radial-perf-test.c diff --git a/jni/application/pixman-0.30.2/test/region-contains-test.c b/other_lib/pixman-0.30.2/test/region-contains-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/region-contains-test.c rename to other_lib/pixman-0.30.2/test/region-contains-test.c diff --git a/jni/application/pixman-0.30.2/test/region-test.c b/other_lib/pixman-0.30.2/test/region-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/region-test.c rename to other_lib/pixman-0.30.2/test/region-test.c diff --git a/jni/application/pixman-0.30.2/test/region-translate-test.c b/other_lib/pixman-0.30.2/test/region-translate-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/region-translate-test.c rename to other_lib/pixman-0.30.2/test/region-translate-test.c diff --git a/jni/application/pixman-0.30.2/test/rotate-test.c b/other_lib/pixman-0.30.2/test/rotate-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/rotate-test.c rename to other_lib/pixman-0.30.2/test/rotate-test.c diff --git a/jni/application/pixman-0.30.2/test/scaling-crash-test.c b/other_lib/pixman-0.30.2/test/scaling-crash-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/scaling-crash-test.c rename to other_lib/pixman-0.30.2/test/scaling-crash-test.c diff --git a/jni/application/pixman-0.30.2/test/scaling-helpers-test.c b/other_lib/pixman-0.30.2/test/scaling-helpers-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/scaling-helpers-test.c rename to other_lib/pixman-0.30.2/test/scaling-helpers-test.c diff --git a/jni/application/pixman-0.30.2/test/scaling-test.c b/other_lib/pixman-0.30.2/test/scaling-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/scaling-test.c rename to other_lib/pixman-0.30.2/test/scaling-test.c diff --git a/jni/application/pixman-0.30.2/test/stress-test.c b/other_lib/pixman-0.30.2/test/stress-test.c similarity index 100% rename from jni/application/pixman-0.30.2/test/stress-test.c rename to other_lib/pixman-0.30.2/test/stress-test.c diff --git a/jni/application/pixman-0.30.2/test/trap-crasher.c b/other_lib/pixman-0.30.2/test/trap-crasher.c similarity index 100% rename from jni/application/pixman-0.30.2/test/trap-crasher.c rename to other_lib/pixman-0.30.2/test/trap-crasher.c diff --git a/jni/application/pixman-0.30.2/test/utils-prng.c b/other_lib/pixman-0.30.2/test/utils-prng.c similarity index 100% rename from jni/application/pixman-0.30.2/test/utils-prng.c rename to other_lib/pixman-0.30.2/test/utils-prng.c diff --git a/jni/application/pixman-0.30.2/test/utils-prng.h b/other_lib/pixman-0.30.2/test/utils-prng.h similarity index 100% rename from jni/application/pixman-0.30.2/test/utils-prng.h rename to other_lib/pixman-0.30.2/test/utils-prng.h diff --git a/jni/application/pixman-0.30.2/test/utils.c b/other_lib/pixman-0.30.2/test/utils.c similarity index 100% rename from jni/application/pixman-0.30.2/test/utils.c rename to other_lib/pixman-0.30.2/test/utils.c diff --git a/jni/application/pixman-0.30.2/test/utils.h b/other_lib/pixman-0.30.2/test/utils.h similarity index 100% rename from jni/application/pixman-0.30.2/test/utils.h rename to other_lib/pixman-0.30.2/test/utils.h diff --git a/jni/png/ANNOUNCE b/other_lib/png/ANNOUNCE similarity index 100% rename from jni/png/ANNOUNCE rename to other_lib/png/ANNOUNCE diff --git a/jni/png/Android.mk b/other_lib/png/Android.mk similarity index 94% rename from jni/png/Android.mk rename to other_lib/png/Android.mk index 9580ce0..177968e 100644 --- a/jni/png/Android.mk +++ b/other_lib/png/Android.mk @@ -25,6 +25,6 @@ LOCAL_CFLAGS := -std=gnu89 -fvisibility=hidden ## -fomit-frame-pointer -ftrapv LOCAL_C_INCLUDES := $(LOCAL_PATH)/include # LOCAL_LDLIBS := z -LOCAL_MODULE := png +LOCAL_MODULE := png_xserver include $(BUILD_STATIC_LIBRARY) diff --git a/jni/png/CHANGES b/other_lib/png/CHANGES similarity index 100% rename from jni/png/CHANGES rename to other_lib/png/CHANGES diff --git a/jni/png/INSTALL b/other_lib/png/INSTALL similarity index 100% rename from jni/png/INSTALL rename to other_lib/png/INSTALL diff --git a/jni/png/LICENSE b/other_lib/png/LICENSE similarity index 100% rename from jni/png/LICENSE rename to other_lib/png/LICENSE diff --git a/jni/png/README b/other_lib/png/README similarity index 100% rename from jni/png/README rename to other_lib/png/README diff --git a/jni/png/TODO b/other_lib/png/TODO similarity index 100% rename from jni/png/TODO rename to other_lib/png/TODO diff --git a/jni/png/include/png.h b/other_lib/png/include/png.h similarity index 100% rename from jni/png/include/png.h rename to other_lib/png/include/png.h diff --git a/jni/png/include/pngconf.h b/other_lib/png/include/pngconf.h similarity index 100% rename from jni/png/include/pngconf.h rename to other_lib/png/include/pngconf.h diff --git a/jni/png/png.c b/other_lib/png/png.c similarity index 100% rename from jni/png/png.c rename to other_lib/png/png.c diff --git a/jni/png/pngerror.c b/other_lib/png/pngerror.c similarity index 100% rename from jni/png/pngerror.c rename to other_lib/png/pngerror.c diff --git a/jni/png/pnggccrd.c b/other_lib/png/pnggccrd.c similarity index 100% rename from jni/png/pnggccrd.c rename to other_lib/png/pnggccrd.c diff --git a/jni/png/pngget.c b/other_lib/png/pngget.c similarity index 100% rename from jni/png/pngget.c rename to other_lib/png/pngget.c diff --git a/jni/png/pngmem.c b/other_lib/png/pngmem.c similarity index 100% rename from jni/png/pngmem.c rename to other_lib/png/pngmem.c diff --git a/jni/png/pngpread.c b/other_lib/png/pngpread.c similarity index 100% rename from jni/png/pngpread.c rename to other_lib/png/pngpread.c diff --git a/jni/png/pngread.c b/other_lib/png/pngread.c similarity index 100% rename from jni/png/pngread.c rename to other_lib/png/pngread.c diff --git a/jni/png/pngrio.c b/other_lib/png/pngrio.c similarity index 100% rename from jni/png/pngrio.c rename to other_lib/png/pngrio.c diff --git a/jni/png/pngrtran.c b/other_lib/png/pngrtran.c similarity index 100% rename from jni/png/pngrtran.c rename to other_lib/png/pngrtran.c diff --git a/jni/png/pngrutil.c b/other_lib/png/pngrutil.c similarity index 100% rename from jni/png/pngrutil.c rename to other_lib/png/pngrutil.c diff --git a/jni/png/pngset.c b/other_lib/png/pngset.c similarity index 100% rename from jni/png/pngset.c rename to other_lib/png/pngset.c diff --git a/jni/png/pngtest.c b/other_lib/png/pngtest.c similarity index 100% rename from jni/png/pngtest.c rename to other_lib/png/pngtest.c diff --git a/jni/png/pngtrans.c b/other_lib/png/pngtrans.c similarity index 100% rename from jni/png/pngtrans.c rename to other_lib/png/pngtrans.c diff --git a/jni/png/pngvcrd.c b/other_lib/png/pngvcrd.c similarity index 100% rename from jni/png/pngvcrd.c rename to other_lib/png/pngvcrd.c diff --git a/jni/png/pngwio.c b/other_lib/png/pngwio.c similarity index 100% rename from jni/png/pngwio.c rename to other_lib/png/pngwio.c diff --git a/jni/png/pngwrite.c b/other_lib/png/pngwrite.c similarity index 100% rename from jni/png/pngwrite.c rename to other_lib/png/pngwrite.c diff --git a/jni/png/pngwtran.c b/other_lib/png/pngwtran.c similarity index 100% rename from jni/png/pngwtran.c rename to other_lib/png/pngwtran.c diff --git a/jni/png/pngwutil.c b/other_lib/png/pngwutil.c similarity index 100% rename from jni/png/pngwutil.c rename to other_lib/png/pngwutil.c diff --git a/jni/vorbis/AUTHORS b/other_lib/vorbis/AUTHORS similarity index 100% rename from jni/vorbis/AUTHORS rename to other_lib/vorbis/AUTHORS diff --git a/jni/vorbis/Android.mk b/other_lib/vorbis/Android.mk similarity index 85% rename from jni/vorbis/Android.mk rename to other_lib/vorbis/Android.mk index 0900dfc..cf5dd85 100644 --- a/jni/vorbis/Android.mk +++ b/other_lib/vorbis/Android.mk @@ -2,7 +2,7 @@ LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) -LOCAL_MODULE := vorbis +LOCAL_MODULE := vorbis_xserver LOCAL_C_INCLUDES := $(LOCAL_PATH)/include $(LOCAL_PATH)/src $(LOCAL_PATH) $(LOCAL_PATH)/../ogg/include LOCAL_CFLAGS := -O3 -DHAVE_CONFIG_H @@ -11,7 +11,7 @@ LOCAL_CPP_EXTENSION := .cpp LOCAL_SRC_FILES := $(addprefix src/, $(notdir $(wildcard $(LOCAL_PATH)/src/*.c) $(wildcard $(LOCAL_PATH)/src/*.cpp))) -LOCAL_STATIC_LIBRARIES := +LOCAL_STATIC_LIBRARIES := ogg_xserver LOCAL_SHARED_LIBRARIES := diff --git a/jni/vorbis/CHANGES b/other_lib/vorbis/CHANGES similarity index 100% rename from jni/vorbis/CHANGES rename to other_lib/vorbis/CHANGES diff --git a/jni/vorbis/COPYING b/other_lib/vorbis/COPYING similarity index 100% rename from jni/vorbis/COPYING rename to other_lib/vorbis/COPYING diff --git a/jni/vorbis/README b/other_lib/vorbis/README similarity index 100% rename from jni/vorbis/README rename to other_lib/vorbis/README diff --git a/jni/vorbis/config.h b/other_lib/vorbis/config.h similarity index 100% rename from jni/vorbis/config.h rename to other_lib/vorbis/config.h diff --git a/jni/vorbis/include/vorbis/codec.h b/other_lib/vorbis/include/vorbis/codec.h similarity index 100% rename from jni/vorbis/include/vorbis/codec.h rename to other_lib/vorbis/include/vorbis/codec.h diff --git a/jni/vorbis/include/vorbis/vorbisenc.h b/other_lib/vorbis/include/vorbis/vorbisenc.h similarity index 100% rename from jni/vorbis/include/vorbis/vorbisenc.h rename to other_lib/vorbis/include/vorbis/vorbisenc.h diff --git a/jni/vorbis/include/vorbis/vorbisfile.h b/other_lib/vorbis/include/vorbis/vorbisfile.h similarity index 100% rename from jni/vorbis/include/vorbis/vorbisfile.h rename to other_lib/vorbis/include/vorbis/vorbisfile.h diff --git a/jni/vorbis/src/analysis.c b/other_lib/vorbis/src/analysis.c similarity index 100% rename from jni/vorbis/src/analysis.c rename to other_lib/vorbis/src/analysis.c diff --git a/jni/vorbis/src/backends.h b/other_lib/vorbis/src/backends.h similarity index 100% rename from jni/vorbis/src/backends.h rename to other_lib/vorbis/src/backends.h diff --git a/jni/vorbis/src/bitrate.c b/other_lib/vorbis/src/bitrate.c similarity index 100% rename from jni/vorbis/src/bitrate.c rename to other_lib/vorbis/src/bitrate.c diff --git a/jni/vorbis/src/bitrate.h b/other_lib/vorbis/src/bitrate.h similarity index 100% rename from jni/vorbis/src/bitrate.h rename to other_lib/vorbis/src/bitrate.h diff --git a/jni/vorbis/src/block.c b/other_lib/vorbis/src/block.c similarity index 100% rename from jni/vorbis/src/block.c rename to other_lib/vorbis/src/block.c diff --git a/jni/vorbis/src/books/coupled/res_books_51.h b/other_lib/vorbis/src/books/coupled/res_books_51.h similarity index 100% rename from jni/vorbis/src/books/coupled/res_books_51.h rename to other_lib/vorbis/src/books/coupled/res_books_51.h diff --git a/jni/vorbis/src/books/coupled/res_books_stereo.h b/other_lib/vorbis/src/books/coupled/res_books_stereo.h similarity index 100% rename from jni/vorbis/src/books/coupled/res_books_stereo.h rename to other_lib/vorbis/src/books/coupled/res_books_stereo.h diff --git a/jni/vorbis/src/books/floor/floor_books.h b/other_lib/vorbis/src/books/floor/floor_books.h similarity index 100% rename from jni/vorbis/src/books/floor/floor_books.h rename to other_lib/vorbis/src/books/floor/floor_books.h diff --git a/jni/vorbis/src/books/uncoupled/res_books_uncoupled.h b/other_lib/vorbis/src/books/uncoupled/res_books_uncoupled.h similarity index 100% rename from jni/vorbis/src/books/uncoupled/res_books_uncoupled.h rename to other_lib/vorbis/src/books/uncoupled/res_books_uncoupled.h diff --git a/jni/vorbis/src/codebook.c b/other_lib/vorbis/src/codebook.c similarity index 100% rename from jni/vorbis/src/codebook.c rename to other_lib/vorbis/src/codebook.c diff --git a/jni/vorbis/src/codebook.h b/other_lib/vorbis/src/codebook.h similarity index 100% rename from jni/vorbis/src/codebook.h rename to other_lib/vorbis/src/codebook.h diff --git a/jni/vorbis/src/codec_internal.h b/other_lib/vorbis/src/codec_internal.h similarity index 100% rename from jni/vorbis/src/codec_internal.h rename to other_lib/vorbis/src/codec_internal.h diff --git a/jni/vorbis/src/envelope.c b/other_lib/vorbis/src/envelope.c similarity index 100% rename from jni/vorbis/src/envelope.c rename to other_lib/vorbis/src/envelope.c diff --git a/jni/vorbis/src/envelope.h b/other_lib/vorbis/src/envelope.h similarity index 100% rename from jni/vorbis/src/envelope.h rename to other_lib/vorbis/src/envelope.h diff --git a/jni/vorbis/src/floor0.c b/other_lib/vorbis/src/floor0.c similarity index 100% rename from jni/vorbis/src/floor0.c rename to other_lib/vorbis/src/floor0.c diff --git a/jni/vorbis/src/floor1.c b/other_lib/vorbis/src/floor1.c similarity index 100% rename from jni/vorbis/src/floor1.c rename to other_lib/vorbis/src/floor1.c diff --git a/jni/vorbis/src/highlevel.h b/other_lib/vorbis/src/highlevel.h similarity index 100% rename from jni/vorbis/src/highlevel.h rename to other_lib/vorbis/src/highlevel.h diff --git a/jni/vorbis/src/info.c b/other_lib/vorbis/src/info.c similarity index 100% rename from jni/vorbis/src/info.c rename to other_lib/vorbis/src/info.c diff --git a/jni/vorbis/src/lookup.c b/other_lib/vorbis/src/lookup.c similarity index 100% rename from jni/vorbis/src/lookup.c rename to other_lib/vorbis/src/lookup.c diff --git a/jni/vorbis/src/lookup.h b/other_lib/vorbis/src/lookup.h similarity index 100% rename from jni/vorbis/src/lookup.h rename to other_lib/vorbis/src/lookup.h diff --git a/jni/vorbis/src/lookup_data.h b/other_lib/vorbis/src/lookup_data.h similarity index 100% rename from jni/vorbis/src/lookup_data.h rename to other_lib/vorbis/src/lookup_data.h diff --git a/jni/vorbis/src/lookups.pl b/other_lib/vorbis/src/lookups.pl similarity index 100% rename from jni/vorbis/src/lookups.pl rename to other_lib/vorbis/src/lookups.pl diff --git a/jni/vorbis/src/lpc.c b/other_lib/vorbis/src/lpc.c similarity index 100% rename from jni/vorbis/src/lpc.c rename to other_lib/vorbis/src/lpc.c diff --git a/jni/vorbis/src/lpc.h b/other_lib/vorbis/src/lpc.h similarity index 100% rename from jni/vorbis/src/lpc.h rename to other_lib/vorbis/src/lpc.h diff --git a/jni/vorbis/src/lsp.c b/other_lib/vorbis/src/lsp.c similarity index 100% rename from jni/vorbis/src/lsp.c rename to other_lib/vorbis/src/lsp.c diff --git a/jni/vorbis/src/lsp.h b/other_lib/vorbis/src/lsp.h similarity index 100% rename from jni/vorbis/src/lsp.h rename to other_lib/vorbis/src/lsp.h diff --git a/jni/vorbis/src/mapping0.c b/other_lib/vorbis/src/mapping0.c similarity index 100% rename from jni/vorbis/src/mapping0.c rename to other_lib/vorbis/src/mapping0.c diff --git a/jni/vorbis/src/masking.h b/other_lib/vorbis/src/masking.h similarity index 100% rename from jni/vorbis/src/masking.h rename to other_lib/vorbis/src/masking.h diff --git a/jni/vorbis/src/mdct.c b/other_lib/vorbis/src/mdct.c similarity index 100% rename from jni/vorbis/src/mdct.c rename to other_lib/vorbis/src/mdct.c diff --git a/jni/vorbis/src/mdct.h b/other_lib/vorbis/src/mdct.h similarity index 100% rename from jni/vorbis/src/mdct.h rename to other_lib/vorbis/src/mdct.h diff --git a/jni/vorbis/src/misc.h b/other_lib/vorbis/src/misc.h similarity index 100% rename from jni/vorbis/src/misc.h rename to other_lib/vorbis/src/misc.h diff --git a/jni/vorbis/src/modes/floor_all.h b/other_lib/vorbis/src/modes/floor_all.h similarity index 100% rename from jni/vorbis/src/modes/floor_all.h rename to other_lib/vorbis/src/modes/floor_all.h diff --git a/jni/vorbis/src/modes/psych_11.h b/other_lib/vorbis/src/modes/psych_11.h similarity index 100% rename from jni/vorbis/src/modes/psych_11.h rename to other_lib/vorbis/src/modes/psych_11.h diff --git a/jni/vorbis/src/modes/psych_16.h b/other_lib/vorbis/src/modes/psych_16.h similarity index 100% rename from jni/vorbis/src/modes/psych_16.h rename to other_lib/vorbis/src/modes/psych_16.h diff --git a/jni/vorbis/src/modes/psych_44.h b/other_lib/vorbis/src/modes/psych_44.h similarity index 100% rename from jni/vorbis/src/modes/psych_44.h rename to other_lib/vorbis/src/modes/psych_44.h diff --git a/jni/vorbis/src/modes/psych_8.h b/other_lib/vorbis/src/modes/psych_8.h similarity index 100% rename from jni/vorbis/src/modes/psych_8.h rename to other_lib/vorbis/src/modes/psych_8.h diff --git a/jni/vorbis/src/modes/residue_16.h b/other_lib/vorbis/src/modes/residue_16.h similarity index 100% rename from jni/vorbis/src/modes/residue_16.h rename to other_lib/vorbis/src/modes/residue_16.h diff --git a/jni/vorbis/src/modes/residue_44.h b/other_lib/vorbis/src/modes/residue_44.h similarity index 100% rename from jni/vorbis/src/modes/residue_44.h rename to other_lib/vorbis/src/modes/residue_44.h diff --git a/jni/vorbis/src/modes/residue_44p51.h b/other_lib/vorbis/src/modes/residue_44p51.h similarity index 100% rename from jni/vorbis/src/modes/residue_44p51.h rename to other_lib/vorbis/src/modes/residue_44p51.h diff --git a/jni/vorbis/src/modes/residue_44u.h b/other_lib/vorbis/src/modes/residue_44u.h similarity index 100% rename from jni/vorbis/src/modes/residue_44u.h rename to other_lib/vorbis/src/modes/residue_44u.h diff --git a/jni/vorbis/src/modes/residue_8.h b/other_lib/vorbis/src/modes/residue_8.h similarity index 100% rename from jni/vorbis/src/modes/residue_8.h rename to other_lib/vorbis/src/modes/residue_8.h diff --git a/jni/vorbis/src/modes/setup_11.h b/other_lib/vorbis/src/modes/setup_11.h similarity index 100% rename from jni/vorbis/src/modes/setup_11.h rename to other_lib/vorbis/src/modes/setup_11.h diff --git a/jni/vorbis/src/modes/setup_16.h b/other_lib/vorbis/src/modes/setup_16.h similarity index 100% rename from jni/vorbis/src/modes/setup_16.h rename to other_lib/vorbis/src/modes/setup_16.h diff --git a/jni/vorbis/src/modes/setup_22.h b/other_lib/vorbis/src/modes/setup_22.h similarity index 100% rename from jni/vorbis/src/modes/setup_22.h rename to other_lib/vorbis/src/modes/setup_22.h diff --git a/jni/vorbis/src/modes/setup_32.h b/other_lib/vorbis/src/modes/setup_32.h similarity index 100% rename from jni/vorbis/src/modes/setup_32.h rename to other_lib/vorbis/src/modes/setup_32.h diff --git a/jni/vorbis/src/modes/setup_44.h b/other_lib/vorbis/src/modes/setup_44.h similarity index 100% rename from jni/vorbis/src/modes/setup_44.h rename to other_lib/vorbis/src/modes/setup_44.h diff --git a/jni/vorbis/src/modes/setup_44p51.h b/other_lib/vorbis/src/modes/setup_44p51.h similarity index 100% rename from jni/vorbis/src/modes/setup_44p51.h rename to other_lib/vorbis/src/modes/setup_44p51.h diff --git a/jni/vorbis/src/modes/setup_44u.h b/other_lib/vorbis/src/modes/setup_44u.h similarity index 100% rename from jni/vorbis/src/modes/setup_44u.h rename to other_lib/vorbis/src/modes/setup_44u.h diff --git a/jni/vorbis/src/modes/setup_8.h b/other_lib/vorbis/src/modes/setup_8.h similarity index 100% rename from jni/vorbis/src/modes/setup_8.h rename to other_lib/vorbis/src/modes/setup_8.h diff --git a/jni/vorbis/src/modes/setup_X.h b/other_lib/vorbis/src/modes/setup_X.h similarity index 100% rename from jni/vorbis/src/modes/setup_X.h rename to other_lib/vorbis/src/modes/setup_X.h diff --git a/jni/vorbis/src/os.h b/other_lib/vorbis/src/os.h similarity index 100% rename from jni/vorbis/src/os.h rename to other_lib/vorbis/src/os.h diff --git a/jni/vorbis/src/psy.c b/other_lib/vorbis/src/psy.c similarity index 100% rename from jni/vorbis/src/psy.c rename to other_lib/vorbis/src/psy.c diff --git a/jni/vorbis/src/psy.h b/other_lib/vorbis/src/psy.h similarity index 100% rename from jni/vorbis/src/psy.h rename to other_lib/vorbis/src/psy.h diff --git a/jni/vorbis/src/registry.c b/other_lib/vorbis/src/registry.c similarity index 100% rename from jni/vorbis/src/registry.c rename to other_lib/vorbis/src/registry.c diff --git a/jni/vorbis/src/registry.h b/other_lib/vorbis/src/registry.h similarity index 100% rename from jni/vorbis/src/registry.h rename to other_lib/vorbis/src/registry.h diff --git a/jni/vorbis/src/res0.c b/other_lib/vorbis/src/res0.c similarity index 100% rename from jni/vorbis/src/res0.c rename to other_lib/vorbis/src/res0.c diff --git a/jni/vorbis/src/scales.h b/other_lib/vorbis/src/scales.h similarity index 100% rename from jni/vorbis/src/scales.h rename to other_lib/vorbis/src/scales.h diff --git a/jni/vorbis/src/sharedbook.c b/other_lib/vorbis/src/sharedbook.c similarity index 100% rename from jni/vorbis/src/sharedbook.c rename to other_lib/vorbis/src/sharedbook.c diff --git a/jni/vorbis/src/smallft.c b/other_lib/vorbis/src/smallft.c similarity index 100% rename from jni/vorbis/src/smallft.c rename to other_lib/vorbis/src/smallft.c diff --git a/jni/vorbis/src/smallft.h b/other_lib/vorbis/src/smallft.h similarity index 100% rename from jni/vorbis/src/smallft.h rename to other_lib/vorbis/src/smallft.h diff --git a/jni/vorbis/src/synthesis.c b/other_lib/vorbis/src/synthesis.c similarity index 100% rename from jni/vorbis/src/synthesis.c rename to other_lib/vorbis/src/synthesis.c diff --git a/jni/vorbis/src/vorbisenc.c b/other_lib/vorbis/src/vorbisenc.c similarity index 100% rename from jni/vorbis/src/vorbisenc.c rename to other_lib/vorbis/src/vorbisenc.c diff --git a/jni/vorbis/src/vorbisfile.c b/other_lib/vorbis/src/vorbisfile.c similarity index 100% rename from jni/vorbis/src/vorbisfile.c rename to other_lib/vorbis/src/vorbisfile.c diff --git a/jni/vorbis/src/window.c b/other_lib/vorbis/src/window.c similarity index 100% rename from jni/vorbis/src/window.c rename to other_lib/vorbis/src/window.c diff --git a/jni/vorbis/src/window.h b/other_lib/vorbis/src/window.h similarity index 100% rename from jni/vorbis/src/window.h rename to other_lib/vorbis/src/window.h diff --git a/jni/vorbis/todo.txt b/other_lib/vorbis/todo.txt similarity index 100% rename from jni/vorbis/todo.txt rename to other_lib/vorbis/todo.txt