ax86-nb-qemu's People
ax86-nb-qemu's Issues
which NDK version you were using?
Hi there, I have trouble compiling your sources, could you provide a more detailed guide please?
x86_64/aarch64, help making this work with https://gitlab.com/android_translation_layer/android_translation_layer?
I'm trying to make this work with https://gitlab.com/android_translation_layer/android_translation_layer.
At first I tried using the build system we have for https://gitlab.com/android_translation_layer/art_standalone
(see patches below), but it seems that some files are missing, and arm is harcoded in some paths.
I assume there will be some other issues.
Would it be possible to simply use the original build system to build qemu, so as to sidestep these issues?
Is __ANDROID__
being defined necessary for the qemu fork to work correctly, or is it only necessary to build for AOSP target?
Seeing that there doesn't seem to be too much interest in this project as-is, would you like to help with getting this running with android_translation_layer (we like this compared to libhoudini, since it's open source, which is always a plus, and it's also practical since it means it can be modified to work more sanely with a standard Linux system)
diff --git a/Android.mk b/Android.mk
index bc2abd7..ddf3972 100644
--- a/Android.mk
+++ b/Android.mk
@@ -17,6 +17,6 @@
# along with this program; if not, see <http://www.gnu.org/licenses/>.
#
-QEMU_HOST_ARCH := i386
-QEMU_TARGET_ARCH := arm
+QEMU_HOST_ARCH := x86_64
+QEMU_TARGET_ARCH := aarch64
include $(call all-subdir-makefiles)
diff --git a/capstone b/capstone
deleted file mode 160000
index 0ea7272..0000000
--- a/capstone
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 0ea72729858bcefe9edd32bade421278b1d41ca1
diff --git a/glib b/glib
deleted file mode 160000
index 0d2cfc7..0000000
--- a/glib
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 0d2cfc78da3e1507c2258dc52bb34e6ea9a08e93
diff --git a/libnb-qemu/Android.mk b/libnb-qemu/Android.mk
index 94bb85e..2e38d76 100644
--- a/libnb-qemu/Android.mk
+++ b/libnb-qemu/Android.mk
@@ -40,7 +40,7 @@ LOCAL_STATIC_LIBRARIES := libqemu-glib libqemu-capstone libffi
LOCAL_CFLAGS := $(LOCAL_QEMU_CFLAGS)
LOCAL_C_INCLUDES := system/core/libnativebridge/include
LOCAL_EXPORT_STATIC_LIBRARY_HEADERS := libqemu-core libqemu-target libqemu-glib libffi
-include $(BUILD_SHARED_LIBRARY)
+include $(BUILD_HOST_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := libnb-qemu-EGL
@@ -48,8 +48,9 @@ LOCAL_SRC_FILES := libEGL.c libEGL.itf.cpp
LOCAL_CFLAGS := \
-fvisibility=hidden $(LOCAL_QEMU_CFLAGS) \
-DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
-LOCAL_SHARED_LIBRARIES := libnb-qemu liblog libEGL
-include $(BUILD_SHARED_LIBRARY)
+LOCAL_SHARED_LIBRARIES := libnb-qemu liblog
+LOCAL_LDLIBS := -lEGL
+include $(BUILD_HOST_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := libnb-qemu-GLESv3
@@ -57,8 +58,9 @@ LOCAL_SRC_FILES := libGLESv3.c
LOCAL_CFLAGS := \
-fvisibility=hidden $(LOCAL_QEMU_CFLAGS) \
-DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
-LOCAL_SHARED_LIBRARIES := libnb-qemu liblog libGLESv3
-include $(BUILD_SHARED_LIBRARY)
+LOCAL_SHARED_LIBRARIES := libnb-qemu liblog
+LOCAL_LDLIBS := libEGL
+include $(-lGLESv3)
include $(CLEAR_VARS)
LOCAL_MODULE := libnb-qemu-GLESv1_CM
@@ -66,21 +68,24 @@ LOCAL_SRC_FILES := libGLESv1_CM.c
LOCAL_CFLAGS := \
-fvisibility=hidden $(LOCAL_QEMU_CFLAGS) \
-DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
-LOCAL_SHARED_LIBRARIES := libnb-qemu liblog libGLESv1_CM
-include $(BUILD_SHARED_LIBRARY)
+LOCAL_SHARED_LIBRARIES := libnb-qemu liblog
+LOCAL_LDLIBS := -lGLESv1_CM
+include $(BUILD_HOST_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := libnb-qemu-OpenSLES
LOCAL_SRC_FILES := libOpenSLES.c libOpenSLES.itf.cpp
LOCAL_CFLAGS := \
-fvisibility=hidden $(LOCAL_QEMU_CFLAGS)
-LOCAL_SHARED_LIBRARIES := libnb-qemu liblog libOpenSLES
-include $(BUILD_SHARED_LIBRARY)
+LOCAL_SHARED_LIBRARIES := libnb-qemu liblog
+LOCAL_LDLIBS := -lOpenSLES
+include $(BUILD_HOST_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := libnb-qemu-android
LOCAL_SRC_FILES := libandroid.c libandroid.itf.cpp
LOCAL_CFLAGS := \
-fvisibility=hidden $(LOCAL_QEMU_CFLAGS)
-LOCAL_SHARED_LIBRARIES := libnb-qemu liblog libandroid
-include $(BUILD_SHARED_LIBRARY)
+LOCAL_SHARED_LIBRARIES := libnb-qemu liblog
+LOCAL_LDLIBS := -landroid
+include $(BUILD_HOST_SHARED_LIBRARY)
diff --git a/qemu b/qemu
--- a/qemu
+++ b/qemu
@@ -1 +1 @@
-Subproject commit 7b06ff77ab9d048d7ed3cdb08a136e97c03f43f4
+Subproject commit 7b06ff77ab9d048d7ed3cdb08a136e97c03f43f4-dirty
diff --git a/Android.mk b/Android.mk
index 7b0933cc72..645fc561d7 100644
--- a/Android.mk
+++ b/Android.mk
@@ -226,14 +226,14 @@ LOCAL_MODULE := libqemu-core
LOCAL_SRC_FILES := $(QEMU_CORE_SRC_FILES)
LOCAL_CFLAGS := $(QEMU_CORE_CFLAGS)
LOCAL_C_INCLUDES := $(QEMU_CORE_C_INCLUDES)
-LOCAL_STATIC_LIBRARIES := libqemu-glib libqemu-capstone
+LOCAL_LDLIBS := -lcapstone -lglib
LOCAL_EXPORT_C_INCLUDE_DIRS := \
$(LOCAL_PATH) \
$(LOCAL_PATH)/tcg \
$(LOCAL_PATH)/tcg/$(QEMU_HOST_ARCH) \
$(LOCAL_PATH)/accel/tcg \
$(LOCAL_PATH)/include
-include $(BUILD_STATIC_LIBRARY)
+include $(BUILD_HOST_STATIC_LIBRARY)
QEMU_TARGET_SRC_FILES := \
disas.c \
@@ -315,20 +315,19 @@ LOCAL_MODULE := libqemu-target
LOCAL_SRC_FILES := $(QEMU_TARGET_SRC_FILES)
LOCAL_CFLAGS := $(QEMU_TARGET_CFLAGS)
LOCAL_C_INCLUDES := $(QEMU_TARGET_C_INCLUDES)
-LOCAL_STATIC_LIBRARIES := libqemu-glib libqemu-capstone
-LOCAL_SHARED_LIBRARIES := libz
+LOCAL_LDLIBS := -lcapstone -lglib -lz
LOCAL_EXPORT_C_INCLUDE_DIRS := \
$(LOCAL_PATH)/target/$(QEMU_TARGET_ARCH) \
$(LOCAL_PATH)/linux-user/$(QEMU_TARGET_ARCH) \
$(LOCAL_PATH)/linux-user/host/$(QEMU_HOST_ARCH) \
$(LOCAL_PATH)/linux-user/
-include $(BUILD_STATIC_LIBRARY)
+include $(BUILD_HOST_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := qemu-arm
-LOCAL_SRC_FILES := linux-user/android-main.c
+LOCAL_SRC_FILES := linux-user/main.c
# We need the functions marked with __attribute__((constructor)), so include whole archives
LOCAL_WHOLE_STATIC_LIBRARIES := libqemu-target libqemu-core
-LOCAL_STATIC_LIBRARIES := libqemu-capstone libqemu-glib
-LOCAL_SHARED_LIBRARIES := libz liblog
-include $(BUILD_EXECUTABLE)
+LOCAL_LDLIBS := -lcapstone -lglib -lz
+LOCAL_SHARED_LIBRARIES := liblog
+include $(BUILD_HOST_EXECUTABLE)
diff --git a/roms/qboot b/roms/qboot
index cb1c49e0cf..8ca302e86d 160000
--- a/roms/qboot
+++ b/roms/qboot
@@ -1 +1 @@
-Subproject commit cb1c49e0cfac99b9961d136ac0194da62c28cf64
+Subproject commit 8ca302e86d685fa05b16e2b208888243da319941-dirty
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.