1# -*- python -*- 2# Copyright 2011 The Native Client Authors. All rights reserved. 3# Use of this source code is governed by a BSD-style license that can 4# be found in the LICENSE file. 5 6import os 7import gyp_extract 8 9Import('env') 10 11# Underlay $SOURCE_ROOT/ppapi in this directory. 12Dir('.').addRepository(Dir('#/../ppapi')) 13 14# TODO(ncbray): reenable 15# http://code.google.com/p/nativeclient/issues/detail?id=1643 16env.FilterOut(CCFLAGS=['-Wswitch-enum']) 17 18# Load ppapi_cpp.gypi 19# Unfortunately gyp_extract does not handle variables or includes so we must 20# pull the list of sources from ppapi_sources.gypi directly. 21 22ppapi_sources_gypi = open( 23 env.File('$SOURCE_ROOT/ppapi/ppapi_sources.gypi').abspath, 'r').read() 24ppapi_sources_list = eval(ppapi_sources_gypi)['variables']['cpp_source_files'] 25 26ppapi_cpp_gypi = gyp_extract.LoadGypFile( 27 env.File('$SOURCE_ROOT/ppapi/ppapi_cpp.gypi').abspath) 28 29cpp_sources = ( 30 [src for src in ppapi_sources_list if src.endswith('.cc')] + 31 gyp_extract.GypTargetSources( 32 ppapi_cpp_gypi, 'ppapi_cpp', '.*\.cc') 33) 34libppapi_cpp = env.NaClSdkLibrary('libppapi_cpp', cpp_sources) 35env.AddLibraryToSdk(libppapi_cpp) 36 37env.Append(CPPPATH=[ 38 '$SOURCE_ROOT/ppapi/lib/gl/gles2', 39 '$SOURCE_ROOT/ppapi/lib/gl/include', 40 ]) 41 42env.Prepend(CPPDEFINES=['GL_GLEXT_PROTOTYPES']) 43 44# Load ppapi_gl.gypi 45ppapi_gl_gypi = gyp_extract.LoadGypFile( 46 env.File('$SOURCE_ROOT/ppapi/ppapi_gl.gypi').abspath) 47 48# From ppapi_gl.gypi:ppapi_gles2:.*\.c 49gles2_sources = gyp_extract.GypTargetSources( 50 ppapi_gl_gypi, 'ppapi_gles2', '.*\.c') 51libppapi_gles2 = env.NaClSdkLibrary('libppapi_gles2', gles2_sources) 52 53env.AddLibraryToSdk(libppapi_gles2) 54