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')
|
into('tools')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
from(project(':utilities').file('env_blacklist')) {
|
||||||
|
into('tools')
|
||||||
|
}
|
||||||
|
|
||||||
from(project(':utilities').file('build/libs')) {
|
from(project(':utilities').file('build/libs')) {
|
||||||
into('konan/lib')
|
into('konan/lib')
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -74,6 +74,11 @@ java_opts=(-ea \
|
|||||||
"-Dkonan.home=${KONAN_HOME}" \
|
"-Dkonan.home=${KONAN_HOME}" \
|
||||||
-Dfile.encoding=UTF-8)
|
-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"
|
KONAN_JAR="${KONAN_HOME}/konan/lib/backend.native.jar"
|
||||||
KOTLIN_JAR="${KONAN_HOME}/konan/lib/kotlin-compiler.jar"
|
KOTLIN_JAR="${KONAN_HOME}/konan/lib/kotlin-compiler.jar"
|
||||||
STUB_GENERATOR_JAR="${KONAN_HOME}/konan/lib/StubGenerator.jar"
|
STUB_GENERATOR_JAR="${KONAN_HOME}/konan/lib/StubGenerator.jar"
|
||||||
|
|||||||
@@ -103,6 +103,7 @@ jar {
|
|||||||
|
|
||||||
processResources {
|
processResources {
|
||||||
expand('konanVersion': konanVersion)
|
expand('konanVersion': konanVersion)
|
||||||
|
from(rootProject.project(':utilities').file('env_blacklist'))
|
||||||
}
|
}
|
||||||
|
|
||||||
publishing {
|
publishing {
|
||||||
|
|||||||
+14
-6
@@ -19,6 +19,13 @@ internal abstract class KonanCliRunner(val toolName: String, val fullName: Strin
|
|||||||
|
|
||||||
override fun getName() = toolName
|
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 =
|
override val classpath: FileCollection =
|
||||||
project.fileTree("${project.konanHome}/konan/lib/")
|
project.fileTree("${project.konanHome}/konan/lib/")
|
||||||
.apply { include("*.jar") }
|
.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.")
|
"Please change it to the compiler root directory and rerun the build.")
|
||||||
}
|
}
|
||||||
|
|
||||||
project.javaexec {
|
project.javaexec { spec ->
|
||||||
it.main = mainClass
|
spec.main = mainClass
|
||||||
it.classpath = classpath
|
spec.classpath = classpath
|
||||||
it.jvmArgs(jvmArgs)
|
spec.jvmArgs(jvmArgs)
|
||||||
it.args(listOf(toolName) + args)
|
spec.args(listOf(toolName) + args)
|
||||||
it.environment(environment)
|
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