Skip to content

Instantly share code, notes, and snippets.

@haxpor
Last active April 20, 2019 19:44
Show Gist options
  • Save haxpor/3151219d5f1cf2fc806bc76f6b73bccb to your computer and use it in GitHub Desktop.
Save haxpor/3151219d5f1cf2fc806bc76f6b73bccb to your computer and use it in GitHub Desktop.
Android.mk to build krr for sample project for Android. All dependencies are pre-built and installed into NDK's sysroot according to selected NDK version.
LOCAL_PATH := $(call my-dir)
# our prebuilt libraries
# - MPG123
include $(CLEAR_VARS)
LOCAL_MODULE := MPG123
LOCAL_SRC_FILES := $(ANDROID_NDK_SYSROOT)/usr/lib/$(TARGET_ARCH_ABI)/libmpg123.so
include $(PREBUILT_SHARED_LIBRARY)
# - SDL2_mixer
include $(CLEAR_VARS)
LOCAL_MODULE := SDL2_MIXER
LOCAL_EXPORT_C_INCLUDES := $(ANDROID_NDK_SYSROOT)/usr/include/SDL2
LOCAL_SRC_FILES := $(ANDROID_NDK_SYSROOT)/usr/lib/$(TARGET_ARCH_ABI)/libSDL2_mixer.so
include $(PREBUILT_SHARED_LIBRARY)
# - SDL2_image
include $(CLEAR_VARS)
LOCAL_MODULE := SDL2_IMAGE
LOCAL_EXPORT_C_INCLUDES := $(ANDROID_NDK_SYSROOT)/usr/include/SDL2
LOCAL_SRC_FILES := $(ANDROID_NDK_SYSROOT)/usr/lib/$(TARGET_ARCH_ABI)/libSDL2_image.so
include $(PREBUILT_SHARED_LIBRARY)
# - SDL2
include $(CLEAR_VARS)
LOCAL_MODULE := SDL2
LOCAL_EXPORT_C_INCLUDES := $(ANDROID_NDK_SYSROOT)/usr/include/SDL2
LOCAL_SRC_FILES := $(ANDROID_NDK_SYSROOT)/usr/lib/$(TARGET_ARCH_ABI)/libSDL2.so
include $(PREBUILT_SHARED_LIBRARY)
# - texpackr
include $(CLEAR_VARS)
LOCAL_MODULE := TEXPACKR
LOCAL_EXPORT_C_INCLUDES := $(ANDROID_NDK_SYSROOT)/usr/include/texpackr
LOCAL_SRC_FILES := $(ANDROID_NDK_SYSROOT)/usr/lib/$(TARGET_ARCH_ABI)/libtexpackr.so
include $(PREBUILT_SHARED_LIBRARY)
# - png
include $(CLEAR_VARS)
LOCAL_MODULE := PNG
LOCAL_EXPORT_C_INCLUDES := $(ANDROID_NDK_SYSROOT)/usr/include/png
LOCAL_SRC_FILES := $(ANDROID_NDK_SYSROOT)/usr/lib/$(TARGET_ARCH_ABI)/libpng16.so
include $(PREBUILT_SHARED_LIBRARY)
# - hashmap_c
include $(CLEAR_VARS)
LOCAL_MODULE := HASHMAP_C
LOCAL_EXPORT_C_INCLUDES := $(ANDROID_NDK_SYSROOT)/usr/include/hashmap_c
LOCAL_SRC_FILES := $(ANDROID_NDK_SYSROOT)/usr/lib/$(TARGET_ARCH_ABI)/libhashmap_c.so
include $(PREBUILT_SHARED_LIBRARY)
# - vector_c
include $(CLEAR_VARS)
LOCAL_MODULE := VECTOR
LOCAL_EXPORT_C_INCLUDES := $(ANDROID_NDK_SYSROOT)/usr/include/vector
LOCAL_SRC_FILES := $(ANDROID_NDK_SYSROOT)/usr/lib/$(TARGET_ARCH_ABI)/libvector.so
include $(PREBUILT_SHARED_LIBRARY)
# - cglm
include $(CLEAR_VARS)
LOCAL_MODULE := CGLM
LOCAL_EXPORT_C_INCLUDES := $(ANDROID_NDK_SYSROOT)/usr/include/cglm
LOCAL_SRC_FILES := $(ANDROID_NDK_SYSROOT)/usr/lib/$(TARGET_ARCH_ABI)/libcglm.so
include $(PREBUILT_SHARED_LIBRARY)
# - freetype
include $(CLEAR_VARS)
LOCAL_MODULE := FREETYPE
LOCAL_EXPORT_C_INCLUDES := $(ANDROID_NDK_SYSROOT)/usr/include/freetype2
LOCAL_SRC_FILES := $(ANDROID_NDK_SYSROOT)/usr/lib/$(TARGET_ARCH_ABI)/libfreetype.so
include $(PREBUILT_SHARED_LIBRARY)
# - krr
include $(CLEAR_VARS)
LOCAL_MODULE := KRR
LOCAL_EXPORT_C_INCLUDES := $(ANDROID_NDK_SYSROOT)/usr/include/krr
LOCAL_SRC_FILES := $(ANDROID_NDK_SYSROOT)/usr/lib/$(TARGET_ARCH_ABI)/libkrr.so
include $(PREBUILT_SHARED_LIBRARY)
# - HIDAPI
include $(CLEAR_VARS)
LOCAL_MODULE := HIDAPI
LOCAL_EXPORT_C_INCLUDES := $(ANDROID_NDK_SYSROOT)/usr/include/SDL2
LOCAL_SRC_FILES := $(ANDROID_NDK_SYSROOT)/usr/lib/$(TARGET_ARCH_ABI)/libhidapi.so
include $(PREBUILT_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := main
LOCAL_C_INCLUDES := $(LOCAL_PATH)
LOCAL_SRC_FILES := main.c functs.c terrain.c
LOCAL_SHARED_LIBRARIES := SDL2 \
MPG123 \
SDL2_MIXER \
SDL2_IMAGE \
VECTOR \
HASHMAP_C \
TEXPACKR \
PNG \
CGLM \
FREETYPE \
KRR \
HIDAPI
LOCAL_LDLIBS := -lGLESv1_CM -lGLESv2 -llog -lz -ldl
include $(BUILD_SHARED_LIBRARY)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment