samples: Blacklist some xcode environment variables
This patch unsets some Xcode environment variables in gradle plugin and command line runner.
This commit is contained in:
@@ -191,6 +191,10 @@ task distCompiler(type: Copy) {
|
||||
into('tools')
|
||||
}
|
||||
|
||||
from(project(':utilities').file('env_blacklist')) {
|
||||
into('tools')
|
||||
}
|
||||
|
||||
from(project(':utilities').file('build/libs')) {
|
||||
into('konan/lib')
|
||||
}
|
||||
|
||||
@@ -74,6 +74,11 @@ java_opts=(-ea \
|
||||
"-Dkonan.home=${KONAN_HOME}" \
|
||||
-Dfile.encoding=UTF-8)
|
||||
|
||||
# Unset some environment variables which are set by XCode and may potentially affect the tool executed.
|
||||
for VAR in `cat "${KONAN_HOME}/tools/env_blacklist"`; do
|
||||
unset $VAR
|
||||
done
|
||||
|
||||
KONAN_JAR="${KONAN_HOME}/konan/lib/backend.native.jar"
|
||||
KOTLIN_JAR="${KONAN_HOME}/konan/lib/kotlin-compiler.jar"
|
||||
STUB_GENERATOR_JAR="${KONAN_HOME}/konan/lib/StubGenerator.jar"
|
||||
|
||||
@@ -103,6 +103,7 @@ jar {
|
||||
|
||||
processResources {
|
||||
expand('konanVersion': konanVersion)
|
||||
from(rootProject.project(':utilities').file('env_blacklist'))
|
||||
}
|
||||
|
||||
publishing {
|
||||
|
||||
+14
-6
@@ -19,6 +19,13 @@ internal abstract class KonanCliRunner(val toolName: String, val fullName: Strin
|
||||
|
||||
override fun getName() = toolName
|
||||
|
||||
// We need to unset some environment variables which are set by XCode and may potentially affect the tool executed.
|
||||
protected val blacklistEnvironment: List<String> by lazy {
|
||||
KonanPlugin::class.java.getResourceAsStream("/env_blacklist")?.let { stream ->
|
||||
stream.reader().use { it.readLines() }
|
||||
} ?: emptyList<String>()
|
||||
}
|
||||
|
||||
override val classpath: FileCollection =
|
||||
project.fileTree("${project.konanHome}/konan/lib/")
|
||||
.apply { include("*.jar") }
|
||||
@@ -39,12 +46,13 @@ internal abstract class KonanCliRunner(val toolName: String, val fullName: Strin
|
||||
"Please change it to the compiler root directory and rerun the build.")
|
||||
}
|
||||
|
||||
project.javaexec {
|
||||
it.main = mainClass
|
||||
it.classpath = classpath
|
||||
it.jvmArgs(jvmArgs)
|
||||
it.args(listOf(toolName) + args)
|
||||
it.environment(environment)
|
||||
project.javaexec { spec ->
|
||||
spec.main = mainClass
|
||||
spec.classpath = classpath
|
||||
spec.jvmArgs(jvmArgs)
|
||||
spec.args(listOf(toolName) + args)
|
||||
blacklistEnvironment.forEach { spec.environment.remove(it) }
|
||||
spec.environment(environment)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,107 @@
|
||||
ADDITIONAL_SDKS
|
||||
APPLICATION_EXTENSION_API_ONLY
|
||||
ARCHS
|
||||
ARCHS_STANDARD
|
||||
ARCHS_STANDARD_32_64_BIT
|
||||
ARCHS_STANDARD_32_BIT
|
||||
ARCHS_STANDARD_64_BIT
|
||||
ARCHS_STANDARD_INCLUDING_64_BIT
|
||||
ARCHS_UNIVERSAL_IPHONE_OS
|
||||
CLANG_ANALYZER_NONNULL
|
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION
|
||||
CLANG_CXX_LANGUAGE_STANDARD
|
||||
CLANG_CXX_LIBRARY
|
||||
CLANG_ENABLE_MODULES
|
||||
CLANG_ENABLE_OBJC_ARC
|
||||
CLANG_MODULES_BUILD_SESSION_FILE
|
||||
CLANG_WARN_BOOL_CONVERSION
|
||||
CLANG_WARN_CONSTANT_CONVERSION
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE
|
||||
CLANG_WARN_DOCUMENTATION_COMMENTS
|
||||
CLANG_WARN_EMPTY_BODY
|
||||
CLANG_WARN_ENUM_CONVERSION
|
||||
CLANG_WARN_INFINITE_RECURSION
|
||||
CLANG_WARN_INT_CONVERSION
|
||||
CLANG_WARN_OBJC_ROOT_CLASS
|
||||
CLANG_WARN_SUSPICIOUS_MOVE
|
||||
CLANG_WARN_UNREACHABLE_CODE
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH
|
||||
CURRENT_ARCH
|
||||
DEVELOPER_APPLICATIONS_DIR
|
||||
DEVELOPER_BIN_DIR
|
||||
DEVELOPER_DIR
|
||||
DEVELOPER_FRAMEWORKS_DIR
|
||||
DEVELOPER_FRAMEWORKS_DIR_QUOTED
|
||||
DEVELOPER_LIBRARY_DIR
|
||||
DEVELOPER_SDK_DIR
|
||||
DEVELOPER_TOOLS_DIR
|
||||
DEVELOPER_USR_DIR
|
||||
DT_TOOLCHAIN_DIR
|
||||
ENABLE_BITCODE
|
||||
ENABLE_DEFAULT_HEADER_SEARCH_PATHS
|
||||
ENABLE_STRICT_OBJC_MSGSEND
|
||||
FRAMEWORK_SEARCH_PATHS
|
||||
GENERATE_MASTER_OBJECT_FILE
|
||||
GENERATE_PROFILING_CODE
|
||||
HEADER_SEARCH_PATHS
|
||||
INLINE_PRIVATE_FRAMEWORKS
|
||||
KEEP_PRIVATE_EXTERNS
|
||||
LD_NO_PIE
|
||||
LD_RUNPATH_SEARCH_PATHS
|
||||
LINK_WITH_STANDARD_LIBRARIES
|
||||
MACH_O_TYPE
|
||||
NATIVE_ARCH
|
||||
NATIVE_ARCH_32_BIT
|
||||
NATIVE_ARCH_64_BIT
|
||||
NATIVE_ARCH_ACTUAL
|
||||
NO_COMMON
|
||||
ONLY_ACTIVE_ARCH
|
||||
PATH_PREFIXES_EXCLUDED_FROM_HEADER_DEPENDENCIES
|
||||
PLATFORM_DEVELOPER_APPLICATIONS_DIR
|
||||
PLATFORM_DEVELOPER_BIN_DIR
|
||||
PLATFORM_DEVELOPER_LIBRARY_DIR
|
||||
PLATFORM_DEVELOPER_SDK_DIR
|
||||
PLATFORM_DEVELOPER_TOOLS_DIR
|
||||
PLATFORM_DEVELOPER_USR_DIR
|
||||
PLATFORM_DIR
|
||||
SDKROOT
|
||||
SDK_DIR
|
||||
SDK_DIR_iphoneos11_0
|
||||
SDK_NAME
|
||||
SDK_NAMES
|
||||
SDK_PRODUCT_BUILD_VERSION
|
||||
SDK_VERSION
|
||||
SDK_VERSION_ACTUAL
|
||||
SDK_VERSION_MAJOR
|
||||
SDK_VERSION_MINOR
|
||||
SHARED_DERIVED_FILE_DIR
|
||||
SHARED_FRAMEWORKS_FOLDER_PATH
|
||||
SHARED_PRECOMPS_DIR
|
||||
SHARED_SUPPORT_FOLDER_PATH
|
||||
SYSTEM_ADMIN_APPS_DIR
|
||||
SYSTEM_APPS_DIR
|
||||
SYSTEM_CORE_SERVICES_DIR
|
||||
SYSTEM_DEMOS_DIR
|
||||
SYSTEM_DEVELOPER_APPS_DIR
|
||||
SYSTEM_DEVELOPER_BIN_DIR
|
||||
SYSTEM_DEVELOPER_DEMOS_DIR
|
||||
SYSTEM_DEVELOPER_DIR
|
||||
SYSTEM_DEVELOPER_DOC_DIR
|
||||
SYSTEM_DEVELOPER_GRAPHICS_TOOLS_DIR
|
||||
SYSTEM_DEVELOPER_JAVA_TOOLS_DIR
|
||||
SYSTEM_DEVELOPER_PERFORMANCE_TOOLS_DIR
|
||||
SYSTEM_DEVELOPER_RELEASENOTES_DIR
|
||||
SYSTEM_DEVELOPER_TOOLS
|
||||
SYSTEM_DEVELOPER_TOOLS_DOC_DIR
|
||||
SYSTEM_DEVELOPER_TOOLS_RELEASENOTES_DIR
|
||||
SYSTEM_DEVELOPER_USR_DIR
|
||||
SYSTEM_DEVELOPER_UTILITIES_DIR
|
||||
SYSTEM_DOCUMENTATION_DIR
|
||||
SYSTEM_KEXT_INSTALL_PATH
|
||||
SYSTEM_LIBRARY_DIR
|
||||
TOOLCHAINS
|
||||
TOOLCHAIN_DIR
|
||||
USE_DYNAMIC_NO_PIC
|
||||
USE_HEADERMAP
|
||||
VALID_ARCHS
|
||||
XCODE_APP_SUPPORT_DIR
|
||||
Reference in New Issue
Block a user