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
c858d7bd
Unverified
Commit
c858d7bd
authored
Jun 30, 2020
by
John Kessenich
Committed by
GitHub
Jun 30, 2020
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #2301 from ben-clayton/split-libs
CMake: break up glslang into smaller static libs
parents
8f4251a7
b8c3386e
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
66 additions
and
34 deletions
+66
-34
CMakeLists.txt
SPIRV/CMakeLists.txt
+2
-2
CMakeLists.txt
glslang/CMakeLists.txt
+64
-32
No files found.
SPIRV/CMakeLists.txt
View file @
c858d7bd
...
@@ -60,12 +60,12 @@ if(ENABLE_OPT)
...
@@ -60,12 +60,12 @@ if(ENABLE_OPT)
PRIVATE
${
spirv-tools_SOURCE_DIR
}
/include
PRIVATE
${
spirv-tools_SOURCE_DIR
}
/include
PRIVATE
${
spirv-tools_SOURCE_DIR
}
/source
PRIVATE
${
spirv-tools_SOURCE_DIR
}
/source
)
)
target_link_libraries
(
SPIRV
glslang
SPIRV-Tools-opt
)
target_link_libraries
(
SPIRV
PRIVATE MachineIndependent
SPIRV-Tools-opt
)
target_include_directories
(
SPIRV PUBLIC
target_include_directories
(
SPIRV PUBLIC
$<BUILD_INTERFACE:
${
CMAKE_CURRENT_SOURCE_DIR
}
/../External>
$<BUILD_INTERFACE:
${
CMAKE_CURRENT_SOURCE_DIR
}
/../External>
$<INSTALL_INTERFACE:
${
CMAKE_INSTALL_INCLUDEDIR
}
/External>
)
$<INSTALL_INTERFACE:
${
CMAKE_INSTALL_INCLUDEDIR
}
/External>
)
else
()
else
()
target_link_libraries
(
SPIRV
glslang
)
target_link_libraries
(
SPIRV
PRIVATE MachineIndependent
)
endif
(
ENABLE_OPT
)
endif
(
ENABLE_OPT
)
if
(
WIN32
)
if
(
WIN32
)
...
...
glslang/CMakeLists.txt
View file @
c858d7bd
...
@@ -11,7 +11,17 @@ if(EMSCRIPTEN OR ENABLE_GLSLANG_JS)
...
@@ -11,7 +11,17 @@ if(EMSCRIPTEN OR ENABLE_GLSLANG_JS)
add_subdirectory
(
OSDependent/Web
)
add_subdirectory
(
OSDependent/Web
)
endif
(
EMSCRIPTEN OR ENABLE_GLSLANG_JS
)
endif
(
EMSCRIPTEN OR ENABLE_GLSLANG_JS
)
set
(
SOURCES
################################################################################
# GenericCodeGen
################################################################################
add_library
(
GenericCodeGen STATIC
GenericCodeGen/CodeGen.cpp
GenericCodeGen/Link.cpp
)
################################################################################
# MachineIndependent
################################################################################
set
(
MACHINEINDEPENDENT_SOURCES
MachineIndependent/glslang.m4
MachineIndependent/glslang.m4
MachineIndependent/glslang.y
MachineIndependent/glslang.y
MachineIndependent/glslang_tab.cpp
MachineIndependent/glslang_tab.cpp
...
@@ -41,26 +51,9 @@ set(SOURCES
...
@@ -41,26 +51,9 @@ set(SOURCES
MachineIndependent/preprocessor/PpScanner.cpp
MachineIndependent/preprocessor/PpScanner.cpp
MachineIndependent/preprocessor/PpTokens.cpp
MachineIndependent/preprocessor/PpTokens.cpp
MachineIndependent/propagateNoContraction.cpp
MachineIndependent/propagateNoContraction.cpp
GenericCodeGen/CodeGen.cpp
)
GenericCodeGen/Link.cpp
CInterface/glslang_c_interface.cpp
)
set
(
HEADERS
set
(
MACHINEINDEPENDENT_HEADERS
Public/ShaderLang.h
Include/arrays.h
Include/BaseTypes.h
Include/Common.h
Include/ConstantUnion.h
Include/glslang_c_interface.h
Include/glslang_c_shader_types.h
Include/InfoSink.h
Include/InitializeGlobals.h
Include/intermediate.h
Include/PoolAlloc.h
Include/ResourceLimits.h
Include/revision.h
Include/ShHandle.h
Include/Types.h
MachineIndependent/attribute.h
MachineIndependent/attribute.h
MachineIndependent/glslang_tab.cpp.h
MachineIndependent/glslang_tab.cpp.h
MachineIndependent/gl_types.h
MachineIndependent/gl_types.h
...
@@ -78,12 +71,11 @@ set(HEADERS
...
@@ -78,12 +71,11 @@ set(HEADERS
MachineIndependent/parseVersions.h
MachineIndependent/parseVersions.h
MachineIndependent/propagateNoContraction.h
MachineIndependent/propagateNoContraction.h
MachineIndependent/preprocessor/PpContext.h
MachineIndependent/preprocessor/PpContext.h
MachineIndependent/preprocessor/PpTokens.h
)
MachineIndependent/preprocessor/PpTokens.h
)
glslang_pch
(
SOURCES MachineIndependent/pch.cpp
)
if
(
ENABLE_HLSL
)
if
(
ENABLE_HLSL
)
list
(
APPEND SOURCES
list
(
APPEND
MACHINEINDEPENDENT_
SOURCES
HLSL/hlslAttributes.cpp
HLSL/hlslAttributes.cpp
HLSL/hlslParseHelper.cpp
HLSL/hlslParseHelper.cpp
HLSL/hlslScanContext.cpp
HLSL/hlslScanContext.cpp
...
@@ -92,7 +84,7 @@ if(ENABLE_HLSL)
...
@@ -92,7 +84,7 @@ if(ENABLE_HLSL)
HLSL/hlslGrammar.cpp
HLSL/hlslGrammar.cpp
HLSL/hlslParseables.cpp
)
HLSL/hlslParseables.cpp
)
list
(
APPEND HEADERS
list
(
APPEND
MACHINEINDEPENDENT_
HEADERS
HLSL/hlslAttributes.h
HLSL/hlslAttributes.h
HLSL/hlslParseHelper.h
HLSL/hlslParseHelper.h
HLSL/hlslTokens.h
HLSL/hlslTokens.h
...
@@ -103,10 +95,39 @@ if(ENABLE_HLSL)
...
@@ -103,10 +95,39 @@ if(ENABLE_HLSL)
HLSL/hlslParseables.h
)
HLSL/hlslParseables.h
)
endif
(
ENABLE_HLSL
)
endif
(
ENABLE_HLSL
)
add_library
(
glslang
${
LIB_TYPE
}
${
BISON_GLSLParser_OUTPUT_SOURCE
}
${
SOURCES
}
${
HEADERS
}
)
add_library
(
MachineIndependent STATIC
${
MACHINEINDEPENDENT_SOURCES
}
${
MACHINEINDEPENDENT_HEADERS
}
)
glslang_pch
(
SOURCES MachineIndependent/pch.cpp
)
target_link_libraries
(
MachineIndependent PRIVATE OGLCompiler OSDependent GenericCodeGen
)
################################################################################
# glslang
################################################################################
set
(
GLSLANG_SOURCES
CInterface/glslang_c_interface.cpp
)
set
(
GLSLANG_HEADERS
Public/ShaderLang.h
Include/arrays.h
Include/BaseTypes.h
Include/Common.h
Include/ConstantUnion.h
Include/glslang_c_interface.h
Include/glslang_c_shader_types.h
Include/InfoSink.h
Include/InitializeGlobals.h
Include/intermediate.h
Include/PoolAlloc.h
Include/ResourceLimits.h
Include/revision.h
Include/ShHandle.h
Include/Types.h
)
add_library
(
glslang
${
LIB_TYPE
}
${
BISON_GLSLParser_OUTPUT_SOURCE
}
${
GLSLANG_SOURCES
}
${
GLSLANG_HEADERS
}
)
set_property
(
TARGET glslang PROPERTY FOLDER glslang
)
set_property
(
TARGET glslang PROPERTY FOLDER glslang
)
set_property
(
TARGET glslang PROPERTY POSITION_INDEPENDENT_CODE ON
)
set_property
(
TARGET glslang PROPERTY POSITION_INDEPENDENT_CODE ON
)
target_link_libraries
(
glslang
OGLCompiler OSD
ependent
)
target_link_libraries
(
glslang
PRIVATE OGLCompiler OSDependent MachineInd
ependent
)
target_include_directories
(
glslang PUBLIC
target_include_directories
(
glslang PUBLIC
$<BUILD_INTERFACE:
${
CMAKE_CURRENT_SOURCE_DIR
}
/..>
$<BUILD_INTERFACE:
${
CMAKE_CURRENT_SOURCE_DIR
}
/..>
$<INSTALL_INTERFACE:
${
CMAKE_INSTALL_INCLUDEDIR
}
>
)
$<INSTALL_INTERFACE:
${
CMAKE_INSTALL_INCLUDEDIR
}
>
)
...
@@ -115,6 +136,9 @@ if(WIN32 AND BUILD_SHARED_LIBS)
...
@@ -115,6 +136,9 @@ if(WIN32 AND BUILD_SHARED_LIBS)
set_target_properties
(
glslang PROPERTIES PREFIX
""
)
set_target_properties
(
glslang PROPERTIES PREFIX
""
)
endif
()
endif
()
################################################################################
# source_groups
################################################################################
if
(
WIN32
)
if
(
WIN32
)
source_group
(
"Public"
REGULAR_EXPRESSION
"Public/*"
)
source_group
(
"Public"
REGULAR_EXPRESSION
"Public/*"
)
source_group
(
"MachineIndependent"
REGULAR_EXPRESSION
"MachineIndependent/[^/]*"
)
source_group
(
"MachineIndependent"
REGULAR_EXPRESSION
"MachineIndependent/[^/]*"
)
...
@@ -125,21 +149,29 @@ if(WIN32)
...
@@ -125,21 +149,29 @@ if(WIN32)
source_group
(
"CInterface"
REGULAR_EXPRESSION
"CInterface/*"
)
source_group
(
"CInterface"
REGULAR_EXPRESSION
"CInterface/*"
)
endif
(
WIN32
)
endif
(
WIN32
)
################################################################################
# install
################################################################################
if
(
ENABLE_GLSLANG_INSTALL
)
if
(
ENABLE_GLSLANG_INSTALL
)
if
(
BUILD_SHARED_LIBS
)
if
(
BUILD_SHARED_LIBS
)
install
(
TARGETS glslang EXPORT glslangTargets
install
(
TARGETS glslang
EXPORT glslangTargets
ARCHIVE DESTINATION
${
CMAKE_INSTALL_LIBDIR
}
ARCHIVE DESTINATION
${
CMAKE_INSTALL_LIBDIR
}
LIBRARY DESTINATION
${
CMAKE_INSTALL_LIBDIR
}
LIBRARY DESTINATION
${
CMAKE_INSTALL_LIBDIR
}
RUNTIME DESTINATION
${
CMAKE_INSTALL_BINDIR
}
)
RUNTIME DESTINATION
${
CMAKE_INSTALL_BINDIR
}
)
else
()
else
()
install
(
TARGETS glslang EXPORT glslangTargets
install
(
TARGETS glslang MachineIndependent GenericCodeGen
EXPORT glslangTargets
ARCHIVE DESTINATION
${
CMAKE_INSTALL_LIBDIR
}
)
ARCHIVE DESTINATION
${
CMAKE_INSTALL_LIBDIR
}
)
endif
()
endif
()
install
(
EXPORT glslangTargets DESTINATION
${
CMAKE_INSTALL_LIBDIR
}
/cmake
)
install
(
EXPORT glslangTargets DESTINATION
${
CMAKE_INSTALL_LIBDIR
}
/cmake
)
endif
(
ENABLE_GLSLANG_INSTALL
)
if
(
ENABLE_GLSLANG_INSTALL
)
set
(
ALL_HEADERS
foreach
(
file
${
HEADERS
}
)
${
GLSLANG_HEADERS
}
${
MACHINEINDEPENDENT_HEADERS
}
)
foreach
(
file
${
ALL_HEADERS
}
)
get_filename_component
(
dir
${
file
}
DIRECTORY
)
get_filename_component
(
dir
${
file
}
DIRECTORY
)
install
(
FILES
${
file
}
DESTINATION
${
CMAKE_INSTALL_INCLUDEDIR
}
/glslang/
${
dir
}
)
install
(
FILES
${
file
}
DESTINATION
${
CMAKE_INSTALL_INCLUDEDIR
}
/glslang/
${
dir
}
)
endforeach
()
endforeach
()
...
...
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