feat: новые функции, исправлены критические ошибки сборки и баги интерфейса, больше подписей в файлах

This commit is contained in:
ichmagmaus 812
2026-03-04 22:06:16 +01:00
parent a614259289
commit f033954db2
81 changed files with 1256 additions and 298 deletions
+2 -1
View File
@@ -49,6 +49,8 @@ genrule(
BUILD_ARCH="arm64"
elif [ "$(TARGET_CPU)" == "ios_sim_arm64" ]; then
BUILD_ARCH="sim_arm64"
elif [ "$(TARGET_CPU)" == "ios_x86_64" ]; then
BUILD_ARCH="sim_x86_64"
else
echo "Unsupported architecture $(TARGET_CPU)"
fi
@@ -119,4 +121,3 @@ objc_library(
"//visibility:public",
],
)
+7 -1
View File
@@ -18,6 +18,13 @@ elif [ "$ARCH" = "sim_arm64" ]; then
custom_xcode_path="$(xcode-select -p)/"
sed -i '' "s|/Applications/Xcode.app/Contents/Developer/|$custom_xcode_path|g" "$TARGET_CROSSFILE"
CROSSFILE="../package/crossfiles/arm64-iPhoneSimulator-custom.meson"
elif [ "$ARCH" = "sim_x86_64" ]; then
TARGET_CROSSFILE="$BUILD_DIR/dav1d/package/crossfiles/x86_64-iPhoneSimulator-custom.meson"
cp "$BUILD_DIR/dav1d/package/crossfiles/x86_64-iPhoneSimulator.meson" "$TARGET_CROSSFILE"
custom_xcode_path="$(xcode-select -p)/"
sed -i '' "s|/Applications/Xcode.app/Contents/Developer/|$custom_xcode_path|g" "$TARGET_CROSSFILE"
CROSSFILE="../package/crossfiles/x86_64-iPhoneSimulator-custom.meson"
MESON_OPTIONS="$MESON_OPTIONS -Denable_asm=false"
else
echo "Unsupported architecture $ARCH"
exit 1
@@ -33,4 +40,3 @@ ninja
popd
popd
+16
View File
@@ -37,6 +37,22 @@ elif [ "$ARCH" = "sim_arm64" ]; then
echo "set(CMAKE_SYSTEM_PROCESSOR aarch64)" >> toolchain.cmake
echo "set(CMAKE_C_COMPILER $(xcode-select -p)/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang)" >> toolchain.cmake
cmake -G"Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake -DCMAKE_OSX_SYSROOT=${IOS_SYSROOT[0]} -DPNG_SUPPORTED=FALSE -DENABLE_SHARED=FALSE -DWITH_JPEG8=1 -DBUILD=10000 -DCMAKE_POLICY_VERSION_MINIMUM=3.5 ../mozjpeg
make
elif [ "$ARCH" = "x86_64" ]; then
IOS_PLATFORMDIR="$(xcode-select -p)/Platforms/iPhoneSimulator.platform"
IOS_SYSROOT=($IOS_PLATFORMDIR/Developer/SDKs/iPhoneSimulator*.sdk)
export CFLAGS="-Wall -arch x86_64 --target=x86_64-apple-ios13.0-simulator -miphonesimulator-version-min=13.0 -funwind-tables"
cd "$BUILD_DIR"
mkdir build
cd build
touch toolchain.cmake
echo "set(CMAKE_SYSTEM_NAME Darwin)" >> toolchain.cmake
echo "set(CMAKE_SYSTEM_PROCESSOR x86_64)" >> toolchain.cmake
echo "set(CMAKE_C_COMPILER $(xcode-select -p)/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang)" >> toolchain.cmake
cmake -G"Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake -DCMAKE_OSX_SYSROOT=${IOS_SYSROOT[0]} -DPNG_SUPPORTED=FALSE -DENABLE_SHARED=FALSE -DWITH_JPEG8=1 -DBUILD=10000 -DCMAKE_POLICY_VERSION_MINIMUM=3.5 ../mozjpeg
make
else
+8 -1
View File
@@ -38,8 +38,15 @@ genrule(
BUILD_ARCH="arm64"
elif [ "$(TARGET_CPU)" == "ios_sim_arm64" ]; then
BUILD_ARCH="sim_arm64"
elif [ "$(TARGET_CPU)" == "ios_x86_64" ]; then
BUILD_ARCH="sim_x86_64"
elif [ "$(TARGET_CPU)" == "darwin_arm64" ]; then
BUILD_ARCH="sim_arm64"
elif [ "$(TARGET_CPU)" == "darwin_x86_64" ]; then
BUILD_ARCH="sim_x86_64"
else
echo "Unsupported architecture $(TARGET_CPU)"
echo "Unsupported architecture $(TARGET_CPU)" >&2
exit 1
fi
BUILD_DIR="$(RULEDIR)/build_$${BUILD_ARCH}"
+60 -5
View File
@@ -17,36 +17,91 @@ options="$options -DOPENSSL_INCLUDE_DIR=${OPENSSL_DIR}/src/include"
options="$options -DCMAKE_BUILD_TYPE=Release"
options="$options -DIOS_DEPLOYMENT_TARGET=13.0"
# Bazel genrule runs with PATH=/bin:/usr/bin, so resolve CPU count without
# relying on /usr/sbin being in PATH.
if [ -n "${TD_BUILD_JOBS:-}" ]; then
BUILD_JOBS="$TD_BUILD_JOBS"
elif [ -x /usr/sbin/sysctl ]; then
BUILD_JOBS="$(/usr/sbin/sysctl -n hw.ncpu)"
elif command -v getconf >/dev/null 2>&1; then
BUILD_JOBS="$(getconf _NPROCESSORS_ONLN 2>/dev/null || true)"
fi
case "$BUILD_JOBS" in
''|*[!0-9]*)
BUILD_JOBS=8
;;
esac
if [ "$BUILD_JOBS" -lt 1 ]; then
BUILD_JOBS=1
fi
MAX_BUILD_JOBS="${TD_MAX_BUILD_JOBS:-8}"
case "$MAX_BUILD_JOBS" in
''|*[!0-9]*)
MAX_BUILD_JOBS=8
;;
esac
if [ "$MAX_BUILD_JOBS" -lt 1 ]; then
MAX_BUILD_JOBS=8
fi
if [ "$BUILD_JOBS" -gt "$MAX_BUILD_JOBS" ]; then
BUILD_JOBS="$MAX_BUILD_JOBS"
fi
if [ -z "$BUILD_JOBS" ]; then
BUILD_JOBS=8
fi
cd "$BUILD_DIR"
# Generate source files
mkdir native-build
cd native-build
cmake -DTD_GENERATE_SOURCE_FILES=ON ../td
cmake --build . -- -j$(sysctl -n hw.ncpu)
cmake --build . -- -j"$BUILD_JOBS"
cd ..
if [ "$ARCH" = "arm64" ]; then
IOS_PLATFORMDIR="$(xcode-select -p)/Platforms/iPhoneOS.platform"
IOS_SYSROOT=($IOS_PLATFORMDIR/Developer/SDKs/iPhoneOS*.sdk)
export CFLAGS="-arch arm64 --target=arm64-apple-ios13.0 -miphoneos-version-min=13.0"
cmake_arch="arm64"
clang_target="arm64-apple-ios13.0"
minimum_target_flag="-miphoneos-version-min=13.0"
cmake_processor="aarch64"
elif [ "$ARCH" = "sim_arm64" ]; then
IOS_PLATFORMDIR="$(xcode-select -p)/Platforms/iPhoneSimulator.platform"
IOS_SYSROOT=($IOS_PLATFORMDIR/Developer/SDKs/iPhoneSimulator*.sdk)
export CFLAGS="-arch arm64 --target=arm64-apple-ios13.0-simulator -miphonesimulator-version-min=13.0"
cmake_arch="arm64"
clang_target="arm64-apple-ios13.0-simulator"
minimum_target_flag="-miphonesimulator-version-min=13.0"
cmake_processor="aarch64"
elif [ "$ARCH" = "sim_x86_64" ]; then
IOS_PLATFORMDIR="$(xcode-select -p)/Platforms/iPhoneSimulator.platform"
IOS_SYSROOT=($IOS_PLATFORMDIR/Developer/SDKs/iPhoneSimulator*.sdk)
cmake_arch="x86_64"
clang_target="x86_64-apple-ios13.0-simulator"
minimum_target_flag="-miphonesimulator-version-min=13.0"
cmake_processor="x86_64"
else
echo "Unsupported architecture $ARCH"
exit 1
fi
export CFLAGS="-arch ${cmake_arch} --target=${clang_target} ${minimum_target_flag}"
export CXXFLAGS="$CFLAGS"
export LDFLAGS="$CFLAGS"
# Common build steps
mkdir build
cd build
touch toolchain.cmake
echo "set(CMAKE_SYSTEM_NAME Darwin)" >> toolchain.cmake
echo "set(CMAKE_SYSTEM_PROCESSOR aarch64)" >> toolchain.cmake
echo "set(CMAKE_SYSTEM_PROCESSOR ${cmake_processor})" >> toolchain.cmake
echo "set(CMAKE_OSX_ARCHITECTURES ${cmake_arch})" >> toolchain.cmake
echo "set(CMAKE_C_COMPILER $(xcode-select -p)/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang)" >> toolchain.cmake
echo "set(CMAKE_CXX_COMPILER $(xcode-select -p)/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++)" >> toolchain.cmake
echo "set(CMAKE_C_COMPILER_TARGET ${clang_target})" >> toolchain.cmake
echo "set(CMAKE_CXX_COMPILER_TARGET ${clang_target})" >> toolchain.cmake
cmake -G"Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake -DCMAKE_OSX_SYSROOT=${IOS_SYSROOT[0]} ../td $options
make tde2e -j$(sysctl -n hw.ncpu)
make tde2e -j"$BUILD_JOBS"