diff --git a/android-tools.spec b/android-tools.spec index d4a5a52..833f443 100644 --- a/android-tools.spec +++ b/android-tools.spec @@ -1,4 +1,9 @@ %global _hardened_build 1 +%if 0%{?el8} +# Required to avoid conflicts between installed files and existing directories +# with the same name in the source tree +%undefine __cmake_in_source_build +%endif Name: android-tools Version: 33.0.3p1 @@ -20,8 +25,15 @@ Patch0: Disable-e2fsdroid-for-ppc64le.patch BuildRequires: brotli-devel BuildRequires: cmake +%if 0%{?el8} +# Uses C++20 features so we need a newer GCC +BuildRequires: gcc-toolset-11-gcc-c++ +BuildRequires: gcc-toolset-11-annobin-plugin-gcc +BuildRequires: gcc-toolset-11-binutils +%else BuildRequires: gcc BuildRequires: gcc-c++ +%endif BuildRequires: gtest-devel BuildRequires: golang BuildRequires: golang(golang.org/x/crypto/chacha20) @@ -76,6 +88,9 @@ setup between the host and the target phone as adb. cp -p %{SOURCE1} 51-android.rules %build +%if 0%{?el8} +. /opt/rh/gcc-toolset-11/enable +%endif export GO111MODULE=off %cmake -DBUILD_SHARED_LIBS:BOOL=OFF %cmake_build @@ -86,6 +101,11 @@ install -p -D -m 0644 %{SOURCE2} \ %{buildroot}%{_unitdir}/adb.service install -d -m 0775 ${RPM_BUILD_ROOT}%{_sharedstatedir}/adb +%if 0%{?el8} +# On el8 this is provided by the bash-completion package +rm %{buildroot}%{_datadir}/bash-completion/completions/adb +%endif + %post %systemd_post adb.service @@ -126,7 +146,9 @@ install -d -m 0775 ${RPM_BUILD_ROOT}%{_sharedstatedir}/adb %{_datadir}/android-tools/completions/fastboot %{_datadir}/android-tools/mkbootimg/gki/generate_gki_certificate.py %{_datadir}/android-tools/mkbootimg/mkbootimg.py +%if 0%{?fedora} || 0%{?rhel} > 8 %{_datadir}/bash-completion/completions/adb +%endif %{_datadir}/bash-completion/completions/fastboot %changelog