Enable focused project generation

This commit is contained in:
Ali 2020-12-04 08:16:01 +00:00
parent c820b7284e
commit ed7dc522ba
6 changed files with 23 additions and 182 deletions

View File

@ -398,6 +398,7 @@ project: check_env kill_xcode
bazel_app_debug_arm64:
APP_VERSION="${APP_VERSION}" \
TELEGRAM_DISABLE_EXTENSIONS="0" \
build-system/prepare-build.sh Telegram distribution
"${BAZEL}" build Telegram/Telegram ${BAZEL_CACHE_FLAGS} ${BAZEL_COMMON_FLAGS} ${BAZEL_DEBUG_FLAGS} \
-c dbg \
@ -409,6 +410,7 @@ bazel_app_arm64:
APP_VERSION="${APP_VERSION}" \
BAZEL_CACHE_DIR="${BAZEL_CACHE_DIR}" \
BAZEL_HTTP_CACHE_URL="${BAZEL_HTTP_CACHE_URL}" \
TELEGRAM_DISABLE_EXTENSIONS="0" \
build-system/prepare-build.sh Telegram distribution
"${BAZEL}" build Telegram/Telegram ${BAZEL_CACHE_FLAGS} ${BAZEL_COMMON_FLAGS} ${BAZEL_OPT_FLAGS} \
-c opt \
@ -422,6 +424,7 @@ bazel_app_armv7:
APP_VERSION="${APP_VERSION}" \
BAZEL_CACHE_DIR="${BAZEL_CACHE_DIR}" \
BAZEL_HTTP_CACHE_URL="${BAZEL_HTTP_CACHE_URL}" \
TELEGRAM_DISABLE_EXTENSIONS="0" \
build-system/prepare-build.sh Telegram distribution
"${BAZEL}" build Telegram/Telegram ${BAZEL_CACHE_FLAGS} ${BAZEL_COMMON_FLAGS} ${BAZEL_OPT_FLAGS} \
-c opt \
@ -435,6 +438,7 @@ bazel_app:
APP_VERSION="${APP_VERSION}" \
BAZEL_CACHE_DIR="${BAZEL_CACHE_DIR}" \
BAZEL_HTTP_CACHE_URL="${BAZEL_HTTP_CACHE_URL}" \
TELEGRAM_DISABLE_EXTENSIONS="0" \
build-system/prepare-build.sh Telegram distribution
"${BAZEL}" build Telegram/Telegram ${BAZEL_CACHE_FLAGS} ${BAZEL_COMMON_FLAGS} ${BAZEL_OPT_FLAGS} \
-c opt \
@ -444,28 +448,24 @@ bazel_app:
--output_groups=+dsyms \
--verbose_failures
bazel_prepare_development_build:
bazel_project: kill_xcode
APP_VERSION="${APP_VERSION}" \
BAZEL_CACHE_DIR="${BAZEL_CACHE_DIR}" \
BAZEL_HTTP_CACHE_URL="${BAZEL_HTTP_CACHE_URL}" \
TELEGRAM_DISABLE_EXTENSIONS="0" \
build-system/prepare-build.sh Telegram development
bazel_project: kill_xcode bazel_prepare_development_build
APP_VERSION="${APP_VERSION}" \
BAZEL_CACHE_DIR="${BAZEL_CACHE_DIR}" \
BAZEL_HTTP_CACHE_URL="${BAZEL_HTTP_CACHE_URL}" \
build-system/generate-xcode-project.sh Telegram
bazel_soft_project: bazel_prepare_development_build
bazel_project_noextensions: kill_xcode
APP_VERSION="${APP_VERSION}" \
BAZEL_CACHE_DIR="${BAZEL_CACHE_DIR}" \
BAZEL_HTTP_CACHE_URL="${BAZEL_HTTP_CACHE_URL}" \
TELEGRAM_DISABLE_EXTENSIONS="1" \
build-system/prepare-build.sh Telegram development
APP_VERSION="${APP_VERSION}" \
BAZEL_CACHE_DIR="${BAZEL_CACHE_DIR}" \
BAZEL_HTTP_CACHE_URL="${BAZEL_HTTP_CACHE_URL}" \
build-system/generate-xcode-project.sh Telegram
bazel_opt_project: bazel_prepare_development_build
APP_VERSION="${APP_VERSION}" \
BAZEL_CACHE_DIR="${BAZEL_CACHE_DIR}" \
BAZEL_HTTP_CACHE_URL="${BAZEL_HTTP_CACHE_URL}" \
GENERATE_OPT_PROJECT=1 \
build-system/generate-xcode-project.sh Telegram

