Commit d18e2d8a by John Kessenich

Add CMake support for Visual Studio and installation, with an expected "install"…

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
parent 6b577846
cmake_minimum_required(VERSION 2.8) cmake_minimum_required(VERSION 2.8)
project(glslang)
add_subdirectory(glslang/MachineIndependent) add_subdirectory(glslang/MachineIndependent)
add_subdirectory(glslang/MachineIndependent/preprocessor) add_subdirectory(glslang/MachineIndependent/preprocessor)
add_subdirectory(glslang/GenericCodeGen) add_subdirectory(glslang/GenericCodeGen)
add_subdirectory(glslang/OSDependent/Linux)
add_subdirectory(OGLCompilersDLL) add_subdirectory(OGLCompilersDLL)
add_subdirectory(StandAlone) add_subdirectory(StandAlone)
if(WIN32)
add_subdirectory(glslang/OSDependent/Windows)
elseif(UNIX)
add_subdirectory(glslang/OSDependent/Linux)
else(WIN32)
message("unkown platform")
endif(WIN32)
cmake_minimum_required(VERSION 2.8) 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)
cmake_minimum_required(VERSION 2.8) 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) add_executable(glslangValidator StandAlone.cpp)
target_link_libraries(glslangValidator target_link_libraries(glslangValidator
glslang glslang
GenericCodeGen GenericCodeGen
OSDependent OSDependent
Preprocessor Preprocessor
OGLCompiler OGLCompiler)
pthread) if(UNIX)
target_link_libraries(${target_link_libraries} pthread)
endif(UNIX)
install(TARGETS glslangValidator
RUNTIME DESTINATION bin)
#!/usr/bin/env bash
../build/install/bin/glslangValidator $*
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
TARGETDIR=localResults TARGETDIR=localResults
BASEDIR=baseResults BASEDIR=baseResults
EXE=./glslangValidator EXE=../build/install/bin/glslangValidator
mkdir -p localResults mkdir -p localResults
# #
......
cmake_minimum_required(VERSION 2.8) cmake_minimum_required(VERSION 2.8)
include_directories(. ../OSDependent/Linux ../../OGLCompilersDLL ${CMAKE_CURRENT_BINARY_DIR}) include_directories(. ../../OGLCompilersDLL ${CMAKE_CURRENT_BINARY_DIR})
set(SOURCES if(WIN32)
Constant.cpp include_directories(${include_directories} ../OSDependent/Windows)
InfoSink.cpp elseif(UNIX)
Initialize.cpp include_directories(${include_directories} ../OSDependent/Linux)
IntermTraverse.cpp else(WIN32)
Intermediate.cpp message("unkown platform")
ParseHelper.cpp endif(WIN32)
PoolAlloc.cpp
RemoveTree.cpp set(SOURCES
Scan.cpp Constant.cpp
ShaderLang.cpp InfoSink.cpp
SymbolTable.cpp Initialize.cpp
Versions.cpp IntermTraverse.cpp
intermOut.cpp Intermediate.cpp
limits.cpp ParseHelper.cpp
linkValidate.cpp PoolAlloc.cpp
parseConst.cpp RemoveTree.cpp
reflection.cpp) Scan.cpp
ShaderLang.cpp
find_package(BISON) SymbolTable.cpp
BISON_TARGET(GLSLParser glslang.y ${CMAKE_CURRENT_BINARY_DIR}/gen_glslang_tab.cpp Versions.cpp
COMPILE_FLAGS intermOut.cpp
"--defines=${CMAKE_CURRENT_BINARY_DIR}/glslang_tab.cpp.h") limits.cpp
linkValidate.cpp
add_library(glslang STATIC ${BISON_GLSLParser_OUTPUT_SOURCE} ${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)
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} ${HEADERS})
install(TARGETS glslang
ARCHIVE DESTINATION lib)
cmake_minimum_required(VERSION 2.8) cmake_minimum_required(VERSION 2.8)
include_directories(. ..) include_directories(. ..)
set(SOURCES set(SOURCES
Pp.cpp Pp.cpp
PpAtom.cpp PpAtom.cpp
PpContext.cpp PpContext.cpp
PpMemory.cpp PpMemory.cpp
PpScanner.cpp PpScanner.cpp
PpSymbols.cpp PpSymbols.cpp
PpTokens.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)
cmake_minimum_required(VERSION 2.8) cmake_minimum_required(VERSION 2.8)
include_directories(. ../../../OGLCompilersDLL) include_directories(. ../../../OGLCompilersDLL)
add_library(OSDependent STATIC ossource.cpp) add_library(OSDependent STATIC ossource.cpp osinclude.h)
install(TARGETS OSDependent
ARCHIVE DESTINATION lib)
cmake_minimum_required(VERSION 2.8)
include_directories(. ../../../OGLCompilersDLL)
add_library(OSDependent STATIC ossource.cpp osinclude.h)
install(TARGETS OSDependent
ARCHIVE DESTINATION lib)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment