GLES2N64 (from mupen64plus-ae) plugin. Compile and run on the OpenPandora
[mupen64plus-pandora.git] / source / gles2n64 / Android.mk
diff --git a/source/gles2n64/Android.mk b/source/gles2n64/Android.mk
new file mode 100644 (file)
index 0000000..f2ae620
--- /dev/null
@@ -0,0 +1,87 @@
+LOCAL_PATH := $(call my-dir)
+
+include $(CLEAR_VARS)
+SRCDIR := src
+
+LOCAL_MODULE := gles2n64
+LOCAL_SHARED_LIBRARIES := ae-imports SDL2 core
+LOCAL_STATIC_LIBRARIES := cpufeatures
+LOCAL_ARM_MODE := arm
+
+LOCAL_C_INCLUDES :=         \
+    $(M64P_API_INCLUDES)    \
+    $(SDL_INCLUDES)         \
+    $(AE_BRIDGE_INCLUDES)   \
+
+LOCAL_SRC_FILES :=                  \
+    $(SRCDIR)/2xSAI.cpp             \
+    $(SRCDIR)/3DMath.cpp            \
+    $(SRCDIR)/Config.cpp            \
+    $(SRCDIR)/CRC.cpp               \
+    $(SRCDIR)/DepthBuffer.cpp       \
+    $(SRCDIR)/F3D.cpp               \
+    $(SRCDIR)/F3DCBFD.cpp           \
+    $(SRCDIR)/F3DDKR.cpp            \
+    $(SRCDIR)/F3DEX.cpp             \
+    $(SRCDIR)/F3DEX2.cpp            \
+    $(SRCDIR)/F3DPD.cpp             \
+    $(SRCDIR)/F3DWRUS.cpp           \
+    $(SRCDIR)/FrameSkipper.cpp      \
+    $(SRCDIR)/GBI.cpp               \
+    $(SRCDIR)/gDP.cpp               \
+    $(SRCDIR)/gles2N64.cpp          \
+    $(SRCDIR)/gSP.cpp               \
+    $(SRCDIR)/L3D.cpp               \
+    $(SRCDIR)/L3DEX.cpp             \
+    $(SRCDIR)/L3DEX2.cpp            \
+    $(SRCDIR)/N64.cpp               \
+    $(SRCDIR)/OpenGL.cpp            \
+    $(SRCDIR)/RDP.cpp               \
+    $(SRCDIR)/RSP.cpp               \
+    $(SRCDIR)/S2DEX.cpp             \
+    $(SRCDIR)/S2DEX2.cpp            \
+    $(SRCDIR)/ShaderCombiner.cpp    \
+    $(SRCDIR)/Textures.cpp          \
+    $(SRCDIR)/ticks.c               \
+    $(SRCDIR)/VI.cpp                \
+
+LOCAL_CFLAGS :=         \
+    $(COMMON_CFLAGS)    \
+    -D__CRC_OPT         \
+    -D__HASHMAP_OPT     \
+    -D__TRIBUFFER_OPT   \
+    -D__VEC4_OPT        \
+    -DANDROID           \
+    -DUSE_SDL           \
+    -fsigned-char       \
+    #-DSDL_NO_COMPAT     \
+    
+LOCAL_CPPFLAGS := $(COMMON_CPPFLAGS)
+    
+LOCAL_LDFLAGS := -Wl,-version-script,$(LOCAL_PATH)/$(SRCDIR)/video_api_export.ver
+
+LOCAL_LDLIBS :=         \
+    -lGLESv2            \
+    -llog               \
+
+ifeq ($(TARGET_ARCH_ABI), armeabi-v7a)
+    # Use for ARM7a:
+    LOCAL_SRC_FILES += $(SRCDIR)/gSPNeon.cpp.neon
+    LOCAL_SRC_FILES += $(SRCDIR)/3DMathNeon.cpp.neon 
+    LOCAL_CFLAGS += -DARM_ASM
+    LOCAL_CFLAGS += -D__NEON_OPT
+
+else ifeq ($(TARGET_ARCH_ABI), armeabi)
+    # Use for pre-ARM7a:
+
+else ifeq ($(TARGET_ARCH_ABI), x86)
+    # TODO: set the proper flags here
+
+else
+    # Any other architectures that Android could be running on?
+
+endif
+
+include $(BUILD_SHARED_LIBRARY)
+
+$(call import-module, android/cpufeatures)