blob: 67b2739e837acab1dc542944698f07887b586c6d [file] [log] [blame]
# Copyright 2016 The SwiftShader Authors. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import("../../swiftshader.gni")
import("//testing/libfuzzer/fuzzer_test.gni")
# Need a separate config to ensure the warnings are added to the end.
config("swiftshader_opengl_compiler_private_config") {
if (is_win) {
cflags = [
"/wd4005", # macro redefinition (in autogenerated code)
"/wd4201", # nameless struct/union
"/wd4267", # conversion from size_t to int/unsigned int
"/wd4702", # unreachable code (in autogenerated code)
"/wd5030", # attribute is not recognized
]
if (!is_debug) {
cflags += [ "/wd4189" ] # local variable is initialized but not referenced (variables only used in ASSERTS)
}
} else {
cflags = [ "-Wno-sign-compare" ]
if (!is_debug) {
cflags += [ "-Wno-unused-variable" ] # local variable is initialized but not referenced (variables only used in ASSERTS)
}
}
}
config("swiftshader_translator_disable_pool_alloc") {
defines = [ "SWIFTSHADER_TRANSLATOR_DISABLE_POOL_ALLOC" ]
}
swiftshader_source_set("swiftshader_opengl_compiler") {
deps = [
"preprocessor:swiftshader_opengl_preprocessor",
]
sources = [
"AnalyzeCallDepth.cpp",
"Compiler.cpp",
"Diagnostics.cpp",
"DirectiveHandler.cpp",
"InfoSink.cpp",
"Initialize.cpp",
"InitializeParseContext.cpp",
"IntermTraverse.cpp",
"Intermediate.cpp",
"OutputASM.cpp",
"ParseHelper.cpp",
"PoolAlloc.cpp",
"SymbolTable.cpp",
"TranslatorASM.cpp",
"ValidateLimitations.cpp",
"ValidateSwitch.cpp",
"debug.cpp",
"glslang_lex.cpp",
"glslang_tab.cpp",
"intermOut.cpp",
"parseConst.cpp",
"util.cpp",
]
if (use_fuzzing_engine) {
all_dependent_configs = [ ":swiftshader_translator_disable_pool_alloc" ]
}
if (is_linux || is_chromeos || is_mac || is_fuchsia) {
sources += [ "ossource_posix.cpp" ]
} else if (is_win) {
sources += [ "ossource_win.cpp" ]
}
configs = [ ":swiftshader_opengl_compiler_private_config" ]
include_dirs = [
"..",
"../..",
"../../../include",
]
}