View File

@ -24,6 +24,7 @@ load(
"telegram_bundle_id",
"telegram_aps_environment",
"telegram_team_id",
"telegram_disable_extensions",
)
config_setting(
@ -1528,7 +1529,7 @@ ios_application(
strings = [
":AppStringResources",
],
extensions = [
extensions = [] if telegram_disable_extensions else [
":ShareExtension",
":NotificationContentExtension",
":NotificationServiceExtension",

View File

@ -1,104 +0,0 @@
#!/bin/sh
copy_provisioning_profiles () {
if [ "$CODESIGNING_DATA_PATH" = "" ]; then
>&2 echo "CODESIGNING_DATA_PATH not defined"
exit 1
fi
PROFILES_TYPE="$1"
case "$PROFILES_TYPE" in
development)
EXPECTED_VARIABLES=(\
WALLET_DEVELOPMENT_PROVISIONING_PROFILE_APP \
)
;;
distribution)
EXPECTED_VARIABLES=(\
WALLET_DISTRIBUTION_PROVISIONING_PROFILE_APP \
)
;;
*)
echo "Unknown build provisioning type: $PROFILES_TYPE"
exit 1
;;
esac
EXPECTED_VARIABLE_NAMES=(\
Wallet \
)
local SEARCH_NAMES=()
local MISSING_VARIABLES="0"
for VARIABLE_NAME in ${EXPECTED_VARIABLES[@]}; do
if [ "${!VARIABLE_NAME}" = "" ]; then
echo "$VARIABLE_NAME not defined"
MISSING_VARIABLES="1"
fi
done
if [ "$MISSING_VARIABLES" == "1" ]; then
exit 1
fi
local VARIABLE_COUNT=${#EXPECTED_VARIABLES[@]}
for (( i=0; i<$VARIABLE_COUNT; i=i+1 )); do
VARIABLE_NAME="${EXPECTED_VARIABLES[$(($i))]}"
SEARCH_NAMES=("${SEARCH_NAMES[@]}" "${EXPECTED_VARIABLE_NAMES[$i]}" "${!VARIABLE_NAME}")
done
local DATA_PATH="build-input/data"
local OUTPUT_DIRECTORY="$DATA_PATH/provisioning-profiles"
rm -rf "$OUTPUT_DIRECTORY"
mkdir -p "$OUTPUT_DIRECTORY"
local BUILD_PATH="$OUTPUT_DIRECTORY/BUILD"
touch "$BUILD_PATH"
echo "exports_files([" >> "$BUILD_PATH"
local ELEMENT_COUNT=${#SEARCH_NAMES[@]}
local REMAINDER=$(($ELEMENT_COUNT % 2))
if [ $REMAINDER != 0 ]; then
>&2 echo "Expecting key-value pairs"
exit 1
fi
for PROFILE in `find "$CODESIGNING_DATA_PATH" -type f -name "*.mobileprovision"`; do
PROFILE_DATA=$(security cms -D -i "$PROFILE")
PROFILE_NAME=$(/usr/libexec/PlistBuddy -c "Print :Name" /dev/stdin <<< $(echo $PROFILE_DATA))
for (( i=0; i<$ELEMENT_COUNT; i=i+2 )); do
ID=${SEARCH_NAMES[$i]}
SEARCH_NAME=${SEARCH_NAMES[$(($i + 1))]}
if [ "$PROFILE_NAME" = "$SEARCH_NAME" ]; then
VARIABLE_NAME="FOUND_PROFILE_$ID"
if [ "${!VARIABLE_NAME}" = "" ]; then
eval "FOUND_PROFILE_$ID=\"$PROFILE\""
else
>&2 echo "Found multiple profiles with name \"$SEARCH_NAME\""
exit 1
fi
fi
done
done
for (( i=0; i<$ELEMENT_COUNT; i=i+2 )); do
ID=${SEARCH_NAMES[$i]}
SEARCH_NAME=${SEARCH_NAMES[$(($i + 1))]}
VARIABLE_NAME="FOUND_PROFILE_$ID"
FOUND_PROFILE="${!VARIABLE_NAME}"
if [ "$FOUND_PROFILE" = "" ]; then
>&2 echo "Profile \"$SEARCH_NAME\" not found"
exit 1
fi
cp "$FOUND_PROFILE" "$OUTPUT_DIRECTORY/$ID.mobileprovision"
echo " \"$ID.mobileprovision\"," >> $BUILD_PATH
done
echo "])" >> "$BUILD_PATH"
}

View File

@ -35,6 +35,7 @@ prepare_build_variables () {
IS_APPSTORE_BUILD \
APPSTORE_ID \
APP_SPECIFIC_URL_SCHEME \
TELEGRAM_DISABLE_EXTENSIONS \
)
local MISSING_VARIABLES="0"
@ -66,4 +67,10 @@ prepare_build_variables () {
echo "telegram_appstore_id = \"$APPSTORE_ID\"" >> "$VARIABLES_PATH"
echo "telegram_app_specific_url_scheme = \"$APP_SPECIFIC_URL_SCHEME\"" >> "$VARIABLES_PATH"
echo "telegram_aps_environment = \"$APS_ENVIRONMENT\"" >> "$VARIABLES_PATH"
if [ "$TELEGRAM_DISABLE_EXTENSIONS" == "1" ]; then
echo "telegram_disable_extensions = True" >> "$VARIABLES_PATH"
else
echo "telegram_disable_extensions = False" >> "$VARIABLES_PATH"
fi
}

View File

@ -1,63 +0,0 @@
#!/bin/sh
set -e
prepare_build_variables () {
BUILD_TYPE="$1"
case "$BUILD_TYPE" in
development)
APS_ENVIRONMENT="development"
;;
distribution)
APS_ENVIRONMENT="production"
;;
*)
echo "Unknown build provisioning type: $BUILD_TYPE"
exit 1
;;
esac
local BAZEL="$(which bazel)"
if [ "$BAZEL" = "" ]; then
echo "bazel not found in PATH"
exit 1
fi
local EXPECTED_VARIABLES=(\
BUILD_NUMBER \
WALLET_APP_VERSION \
WALLET_BUNDLE_ID \
WALLET_DEVELOPMENT_TEAM \
)
local MISSING_VARIABLES="0"
for VARIABLE_NAME in ${EXPECTED_VARIABLES[@]}; do
if [ "${!VARIABLE_NAME}" = "" ]; then
echo "$VARIABLE_NAME not defined"
MISSING_VARIABLES="1"
fi
done
if [ "$MISSING_VARIABLES" == "1" ]; then
exit 1
fi
local VARIABLES_DIRECTORY="build-input/data"
mkdir -p "$VARIABLES_DIRECTORY"
local VARIABLES_PATH="$VARIABLES_DIRECTORY/variables.bzl"
rm -f "$VARIABLES_PATH"
echo "wallet_build_number = \"$BUILD_NUMBER\"" >> "$VARIABLES_PATH"
echo "wallet_version = \"$WALLET_APP_VERSION\"" >> "$VARIABLES_PATH"
echo "wallet_bundle_id = \"$WALLET_BUNDLE_ID\"" >> "$VARIABLES_PATH"
echo "wallet_api_id = \"$WALLET_API_ID\"" >> "$VARIABLES_PATH"
echo "wallet_team_id = \"$WALLET_DEVELOPMENT_TEAM\"" >> "$VARIABLES_PATH"
echo "telegram_api_id = \"1\"" >> "$VARIABLES_PATH"
echo "telegram_api_hash = \"1\"" >> "$VARIABLES_PATH"
echo "telegram_app_center_id = \"1\"" >> "$VARIABLES_PATH"
echo "telegram_appstore_id = \"1\"" >> "$VARIABLES_PATH"
echo "telegram_is_internal_build = \"false\"" >> "$VARIABLES_PATH"
echo "telegram_is_appstore_build = \"true\"" >> "$VARIABLES_PATH"
echo "telegram_app_specific_url_scheme = \"\"" >> "$VARIABLES_PATH"
}

View File

@ -643,6 +643,8 @@ open class NavigationController: UINavigationController, ContainableController,
visibleModalCount = 0
}
if previousModalContainer == nil {
topModalIsFlat = modalContainer.isFlat
topModalDismissProgress = modalContainer.dismissProgress
if case .compact = layout.metrics.widthClass {
modalContainer.keyboardViewManager = self.keyboardViewManager
@ -665,8 +667,6 @@ open class NavigationController: UINavigationController, ContainableController,
}
}
}
topModalIsFlat = modalContainer.isFlat
}
switch navigationLayout.root {