diff options
author | phunkyfish <phunkyfish@gmail.com> | 2020-02-06 17:48:21 +0000 |
---|---|---|
committer | phunkyfish <phunkyfish@gmail.com> | 2020-02-27 12:51:41 +0000 |
commit | 8810f7ecab3eedc859dd1acebc342ffea4d60b34 (patch) | |
tree | 0dfa4f6e7d06c0c5f42a74e52974ee31dd68e9ad /tools | |
parent | cde760b94e57b2e07ab09dcdd25f61ca525266d2 (diff) |
[ios] set minimum ios version to 11.0 and cleanup dependencies
Diffstat (limited to 'tools')
-rw-r--r-- | tools/buildsteps/defaultenv | 7 | ||||
-rwxr-xr-x | tools/buildsteps/ios/configure-depends | 1 | ||||
-rwxr-xr-x | tools/buildsteps/ios/package | 9 | ||||
-rwxr-xr-x | tools/darwin/Support/Codesign.command | 11 | ||||
-rw-r--r-- | tools/darwin/packaging/darwin_embedded/mkdeb-darwin_embedded.sh.in | 26 | ||||
-rw-r--r-- | tools/depends/README.md | 5 | ||||
-rw-r--r-- | tools/depends/configure.ac | 47 | ||||
-rw-r--r-- | tools/depends/native/ldid/Makefile | 25 | ||||
-rw-r--r-- | tools/depends/target/Toolchain.cmake.in | 2 | ||||
-rw-r--r-- | tools/depends/target/config-binaddons.site.in | 4 | ||||
-rw-r--r-- | tools/depends/target/config.site.in | 6 | ||||
-rw-r--r-- | tools/depends/target/ffmpeg/CMakeLists.txt | 6 | ||||
-rw-r--r-- | tools/depends/target/ffmpeg/Makefile | 10 | ||||
-rw-r--r-- | tools/depends/target/samba-gplv3/02-cross_compile.patch | 12 | ||||
-rw-r--r-- | tools/depends/target/samba-gplv3/Makefile | 6 |
15 files changed, 36 insertions, 141 deletions
diff --git a/tools/buildsteps/defaultenv b/tools/buildsteps/defaultenv index 22514e35dc..becf6ae8f8 100644 --- a/tools/buildsteps/defaultenv +++ b/tools/buildsteps/defaultenv @@ -4,7 +4,6 @@ NDK_VERSION=${NDK_VERSION:-"Default"} NDK_API=${NDK_API:-"Default"} Configuration=${Configuration:-"Default"} XBMC_DEPENDS_ROOT=${XBMC_DEPENDS_ROOT:-"Default"} -DARWIN_ARM_CPU=${DARWIN_ARM_CPU:-"Default"} XCODE_APP=${XCODE_APP:-"Default"} PATH_CHANGE_REV_FILENAME=".last_success_revision" FAILED_BUILD_FILENAME=".last_failed_revision" @@ -22,7 +21,6 @@ case $XBMC_PLATFORM_DIR in DEFAULT_SDK_VERSION=12.2 DEFAULT_XBMC_DEPENDS_ROOT=$WORKSPACE/tools/depends/xbmc-depends DEFAULT_CONFIGURATION="Debug" - DEFAULT_DARWIN_ARM_CPU="armv7" DEFAULT_XCODE_APP="Xcode10.2.app" ;; @@ -83,11 +81,6 @@ then XBMC_DEPENDS_ROOT=$DEFAULT_XBMC_DEPENDS_ROOT fi -if [ "$DARWIN_ARM_CPU" == "Default" ] -then - DARWIN_ARM_CPU=$DEFAULT_DARWIN_ARM_CPU -fi - if [ "$XCODE_APP" == "Default" ] then XCODE_APP=$DEFAULT_XCODE_APP diff --git a/tools/buildsteps/ios/configure-depends b/tools/buildsteps/ios/configure-depends index b53893f869..2f1187d054 100755 --- a/tools/buildsteps/ios/configure-depends +++ b/tools/buildsteps/ios/configure-depends @@ -8,6 +8,5 @@ then --with-tarballs=/Users/Shared/xbmc-depends/tarballs \ --host=arm-apple-darwin \ --with-sdk=$SDK_VERSION \ - --with-cpu=$DARWIN_ARM_CPU \ --prefix=$XBMC_DEPENDS_ROOT $DEBUG_SWITCH fi diff --git a/tools/buildsteps/ios/package b/tools/buildsteps/ios/package index 4f549fe974..72feea0453 100755 --- a/tools/buildsteps/ios/package +++ b/tools/buildsteps/ios/package @@ -6,12 +6,7 @@ cd $WORKSPACE/build;xcodebuild -target deb -jobs $BUILDTHREADS cd $WORKSPACE/build/tools/darwin/packaging/darwin_embedded/ #rename for upload -#e.x. kodi-20130314-8c2fb31-Frodo-ios.deb -if [ "$DARWIN_ARM_CPU" == "arm64" ] -then - UPLOAD_FILENAME="kodi-$(getBuildRevDateStr)-ios64.deb" -else - UPLOAD_FILENAME="kodi-$(getBuildRevDateStr)-ios.deb" -fi +#e.x. kodi-20130314-8c2fb31-Frodo-ios64.deb +UPLOAD_FILENAME="kodi-$(getBuildRevDateStr)-ios64.deb" mkdir $WORKSPACE/tools/darwin/packaging/ios mv *.deb $WORKSPACE/tools/darwin/packaging/ios/$UPLOAD_FILENAME diff --git a/tools/darwin/Support/Codesign.command b/tools/darwin/Support/Codesign.command index 8772013e62..5c9ebce10c 100755 --- a/tools/darwin/Support/Codesign.command +++ b/tools/darwin/Support/Codesign.command @@ -7,16 +7,7 @@ LIST_BINARY_EXTENSIONS="dylib so 0 vis pvr app" GEN_ENTITLEMENTS="$NATIVEPREFIX/bin/gen_entitlements.py" IOS11_ENTITLEMENTS="$XBMC_DEPENDS/share/ios11_entitlements.xml" -LDID32="$NATIVEPREFIX/bin/ldid32" -LDID64="$NATIVEPREFIX/bin/ldid64" -LDID=${LDID32} - -if [ "${CURRENT_ARCH}" == "arm64" ] || [ "${CURRENT_ARCH}" == "aarch64" ]; then - LDID=${LDID64} - echo "using LDID64" -else - echo "using LDID32" -fi +LDID="$NATIVEPREFIX/bin/ldid" if [ ! -f ${GEN_ENTITLEMENTS} ]; then echo "error: $GEN_ENTITLEMENTS not found. Codesign won't work." diff --git a/tools/darwin/packaging/darwin_embedded/mkdeb-darwin_embedded.sh.in b/tools/darwin/packaging/darwin_embedded/mkdeb-darwin_embedded.sh.in index 23d654f1a5..b5d9e10dca 100644 --- a/tools/darwin/packaging/darwin_embedded/mkdeb-darwin_embedded.sh.in +++ b/tools/darwin/packaging/darwin_embedded/mkdeb-darwin_embedded.sh.in @@ -9,7 +9,6 @@ SWITCH=`echo $1 | tr [A-Z] [a-z]` DIRNAME=`dirname $0` DSYM_TARGET_DIR=/Users/Shared/xbmc-depends/dSyms DSYM_FILENAME=@APP_NAME@.app.dSYM -ARM64=false PP_DEVICE=iOS if [ "@PLATFORM@" == "appletvos" ]; then PP_DEVICE=tvOS @@ -28,11 +27,6 @@ else exit 1 fi -# check if build is 64-bit -if [[ "$(lipo -info "$APP/@APP_NAME@" | awk '{print $NF}')" == "arm64" ]]; then - ARM64=true -fi - #copy bzip2 of dsym to xbmc-depends install dir if [ -d $DSYM ]; then if [ -d $DSYM_TARGET_DIR ]; then @@ -64,10 +58,7 @@ fi # customize revision string [ ! -z "$2" ] && REVISION="$2" -ARCHIVE=${PACKAGE}_${VERSION}-${REVISION}_@PLATFORM@-arm.deb - -# package identifier for arm64 -$ARM64 && ARCHIVE=${PACKAGE_ARM64}_${VERSION}-${REVISION}_@PLATFORM@-arm.deb +ARCHIVE=${PACKAGE_ARM64}_${VERSION}-${REVISION}_@PLATFORM@-arm.deb SIZE="$(du -s -k ${APP} | awk '{print $1}')" @@ -77,16 +68,11 @@ rm -rf $DIRNAME/$ARCHIVE # create debian control file. mkdir -p $DIRNAME/$PACKAGE/DEBIAN -if $ARM64; then - echo "Package: $PACKAGE_ARM64" > $DIRNAME/$PACKAGE/DEBIAN/control - echo "Name: @APP_NAME@-${PP_DEVICE} (64-bit)" >> $DIRNAME/$PACKAGE/DEBIAN/control - echo "Pre-Depends: cy+cpu.arm64" >> $DIRNAME/$PACKAGE/DEBIAN/control - echo "Conflicts: $PACKAGE" >> $DIRNAME/$PACKAGE/DEBIAN/control - echo "Replaces: $PACKAGE" >> $DIRNAME/$PACKAGE/DEBIAN/control -else - echo "Package: $PACKAGE" > $DIRNAME/$PACKAGE/DEBIAN/control - echo "Name: @APP_NAME@-${PP_DEVICE}" >> $DIRNAME/$PACKAGE/DEBIAN/control -fi +echo "Package: $PACKAGE_ARM64" > $DIRNAME/$PACKAGE/DEBIAN/control +echo "Name: @APP_NAME@-${PP_DEVICE} (64-bit)" >> $DIRNAME/$PACKAGE/DEBIAN/control +echo "Pre-Depends: cy+cpu.arm64" >> $DIRNAME/$PACKAGE/DEBIAN/control +echo "Conflicts: $PACKAGE" >> $DIRNAME/$PACKAGE/DEBIAN/control +echo "Replaces: $PACKAGE" >> $DIRNAME/$PACKAGE/DEBIAN/control echo "Priority: Extra" >> $DIRNAME/$PACKAGE/DEBIAN/control echo "Version: $VERSION-$REVISION" >> $DIRNAME/$PACKAGE/DEBIAN/control echo "Architecture: @CMAKE_SYSTEM_NAME@-@CPU@" >> $DIRNAME/$PACKAGE/DEBIAN/control diff --git a/tools/depends/README.md b/tools/depends/README.md index ecc1633d50..e9b6be8e08 100644 --- a/tools/depends/README.md +++ b/tools/depends/README.md @@ -23,11 +23,8 @@ Paths below are examples. If you want to build Kodi, follow our **[build guides] **macOS (x86_64)** `./configure --host=x86_64-apple-darwin` -**iOS (armv7)** -`./configure --host=arm-apple-darwin` - **iOS (arm64)** -`./configure --host=arm-apple-darwin --with-cpu=arm64` +`./configure --host=arm-apple-darwin` **tvOS** `./configure --host=arm-apple-darwin --with-platform=tvos` diff --git a/tools/depends/configure.ac b/tools/depends/configure.ac index ddf4040a5d..ecab75518f 100644 --- a/tools/depends/configure.ac +++ b/tools/depends/configure.ac @@ -346,51 +346,32 @@ case $host in # setup which sdk to use if test "$use_platform" = "tvos"; then - use_cpu=arm64 target_platform=appletvos - platform_min_version="$target_platform-version-min=11.0" else - # setup which cpu to use - if test "x$use_cpu" = "xauto"; then - use_cpu=armv7 - fi - target_platform=iphoneos - platform_min_version="$target_platform-version-min=9.0" + fi + platform_min_version="$target_platform-version-min=11.0" + + # setup which cpu to use + if test "x$use_cpu" = "xauto"; then + use_cpu=arm64 fi found_sdk_version=[`$use_xcodebuild -showsdks | grep "\-sdk $target_platform" | awk '{ print $2}'`] use_sdk="${use_sdk:-$found_sdk_version}" sdk_name=$target_platform$use_sdk - if test "$use_platform" = "tvos"; then - case $use_sdk in - 11.*);; - 12.*);; - 13.*);; - *) - AC_MSG_ERROR(error in configure of --with-sdk=$use_sdk) - ;; - esac - else - case $use_sdk in - 9.*);; - 10.*);; - 11.*);; - 12.*);; - 13.*);; - *) - AC_MSG_ERROR(error in configure of --with-sdk=$use_sdk) - ;; - esac - fi + case $use_sdk in + 11.*);; + 12.*);; + 13.*);; + *) + AC_MSG_ERROR(error in configure of --with-sdk=$use_sdk) + ;; + esac platform_os="darwin_embedded" - if [ ! test "x$use_cpu" = "xarm64" ]; then - platform_cflags+=" -mcpu=cortex-a8 -mfpu=neon" - platform_ldflags+=" -Wl,-segalign,4000" - fi platform_cflags+=" -ftree-vectorize -pipe -Wno-trigraphs -fpascal-strings" platform_cflags+=" -Wreturn-type -Wunused-variable -fmessage-length=0 -gdwarf-2" platform_cflags+=" -Wno-error=implicit-function-declaration" diff --git a/tools/depends/native/ldid/Makefile b/tools/depends/native/ldid/Makefile index 970b4cccb3..36149b47c3 100644 --- a/tools/depends/native/ldid/Makefile +++ b/tools/depends/native/ldid/Makefile @@ -5,30 +5,21 @@ DEPS= ../../Makefile.include Makefile # lib name, version LIBNAME=ldid -VERSION32=1.0.0 -VERSION64=2 -SOURCE32=$(LIBNAME)-$(VERSION32) -SOURCE64=$(LIBNAME)-$(VERSION64) -ARCHIVE32=$(SOURCE32).tar.gz -ARCHIVE64=$(SOURCE64).tar.gz +VERSION=2 +SOURCE=$(LIBNAME)-$(VERSION) +ARCHIVE=$(SOURCE).tar.gz all: .installed-$(PLATFORM) -$(TARBALLS_LOCATION)/$(ARCHIVE32): - cd $(TARBALLS_LOCATION); $(RETRIEVE_TOOL) $(RETRIEVE_TOOL_FLAGS) $(BASE_URL)/$(ARCHIVE32) +$(TARBALLS_LOCATION)/$(ARCHIVE): + cd $(TARBALLS_LOCATION); $(RETRIEVE_TOOL) $(RETRIEVE_TOOL_FLAGS) $(BASE_URL)/$(ARCHIVE) -$(TARBALLS_LOCATION)/$(ARCHIVE64): - cd $(TARBALLS_LOCATION); $(RETRIEVE_TOOL) $(RETRIEVE_TOOL_FLAGS) $(BASE_URL)/$(ARCHIVE64) - -$(PLATFORM): $(TARBALLS_LOCATION)/$(ARCHIVE32) $(TARBALLS_LOCATION)/$(ARCHIVE64) $(DEPS) +$(PLATFORM): $(TARBALLS_LOCATION)/$(ARCHIVE) $(DEPS) rm -rf $(PLATFORM)/*; mkdir -p $(PLATFORM) - cd $(PLATFORM); $(ARCHIVE_TOOL) $(ARCHIVE_TOOL_FLAGS) $(TARBALLS_LOCATION)/$(ARCHIVE32) - mv $(PLATFORM)/ldid $(PLATFORM)/ldid32 - cd $(PLATFORM); $(ARCHIVE_TOOL) $(ARCHIVE_TOOL_FLAGS) $(TARBALLS_LOCATION)/$(ARCHIVE64) - mv $(PLATFORM)/ldid $(PLATFORM)/ldid64 + cd $(PLATFORM); $(ARCHIVE_TOOL) $(ARCHIVE_TOOL_FLAGS) $(TARBALLS_LOCATION)/$(ARCHIVE) .installed-$(PLATFORM):$(PLATFORM) - cp $(PLATFORM)/ldid* $(NATIVEPREFIX)/bin + cp $(PLATFORM)/ldid $(NATIVEPREFIX)/bin touch $@ clean: diff --git a/tools/depends/target/Toolchain.cmake.in b/tools/depends/target/Toolchain.cmake.in index fd39b2c80c..d51c89383f 100644 --- a/tools/depends/target/Toolchain.cmake.in +++ b/tools/depends/target/Toolchain.cmake.in @@ -66,7 +66,7 @@ if(CORE_SYSTEM_NAME STREQUAL darwin_embedded) # set this to YES once we have a deployment target of at least iOS 6.0 set(CMAKE_XCODE_ATTRIBUTE_ENABLE_BITCODE "NO") set(CMAKE_XCODE_ATTRIBUTE_TARGETED_DEVICE_FAMILY "1,2") - set(CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET 9.0) + set(CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET 11.0) endif() endif() endif() diff --git a/tools/depends/target/config-binaddons.site.in b/tools/depends/target/config-binaddons.site.in index 8958057778..9e47373a2d 100644 --- a/tools/depends/target/config-binaddons.site.in +++ b/tools/depends/target/config-binaddons.site.in @@ -69,10 +69,6 @@ if test "@platform_os@" = "android"; then fi if test "@platform_os@" = "darwin_embedded"; then - ac_cv_search_clock_gettime=no - ac_cv_func_clock_gettime=no - ac_cv_func_getentropy=no - # tweaks for flac if test "${ac_unique_file}" = "src/flac/main.c" ; then # compiler barfs if we use -O3/O2 for flac diff --git a/tools/depends/target/config.site.in b/tools/depends/target/config.site.in index 734776a69b..36fef0a689 100644 --- a/tools/depends/target/config.site.in +++ b/tools/depends/target/config.site.in @@ -81,12 +81,8 @@ if test "@platform_os@" = "android"; then fi if test "@platform_os@" = "darwin_embedded"; then - ac_cv_search_clock_gettime=no - ac_cv_func_clock_gettime=no + # there is no clock_settime on iOS/tvOS as of latest version 13.X ac_cv_func_clock_settime=no - ac_cv_func_futimens=no - ac_cv_func_getentropy=no - ac_cv_func_utimensat=no # tweaks for libffi if test "${PACKAGE_NAME}" = "libffi" ; then diff --git a/tools/depends/target/ffmpeg/CMakeLists.txt b/tools/depends/target/ffmpeg/CMakeLists.txt index 9227dc9427..f3959f9bb7 100644 --- a/tools/depends/target/ffmpeg/CMakeLists.txt +++ b/tools/depends/target/ffmpeg/CMakeLists.txt @@ -66,11 +66,7 @@ elseif(CORE_SYSTEM_NAME STREQUAL android) endif() list(APPEND ffmpeg_conf --target-os=linux --extra-libs=-liconv --disable-linux-perf) elseif(CORE_SYSTEM_NAME STREQUAL darwin_embedded) - if(NOT CPU MATCHES arm64) - list(APPEND ffmpeg_conf --cpu=cortex-a8) - else() - list(APPEND ffmpeg_conf "--as=${NATIVEPREFIX}/bin/gas-preprocessor.pl -arch aarch64 -- ${CMAKE_C_COMPILER}") - endif() + list(APPEND ffmpeg_conf "--as=${NATIVEPREFIX}/bin/gas-preprocessor.pl -arch aarch64 -- ${CMAKE_C_COMPILER}") list(APPEND ffmpeg_conf --disable-decoder=mpeg_xvmc --disable-crystalhd --enable-videotoolbox --target-os=darwin) elseif(CORE_SYSTEM_NAME STREQUAL osx) diff --git a/tools/depends/target/ffmpeg/Makefile b/tools/depends/target/ffmpeg/Makefile index c5f5c2a370..d3ce41fe36 100644 --- a/tools/depends/target/ffmpeg/Makefile +++ b/tools/depends/target/ffmpeg/Makefile @@ -48,12 +48,7 @@ ifeq ($(OS), android) ffmpg_config += --target-os=linux --extra-libs=-liconv --disable-linux-perf endif ifeq ($(OS), darwin_embedded) - ifneq ($(CPU), arm64) - ffmpg_config += --cpu=cortex-a8 - ffmpg_config += --as="$(NATIVEPREFIX)/bin/gas-preprocessor.pl -- $(CC)" - else - ffmpg_config += --as="$(NATIVEPREFIX)/bin/gas-preprocessor.pl -arch aarch64 -- $(CC)" - endif + ffmpg_config += --as="$(NATIVEPREFIX)/bin/gas-preprocessor.pl -arch aarch64 -- $(CC)" ffmpg_config += --yasmexe=$(NATIVEPREFIX)/bin/yasm ffmpg_config += --disable-decoder=mpeg_xvmc --disable-crystalhd --enable-videotoolbox ffmpg_config += --target-os=darwin @@ -85,9 +80,6 @@ $(PLATFORM): $(TARBALLS_LOCATION)/$(ARCHIVE) $(DEPS) cd $(PLATFORM);\ CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" \ ./configure $(ffmpg_config) -ifeq ($(OS), darwin_embedded) - cd $(PLATFORM); sed -i -- 's/HAVE_CLOCK_GETTIME 1/HAVE_CLOCK_GETTIME 0/g' config.h -endif .build-$(PLATFORM): $(PLATFORM) $(MAKE) -C $(PLATFORM) diff --git a/tools/depends/target/samba-gplv3/02-cross_compile.patch b/tools/depends/target/samba-gplv3/02-cross_compile.patch index a6dd9aa2ef..01a8bbebbc 100644 --- a/tools/depends/target/samba-gplv3/02-cross_compile.patch +++ b/tools/depends/target/samba-gplv3/02-cross_compile.patch @@ -77,18 +77,6 @@ headers='stdio.h', msg='Checking simple C program') ---- a/lib/replace/system/time.h -+++ b/lib/replace/system/time.h -@@ -74,9 +74,6 @@ - #endif - - #ifndef HAVE_CLOCK_GETTIME --/* CLOCK_REALTIME is required by POSIX */ --#define CLOCK_REALTIME 0 --typedef int clockid_t; - int rep_clock_gettime(clockid_t clk_id, struct timespec *tp); - #endif - /* make sure we have a best effort CUSTOM_CLOCK_MONOTONIC we can rely on. --- a/lib/replace/wscript +++ b/lib/replace/wscript @@ -37,6 +37,7 @@ diff --git a/tools/depends/target/samba-gplv3/Makefile b/tools/depends/target/samba-gplv3/Makefile index 71a0e8ecdf..b051561d82 100644 --- a/tools/depends/target/samba-gplv3/Makefile +++ b/tools/depends/target/samba-gplv3/Makefile @@ -51,12 +51,6 @@ ifeq ($(OS), darwin_embedded) cd $(PLATFORM); patch -p1 -i ../crt_extensions.patch endif cd $(PLATFORM); $(CONFIGURE) -ifeq ($(TARGET_PLATFORM), iphoneos) - # clock_gettime is only available since macOS 10.12, iOS 10.0 and tvOS 10.0 - # build sytem doesn't include time.h for the check, - # so the version guards have no effect - sed -ie -E "s/#define (HAVE_(CLOCK_GETTIME|CLOCK_MONOTONIC|CLOCK_PROCESS_CPUTIME_ID|CLOCK_REALTIME)) 1/\/* #undef \1 *\//g" $(PLATFORM)/bin/default/include/config.h -endif $(LIBDYLIB): $(PLATFORM) cd $(PLATFORM); WAF_MAKE=1 ./buildtools/bin/waf --targets=smbclient |