Add CMake support for Visual Studio and installation, with an expected "install" for CMAKE_INSTALL_PREFIX, and updated test scripts to consume the CMake installation.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@25791 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich 2014-03-11 02:10:26 +00:00
parent 6b57784690
commit d18e2d8adc
9 changed files with 134 additions and 50 deletions

View File

@ -1,9 +1,17 @@
cmake_minimum_required(VERSION 2.8)
project(glslang)
add_subdirectory(glslang/MachineIndependent)
add_subdirectory(glslang/MachineIndependent/preprocessor)
add_subdirectory(glslang/GenericCodeGen)
add_subdirectory(glslang/OSDependent/Linux)
add_subdirectory(OGLCompilersDLL)
add_subdirectory(StandAlone)
if(WIN32)
add_subdirectory(glslang/OSDependent/Windows)
elseif(UNIX)
add_subdirectory(glslang/OSDependent/Linux)
else(WIN32)
message("unkown platform")
endif(WIN32)

View File

@ -1,6 +1,15 @@
cmake_minimum_required(VERSION 2.8)
include_directories(. ../glslang ../glslang/OSDependent/Linux)
include_directories(. ../glslang)
if(WIN32)
include_directories(${include_directories} ../glslang/OSDependent/Windows)
elseif(UNIX)
include_directories(${include_directories} ../glslang/OSDependent/Linux)
else(WIN32)
message("unkown platform")
endif(WIN32)
add_library(OGLCompiler STATIC InitializeDll.cpp)
add_library(OGLCompiler STATIC InitializeDll.cpp InitializeDll.h)
install(TARGETS OGLCompiler
ARCHIVE DESTINATION lib)

View File

@ -1,13 +1,25 @@
cmake_minimum_required(VERSION 2.8)
include_directories(. ../glslang/OSDependent/Linux)
include_directories(.)
if(WIN32)
include_directories(${include_directories} ../glslang/OSDependent/Windows)
elseif(UNIX)
include_directories(${include_directories} ../glslang/OSDependent/Linux)
else(WIN32)
message("unkown platform")
endif(WIN32)
add_executable(glslangValidator StandAlone.cpp)
target_link_libraries(glslangValidator
glslang
GenericCodeGen
OSDependent
Preprocessor
OGLCompiler
pthread)
OGLCompiler)
if(UNIX)
target_link_libraries(${target_link_libraries} pthread)
endif(UNIX)
install(TARGETS glslangValidator
RUNTIME DESTINATION bin)

2
Test/glslangValidator Executable file
View File

@ -0,0 +1,2 @@
#!/usr/bin/env bash
../build/install/bin/glslangValidator $*

View File

@ -2,7 +2,7 @@
TARGETDIR=localResults
BASEDIR=baseResults
EXE=./glslangValidator
EXE=../build/install/bin/glslangValidator
mkdir -p localResults
#

View File

@ -1,6 +1,14 @@
cmake_minimum_required(VERSION 2.8)
include_directories(. ../OSDependent/Linux ../../OGLCompilersDLL ${CMAKE_CURRENT_BINARY_DIR})
include_directories(. ../../OGLCompilersDLL ${CMAKE_CURRENT_BINARY_DIR})
if(WIN32)
include_directories(${include_directories} ../OSDependent/Windows)
elseif(UNIX)
include_directories(${include_directories} ../OSDependent/Linux)
else(WIN32)
message("unkown platform")
endif(WIN32)
set(SOURCES
Constant.cpp
InfoSink.cpp
@ -20,10 +28,37 @@ set(SOURCES
parseConst.cpp
reflection.cpp)
set(HEADERS
../Public/ShaderLang.h
gl_types.h
glslang_tab.cpp.h
Initialize.h
localintermediate.h
ParseHelper.h
reflection.h
RemoveTree.h
Scan.h
ScanContext.h
SymbolTable.h
unistd.h
Versions.h)
find_package(BISON)
BISON_TARGET(GLSLParser glslang.y ${CMAKE_CURRENT_BINARY_DIR}/gen_glslang_tab.cpp
if(BISON_FOUND)
message("bison found")
BISON_TARGET(GLSLParser glslang.y ${CMAKE_CURRENT_BINARY_DIR}/gen_glslang_tab.cpp
COMPILE_FLAGS
"--defines=${CMAKE_CURRENT_BINARY_DIR}/glslang_tab.cpp.h")
else(BISON_FOUND)
message("using custom command for bison on glslang.y")
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/glslang_tab.cpp ${CMAKE_CURRENT_BINARY_DIR}/glslang_tab.cpp.h
COMMAND ../../tools/bison.exe --defines=${CMAKE_CURRENT_BINARY_DIR}/glslang_tab.cpp.h -t glslang.y -o ${CMAKE_CURRENT_BINARY_DIR}/glslang_tab.cpp
MAIN_DEPENDENCY glslang.y
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
set(BISON_GLSLParser_OUTPUT_SOURCE glslang_tab.cpp)
endif(BISON_FOUND)
add_library(glslang STATIC ${BISON_GLSLParser_OUTPUT_SOURCE} ${SOURCES})
add_library(glslang STATIC ${BISON_GLSLParser_OUTPUT_SOURCE} ${SOURCES} ${HEADERS})
install(TARGETS glslang
ARCHIVE DESTINATION lib)

View File

@ -10,5 +10,11 @@ set(SOURCES
PpSymbols.cpp
PpTokens.cpp)
add_library(Preprocessor STATIC ${SOURCES})
set(HEADERS
PpContext.h
PpTokens.h)
add_library(Preprocessor STATIC ${SOURCES} ${HEADERS})
install(TARGETS Preprocessor
ARCHIVE DESTINATION lib)

View File

@ -1,6 +1,10 @@
cmake_minimum_required(VERSION 2.8)
include_directories(. ../../../OGLCompilersDLL)
add_library(OSDependent STATIC ossource.cpp)
add_library(OSDependent STATIC ossource.cpp osinclude.h)
install(TARGETS OSDependent
ARCHIVE DESTINATION lib)

View File

@ -0,0 +1,8 @@
cmake_minimum_required(VERSION 2.8)
include_directories(. ../../../OGLCompilersDLL)
add_library(OSDependent STATIC ossource.cpp osinclude.h)
install(TARGETS OSDependent
ARCHIVE DESTINATION lib)