Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
glslang
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Chen Yisong
glslang
Commits
8f824265
Commit
8f824265
authored
Apr 28, 2017
by
David Seifert
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Make test suite optional by using CTest
parent
5a5699bd
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
83 additions
and
76 deletions
+83
-76
CMakeLists.txt
CMakeLists.txt
+3
-0
CMakeLists.txt
External/CMakeLists.txt
+31
-29
CMakeLists.txt
gtests/CMakeLists.txt
+49
-47
No files found.
CMakeLists.txt
View file @
8f824265
...
@@ -15,6 +15,9 @@ option(ENABLE_HLSL "Enables HLSL input support" ON)
...
@@ -15,6 +15,9 @@ option(ENABLE_HLSL "Enables HLSL input support" ON)
project
(
glslang
)
project
(
glslang
)
# make testing optional
include
(
CTest
)
if
(
ENABLE_AMD_EXTENSIONS
)
if
(
ENABLE_AMD_EXTENSIONS
)
add_definitions
(
-DAMD_EXTENSIONS
)
add_definitions
(
-DAMD_EXTENSIONS
)
endif
(
ENABLE_AMD_EXTENSIONS
)
endif
(
ENABLE_AMD_EXTENSIONS
)
...
...
External/CMakeLists.txt
View file @
8f824265
# Suppress all warnings from external projects.
# Suppress all warnings from external projects.
set_property
(
DIRECTORY APPEND PROPERTY COMPILE_OPTIONS -w
)
set_property
(
DIRECTORY APPEND PROPERTY COMPILE_OPTIONS -w
)
if
(
TARGET gmock
)
if
(
BUILD_TESTING
)
message
(
STATUS
"Google Mock already configured - use it"
)
if
(
TARGET gmock
)
elseif
(
IS_DIRECTORY
${
CMAKE_CURRENT_SOURCE_DIR
}
/googletest
)
message
(
STATUS
"Google Mock already configured - use it"
)
# We need to make sure Google Test does not mess up with the
elseif
(
IS_DIRECTORY
${
CMAKE_CURRENT_SOURCE_DIR
}
/googletest
)
# global CRT settings on Windows.
# We need to make sure Google Test does not mess up with the
if
(
WIN32
)
# global CRT settings on Windows.
set
(
gtest_force_shared_crt ON CACHE BOOL
""
FORCE
)
if
(
WIN32
)
endif
(
WIN32
)
set
(
gtest_force_shared_crt ON CACHE BOOL
""
FORCE
)
add_subdirectory
(
googletest
)
endif
(
WIN32
)
set
(
GTEST_TARGETS
add_subdirectory
(
googletest
)
gtest
set
(
GTEST_TARGETS
gtest_main
gtest
gmock
gtest_main
gmock_main
)
gmock
foreach
(
target
${
GTEST_TARGETS
}
)
gmock_main
)
set_property
(
TARGET
${
target
}
PROPERTY FOLDER gtest
)
foreach
(
target
${
GTEST_TARGETS
}
)
endforeach
()
set_property
(
TARGET
${
target
}
PROPERTY FOLDER gtest
)
mark_as_advanced
(
gmock_build_tests
endforeach
()
BUILD_GMOCK
mark_as_advanced
(
gmock_build_tests
BUILD_GTEST
BUILD_GMOCK
BUILD_SHARED_LIBS
BUILD_GTEST
gtest_build_samples
BUILD_SHARED_LIBS
gtest_build_tests
gtest_build_samples
gtest_disable_pthreads
gtest_build_tests
gtest_force_shared_crt
gtest_disable_pthreads
gtest_hide_internal_symbols
)
gtest_force_shared_crt
else
()
gtest_hide_internal_symbols
)
message
(
STATUS
else
()
"Google Mock was not found - tests based on that will not build"
)
message
(
STATUS
"Google Mock was not found - tests based on that will not build"
)
endif
()
endif
()
endif
()
gtests/CMakeLists.txt
View file @
8f824265
if
(
TARGET gmock
)
if
(
BUILD_TESTING
)
message
(
STATUS
"Google Mock found - building tests"
)
if
(
TARGET gmock
)
message
(
STATUS
"Google Mock found - building tests"
)
set
(
TEST_SOURCES
set
(
TEST_SOURCES
# Framework related source files
# Framework related source files
${
CMAKE_CURRENT_SOURCE_DIR
}
/Initializer.h
${
CMAKE_CURRENT_SOURCE_DIR
}
/Initializer.h
${
CMAKE_CURRENT_SOURCE_DIR
}
/main.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/main.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Settings.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Settings.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Settings.h
${
CMAKE_CURRENT_SOURCE_DIR
}
/Settings.h
${
CMAKE_CURRENT_SOURCE_DIR
}
/TestFixture.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/TestFixture.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/TestFixture.h
${
CMAKE_CURRENT_SOURCE_DIR
}
/TestFixture.h
# Test related source files
# Test related source files
${
CMAKE_CURRENT_SOURCE_DIR
}
/AST.FromFile.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/AST.FromFile.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/BuiltInResource.FromFile.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/BuiltInResource.FromFile.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Config.FromFile.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Config.FromFile.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/HexFloat.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/HexFloat.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Hlsl.FromFile.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Hlsl.FromFile.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Link.FromFile.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Link.FromFile.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Link.FromFile.Vk.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Link.FromFile.Vk.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Pp.FromFile.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Pp.FromFile.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Spv.FromFile.cpp
${
CMAKE_CURRENT_SOURCE_DIR
}
/Spv.FromFile.cpp
# -- Remapper tests
# -- Remapper tests
${
CMAKE_CURRENT_SOURCE_DIR
}
/Remap.FromFile.cpp
)
${
CMAKE_CURRENT_SOURCE_DIR
}
/Remap.FromFile.cpp
)
add_executable
(
glslangtests
${
TEST_SOURCES
}
)
add_executable
(
glslangtests
${
TEST_SOURCES
}
)
set_property
(
TARGET glslangtests PROPERTY FOLDER tests
)
set_property
(
TARGET glslangtests PROPERTY FOLDER tests
)
glslang_set_link_args
(
glslangtests
)
glslang_set_link_args
(
glslangtests
)
install
(
TARGETS glslangtests
install
(
TARGETS glslangtests
RUNTIME DESTINATION
${
CMAKE_INSTALL_BINDIR
}
)
RUNTIME DESTINATION
${
CMAKE_INSTALL_BINDIR
}
)
set
(
GLSLANG_TEST_DIRECTORY
"
${
CMAKE_CURRENT_SOURCE_DIR
}
/../Test"
)
set
(
GLSLANG_TEST_DIRECTORY
"
${
CMAKE_CURRENT_SOURCE_DIR
}
/../Test"
)
# Supply a default test root directory, so that manual testing
# Supply a default test root directory, so that manual testing
# doesn't have to specify the --test-root option in the normal
# doesn't have to specify the --test-root option in the normal
# case that you want to use the tests from the same source tree.
# case that you want to use the tests from the same source tree.
target_compile_definitions
(
glslangtests
target_compile_definitions
(
glslangtests
PRIVATE GLSLANG_TEST_DIRECTORY=
"
${
GLSLANG_TEST_DIRECTORY
}
"
)
PRIVATE GLSLANG_TEST_DIRECTORY=
"
${
GLSLANG_TEST_DIRECTORY
}
"
)
target_include_directories
(
glslangtests PRIVATE
target_include_directories
(
glslangtests PRIVATE
${
CMAKE_CURRENT_SOURCE_DIR
}
${
CMAKE_CURRENT_SOURCE_DIR
}
${
PROJECT_SOURCE_DIR
}
${
PROJECT_SOURCE_DIR
}
${
gmock_SOURCE_DIR
}
/include
${
gmock_SOURCE_DIR
}
/include
${
gtest_SOURCE_DIR
}
/include
)
${
gtest_SOURCE_DIR
}
/include
)
set
(
LIBRARIES
set
(
LIBRARIES
SPVRemapper glslang OSDependent OGLCompiler glslang
SPVRemapper glslang OSDependent OGLCompiler glslang
SPIRV glslang-default-resource-limits
)
SPIRV glslang-default-resource-limits
)
if
(
ENABLE_HLSL
)
if
(
ENABLE_HLSL
)
set
(
LIBRARIES
${
LIBRARIES
}
HLSL
)
set
(
LIBRARIES
${
LIBRARIES
}
HLSL
)
endif
(
ENABLE_HLSL
)
endif
(
ENABLE_HLSL
)
target_link_libraries
(
glslangtests PRIVATE
${
LIBRARIES
}
gmock
)
target_link_libraries
(
glslangtests PRIVATE
${
LIBRARIES
}
gmock
)
add_test
(
NAME glslang-gtests
add_test
(
NAME glslang-gtests
COMMAND glslangtests --test-root
"
${
GLSLANG_TEST_DIRECTORY
}
"
)
COMMAND glslangtests --test-root
"
${
GLSLANG_TEST_DIRECTORY
}
"
)
endif
()
endif
()
endif
()
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment