Patch: skip building demo/libwaiters.so

undefined reference to __gxx_personality_v0

Also:
- Perform unsafe git applying of patches
- Comment out freemarker stuff, not needed here
This commit is contained in:
khanhduytran0 2023-02-19 17:17:59 +07:00 committed by ArtDev
parent c7407f6561
commit 817fc68835
4 changed files with 56 additions and 39 deletions

View File

@ -61,7 +61,8 @@ ln -s -f $CUPS_DIR/cups $ANDROID_INCLUDE/
cd openjdk
# Apply patches
git apply --reject --whitespace=fix ../patches/jdk8u_android.diff
git reset --hard
git apply --reject --whitespace=fix ../patches/jdk8u_android.diff || echo "git apply failed"
# --with-extra-cxxflags="$CXXFLAGS -Dchar16_t=uint16_t -Dchar32_t=uint32_t" \
# --with-extra-cflags="$CPPFLAGS" \

View File

@ -29,6 +29,7 @@ else
--host=$TARGET \
--prefix=`pwd`/build_android-${TARGET_SHORT} \
--without-zlib \
--with-brotli=no \
--with-png=no \
--with-harfbuzz=no $EXTRA_ARGS \
|| error_code=$?

View File

@ -10,7 +10,8 @@ tar xf freetype-$BUILD_FREETYPE_VERSION.tar.gz
wget https://github.com/apple/cups/releases/download/v2.2.4/cups-2.2.4-source.tar.gz
tar xf cups-2.2.4-source.tar.gz
wget https://sourceforge.net/projects/freemarker/files/freemarker/2.3.8/freemarker-2.3.8.tar.gz/download -O freemarker-2.3.8.tar.gz
tar -xzf freemarker-2.3.8.tar.gz
# wget https://sourceforge.net/projects/freemarker/files/freemarker/2.3.8/freemarker-2.3.8.tar.gz/download -O freemarker-2.3.8.tar.gz
# tar -xzf freemarker-2.3.8.tar.gz
rm cups-2.2.4-source.tar.gz freetype-$BUILD_FREETYPE_VERSION.tar.gz freemarker-2.3.8.tar.gz
rm cups-2.2.4-source.tar.gz freetype-$BUILD_FREETYPE_VERSION.tar.gz
# freemarker-2.3.8.tar.gz

View File

@ -100,41 +100,41 @@ index 0000000000..e4264936ef
--- /dev/null
+++ b/common/src/gnu/glibc_bionic.c
@@ -0,0 +1,36 @@
+#include "libc-version.h"
+
+static size_t confstr(int name, char *buf, size_t len) {
+ char *string = "";
+ size_t string_len = 1;
+
+ switch (name) {
+ case _CS_GNU_LIBC_VERSION:
+ sring = "Android bionic libc 21";
+ break;
+ case _CS_GNU_LIBPTHREAD_VERSION:
+ string = "Android bionic libc 21 pthread";
+ break;
+ default:
+ return 0;
+ }
+
+ string_len = strnlen(string, 0xA00000);
+
+ if (len > 0 && buf != NULL) {
+ if (string_len <= len) {
+ memcpy (buf, string, string_len);
+ } else {
+ memcpy (buf, string, len - 1);
+ buf[len - 1] = '\0';
+ }
+ }
+ return string_len;
+}
+
+const char* gnu_get_libc_version() {
+ return "2.31";
+}
+const char* gnu_get_libc_release() {
+ return "stable";
+#include "libc-version.h"
+
+static size_t confstr(int name, char *buf, size_t len) {
+ char *string = "";
+ size_t string_len = 1;
+
+ switch (name) {
+ case _CS_GNU_LIBC_VERSION:
+ sring = "Android bionic libc 21";
+ break;
+ case _CS_GNU_LIBPTHREAD_VERSION:
+ string = "Android bionic libc 21 pthread";
+ break;
+ default:
+ return 0;
+ }
+
+ string_len = strnlen(string, 0xA00000);
+
+ if (len > 0 && buf != NULL) {
+ if (string_len <= len) {
+ memcpy (buf, string, string_len);
+ } else {
+ memcpy (buf, string, len - 1);
+ buf[len - 1] = '\0';
+ }
+ }
+ return string_len;
+}
+
+const char* gnu_get_libc_version() {
+ return "2.31";
+}
+const char* gnu_get_libc_release() {
+ return "stable";
+}
\ No newline at end of file
diff --git a/hotspot/agent/src/os/linux/Makefile b/hotspot/agent/src/os/linux/Makefile
@ -2700,6 +2700,20 @@ index 3ce8e92cc3..af2601b8eb 100644
#define ELF_ST_TYPE ELF32_ST_TYPE
#endif
#endif
diff --git a/jdk/make/CompileDemos.gmk b/jdk/make/CompileDemos.gmk
index 6c5eb432..c2ed8740 100644
--- a/jdk/make/CompileDemos.gmk
+++ b/jdk/make/CompileDemos.gmk
@@ -327,7 +327,8 @@ $(eval $(call SetupJVMTIDemo,hprof, java_crw_demo, \
$(eval $(call SetupJVMTIDemo,minst, agent_util java_crw_demo))
$(eval $(call SetupJVMTIDemo,mtrace, agent_util java_crw_demo))
-$(eval $(call SetupJVMTIDemo,waiters, agent_util, , C++))
+# FIXME(Android): undefined reference to __gxx_personality_v0
+#$(eval $(call SetupJVMTIDemo,waiters, agent_util, , C++))
$(eval $(call SetupJVMTIDemo,versionCheck, agent_util))
##################################################################################################
diff --git a/jdk/make/CompileLaunchers.gmk b/jdk/make/CompileLaunchers.gmk
index 1f414e2e05..110d531b9d 100644
--- a/jdk/make/CompileLaunchers.gmk