diff -Nru android-platform-art-11.0.0+r48/debian/changelog android-platform-art-11.0.0+r48/debian/changelog --- android-platform-art-11.0.0+r48/debian/changelog 2022-05-10 10:33:56.000000000 +0000 +++ android-platform-art-11.0.0+r48/debian/changelog 2022-07-19 11:20:55.000000000 +0000 @@ -1,3 +1,14 @@ +android-platform-art (11.0.0+r48-3+rpi1) bookworm-staging; urgency=medium + + * Disable arm-specific codepaths which fail to build on raspbian. + * Disable code that depends on said arm specific codepaths, limit + built to cross-platform code. + * Fix clean target. + * Don't pass -mfpu=neon + * Don't build with clang due to armv7 contamination. + + -- Peter Michael Green Tue, 19 Jul 2022 11:20:55 +0000 + android-platform-art (11.0.0+r48-3) unstable; urgency=medium * Team upload. diff -Nru android-platform-art-11.0.0+r48/debian/control android-platform-art-11.0.0+r48/debian/control --- android-platform-art-11.0.0+r48/debian/control 2022-05-10 10:33:56.000000000 +0000 +++ android-platform-art-11.0.0+r48/debian/control 2022-07-19 11:20:55.000000000 +0000 @@ -4,18 +4,18 @@ Maintainer: Android Tools Maintainers Uploaders: Kai-Chung Yan Build-Depends: - android-libbacktrace-dev (>= 1:29) [amd64 i386 armhf arm64], - android-libcutils-dev (>= 1:29) [amd64 i386 armhf arm64], - android-libnativehelper-dev (>= 29) [amd64 i386 armhf arm64], - android-libziparchive-dev (>= 1:29) [amd64 i386 armhf arm64], + android-libbacktrace-dev (>= 1:29) [amd64 i386 arm64], + android-libcutils-dev (>= 1:29) [amd64 i386 arm64], + android-libnativehelper-dev (>= 29) [amd64 i386 arm64], + android-libziparchive-dev (>= 1:29) [amd64 i386 arm64], clang [amd64 i386 armel armhf arm64 mipsel mips64el ppc64el s390x powerpc ppc64 sparc64 riscv64], debhelper-compat (= 12), dh-exec, help2man, - libicu-dev [amd64 i386 armhf arm64], - liblz4-dev [amd64 i386 armhf arm64], - python3 [amd64 i386 armhf arm64], - zlib1g-dev [amd64 i386 armhf arm64], + libicu-dev [amd64 i386 arm64], + liblz4-dev [amd64 i386 arm64], + python3 [amd64 i386 arm64], + zlib1g-dev [amd64 i386 arm64], Standards-Version: 4.5.0 Rules-Requires-Root: no Homepage: https://android.googlesource.com/platform/art @@ -23,7 +23,7 @@ Vcs-Browser: https://salsa.debian.org/android-tools-team/android-platform-art Package: dexdump -Architecture: amd64 i386 armhf arm64 +Architecture: amd64 i386 arm64 Multi-Arch: foreign Depends: ${misc:Depends}, ${shlibs:Depends}, android-libbacktrace (>= 1:29), @@ -50,7 +50,7 @@ node to child nodes) using arrows. Package: android-libart -Architecture: amd64 i386 armhf arm64 +Architecture: amd64 i386 arm64 Multi-Arch: same Depends: ${shlibs:Depends}, ${misc:Depends}, Description: Android Runtime @@ -66,7 +66,7 @@ Package: android-libnativebridge Section: libs -Architecture: amd64 i386 armhf arm64 +Architecture: amd64 i386 arm64 Multi-Arch: same Depends: ${shlibs:Depends}, ${misc:Depends}, Description: Android native bridge library @@ -74,7 +74,7 @@ Package: android-libnativeloader Section: libs -Architecture: amd64 i386 armhf arm64 +Architecture: amd64 i386 arm64 Multi-Arch: same Depends: ${shlibs:Depends}, ${misc:Depends}, android-libnativebridge (>= ${binary:Version}), @@ -83,7 +83,7 @@ This library is only used by Android SDK currently. Package: dexlist -Architecture: amd64 i386 armhf arm64 +Architecture: amd64 i386 arm64 Multi-Arch: foreign Depends: ${misc:Depends}, ${shlibs:Depends}, android-libbacktrace (>= 1:29), diff -Nru android-platform-art-11.0.0+r48/debian/detect-arch.mk android-platform-art-11.0.0+r48/debian/detect-arch.mk --- android-platform-art-11.0.0+r48/debian/detect-arch.mk 2022-05-10 10:33:56.000000000 +0000 +++ android-platform-art-11.0.0+r48/debian/detect-arch.mk 2022-07-19 11:20:55.000000000 +0000 @@ -6,12 +6,12 @@ ifeq ($(DEB_HOST_ARCH), i386) CPU = x86 endif -ifeq ($(DEB_HOST_ARCH), armel) - CPU = arm -endif -ifeq ($(DEB_HOST_ARCH), armhf) - CPU = arm -endif +#ifeq ($(DEB_HOST_ARCH), armel) +# CPU = arm +#endif +#ifeq ($(DEB_HOST_ARCH), armhf) +# CPU = arm +#endif ifeq ($(DEB_HOST_ARCH), arm64) CPU = arm64 endif diff -Nru android-platform-art-11.0.0+r48/debian/libart.mk android-platform-art-11.0.0+r48/debian/libart.mk --- android-platform-art-11.0.0+r48/debian/libart.mk 2022-05-10 10:33:56.000000000 +0000 +++ android-platform-art-11.0.0+r48/debian/libart.mk 2022-07-19 11:20:55.000000000 +0000 @@ -220,18 +220,18 @@ thread_linux.cc # Architecture specific sources, which come from runtime/Android.bp -SOURCES_runtime_arm = \ - interpreter/mterp/mterp.cc \ - interpreter/mterp/nterp_stub.cc \ - arch/arm/context_arm.cc \ - arch/arm/entrypoints_init_arm.cc \ - arch/arm/instruction_set_features_assembly_tests.S \ - arch/arm/jni_entrypoints_arm.S \ - arch/arm/memcmp16_arm.S \ - arch/arm/quick_entrypoints_arm.S \ - arch/arm/quick_entrypoints_cc_arm.cc \ - arch/arm/thread_arm.cc \ - arch/arm/fault_handler_arm.cc \ +#SOURCES_runtime_arm = \ +# interpreter/mterp/mterp.cc \ +# interpreter/mterp/nterp_stub.cc \ +# arch/arm/context_arm.cc \ +# arch/arm/entrypoints_init_arm.cc \ +# arch/arm/instruction_set_features_assembly_tests.S \ +# arch/arm/jni_entrypoints_arm.S \ +# arch/arm/memcmp16_arm.S \ +# arch/arm/quick_entrypoints_arm.S \ +# arch/arm/quick_entrypoints_cc_arm.cc \ +# arch/arm/thread_arm.cc \ +# arch/arm/fault_handler_arm.cc \ SOURCES_runtime_arm64 = \ interpreter/mterp/mterp.cc \ @@ -413,7 +413,7 @@ ifeq ($(CPU),arm) # Clang does not support the `ADRL` instruction. See CC_ASSEMBLY = gcc - CFLAGS += -mfpu=neon + #CFLAGS += -mfpu=neon endif CXXFLAGS += -std=gnu++17 \ @@ -493,7 +493,7 @@ python3 tools/generate_operator_out.py libartbase $^ > $@ debian/out/mterp.S: runtime/interpreter/mterp/$(CPU)/*.S - python3 runtime/interpreter/mterp/gen_mterp.py $@ $^ + python3 runtime/interpreter/mterp/gen_mterp.py $@ debian/out/mterp_$(CPU).S: runtime/interpreter/mterp/$(CPU)ng/*.S runtime/interpreter/mterp/$(CPU)/arithmetic.S runtime/interpreter/mterp/$(CPU)/floating_point.S python3 runtime/interpreter/mterp/gen_mterp.py $@ $^ diff -Nru android-platform-art-11.0.0+r48/debian/rules android-platform-art-11.0.0+r48/debian/rules --- android-platform-art-11.0.0+r48/debian/rules 2022-05-10 10:33:56.000000000 +0000 +++ android-platform-art-11.0.0+r48/debian/rules 2022-07-19 11:20:55.000000000 +0000 @@ -22,16 +22,16 @@ MAN_COMPONENTS = debian/out/dmtracedump.1 # MIPS is left out because ART only supports MIPSr6 while Debian is by default MIPSr2 -ifneq ($(filter amd64 i386 armhf arm64,$(DEB_HOST_ARCH)),) +ifneq ($(filter amd64 i386 arm64,$(DEB_HOST_ARCH)),) COMPONENTS += debian/out/dexdump debian/out/dexlist MAN_COMPONENTS += debian/out/dexdump.1 debian/out/dexlist.1 COMPONENTS += debian/out/libdexfile_external.so debian/out/libdexfile_support.so endif -ifneq (, $(shell which clang)) - export CC=clang - export CXX=clang++ -endif +#ifneq (, $(shell which clang)) +# export CC=clang +# export CXX=clang++ +#endif debian/out/lib%.so: debian/lib%.mk dh_auto_build --buildsystem=makefile -- --file=$< @@ -71,6 +71,7 @@ override_dh_auto_clean: dh_auto_clean make clean --file=debian/libart.mk + rm -f tools/dmtracedump/tracedump.o override_dh_dwz: echo Skip dh_dwz since it cannot reduce size for this package.