Coder Social home page Coder Social logo

ax86-nb-qemu's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

ax86-nb-qemu's Issues

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 photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.