2013-05-17 19:39:08 -07:00
--
2015-01-02 14:43:11 -08:00
-- Copyright 2010-2015 Branimir Karadzic. All rights reserved.
2013-05-17 19:39:08 -07:00
-- License: http://www.opensource.org/licenses/BSD-2-Clause
--
2013-02-21 21:13:56 -08:00
project " shaderc "
uuid " f3cd2e90-52a4-11e1-b86c-0800200c9a66 "
kind " ConsoleApp "
2015-02-27 15:44:24 -08:00
local GLSL_OPTIMIZER = path.join ( BGFX_DIR , " 3rdparty/glsl-optimizer " )
local FCPP_DIR = path.join ( BGFX_DIR , " 3rdparty/fcpp " )
2013-02-21 21:13:56 -08:00
2014-10-11 12:32:43 -07:00
includedirs {
2015-02-27 15:44:24 -08:00
path.join ( GLSL_OPTIMIZER , " src " ) ,
2014-10-11 12:32:43 -07:00
}
2015-04-13 12:54:45 -07:00
removeflags {
-- GCC 4.9 -O2 + -fno-strict-aliasing don't work together...
" OptimizeSpeed " ,
}
2013-02-21 21:13:56 -08:00
configuration { " vs* " }
includedirs {
2015-02-27 15:44:24 -08:00
path.join ( GLSL_OPTIMIZER , " src/glsl/msvc " ) ,
2013-02-21 21:13:56 -08:00
}
2013-03-20 21:44:17 -07:00
defines { -- glsl-optimizer
" __STDC__ " ,
" __STDC_VERSION__=199901L " ,
" strdup=_strdup " ,
" alloca=_alloca " ,
" isascii=__isascii " ,
}
2013-03-19 23:34:17 -07:00
buildoptions {
" /wd4996 " -- warning C4996: 'strdup': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup.
}
2014-10-18 15:44:45 -07:00
configuration { " mingw* or linux or osx " }
2013-04-08 22:06:00 -07:00
buildoptions {
2015-04-05 11:55:04 -07:00
" -fno-strict-aliasing " , -- glsl-optimizer has bugs if strict aliasing is used.
" -Wno-unused-parameter " ,
2013-04-08 22:06:00 -07:00
}
2015-04-04 19:45:45 -07:00
removebuildoptions {
" -Wshadow " , -- glsl-optimizer is full of -Wshadow warnings ignore it.
}
2013-04-08 22:06:00 -07:00
2013-08-04 20:18:33 -07:00
configuration { " osx " }
links {
" Cocoa.framework " ,
}
2015-05-26 12:08:12 -07:00
configuration { " vs* " }
2013-02-21 21:13:56 -08:00
includedirs {
2015-02-27 15:44:24 -08:00
path.join ( GLSL_OPTIMIZER , " include/c99 " ) ,
2013-02-21 21:13:56 -08:00
}
2015-04-01 13:12:57 +02:00
configuration { " vs* " }
2013-02-21 21:13:56 -08:00
includedirs {
" $(DXSDK_DIR)/include " ,
}
2015-04-04 19:45:45 -07:00
2015-05-26 12:08:12 -07:00
configuration { " vs* or mingw* " }
2013-02-21 21:13:56 -08:00
links {
" d3dcompiler " ,
}
configuration { }
2013-03-20 21:44:17 -07:00
defines { -- fcpp
2013-02-21 21:13:56 -08:00
" NINCLUDE=64 " ,
" NWORK=65536 " ,
" NBUFF=65536 " ,
2014-08-22 09:53:14 -07:00
" OLD_PREPROCESSOR=0 " ,
2013-02-21 21:13:56 -08:00
}
includedirs {
2015-02-27 15:44:24 -08:00
path.join ( BX_DIR , " include " ) ,
path.join ( BGFX_DIR , " include " ) ,
2013-02-21 21:13:56 -08:00
FCPP_DIR ,
2015-02-27 15:44:24 -08:00
path.join ( GLSL_OPTIMIZER , " include " ) ,
path.join ( GLSL_OPTIMIZER , " src/mesa " ) ,
path.join ( GLSL_OPTIMIZER , " src/mapi " ) ,
path.join ( GLSL_OPTIMIZER , " src/glsl " ) ,
2013-02-21 21:13:56 -08:00
}
files {
2015-02-27 15:44:24 -08:00
path.join ( BGFX_DIR , " tools/shaderc/**.cpp " ) ,
path.join ( BGFX_DIR , " tools/shaderc/**.h " ) ,
path.join ( BGFX_DIR , " src/vertexdecl.** " ) ,
path.join ( FCPP_DIR , " **.h " ) ,
path.join ( FCPP_DIR , " cpp1.c " ) ,
path.join ( FCPP_DIR , " cpp2.c " ) ,
path.join ( FCPP_DIR , " cpp3.c " ) ,
path.join ( FCPP_DIR , " cpp4.c " ) ,
path.join ( FCPP_DIR , " cpp5.c " ) ,
path.join ( FCPP_DIR , " cpp6.c " ) ,
path.join ( FCPP_DIR , " cpp6.c " ) ,
path.join ( GLSL_OPTIMIZER , " src/mesa/**.c " ) ,
path.join ( GLSL_OPTIMIZER , " src/glsl/**.cpp " ) ,
path.join ( GLSL_OPTIMIZER , " src/mesa/**.h " ) ,
path.join ( GLSL_OPTIMIZER , " src/glsl/**.c " ) ,
path.join ( GLSL_OPTIMIZER , " src/glsl/**.cpp " ) ,
path.join ( GLSL_OPTIMIZER , " src/glsl/**.h " ) ,
path.join ( GLSL_OPTIMIZER , " src/util/**.c " ) ,
path.join ( GLSL_OPTIMIZER , " src/util/**.h " ) ,
2013-02-21 21:13:56 -08:00
}
2015-04-06 11:38:28 -07:00
removefiles {
2015-02-27 15:44:24 -08:00
path.join ( GLSL_OPTIMIZER , " src/glsl/glcpp/glcpp.c " ) ,
path.join ( GLSL_OPTIMIZER , " src/glsl/glcpp/tests/** " ) ,
path.join ( GLSL_OPTIMIZER , " src/glsl/glcpp/**.l " ) ,
path.join ( GLSL_OPTIMIZER , " src/glsl/glcpp/**.y " ) ,
path.join ( GLSL_OPTIMIZER , " src/glsl/ir_set_program_inouts.cpp " ) ,
path.join ( GLSL_OPTIMIZER , " src/glsl/main.cpp " ) ,
path.join ( GLSL_OPTIMIZER , " src/glsl/builtin_stubs.cpp " ) ,
2013-02-21 21:13:56 -08:00
}
2013-04-28 14:08:59 -07:00
strip ( )