summaryrefslogtreecommitdiffstats
path: root/gfx/angle/src/libGLESv2.gypi
blob: b28eecaf147a6341bdfca6791068c7cc52d5a116 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
# Copyright (c) 2013 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

{
    'variables':
    {
        # These file lists are shared with the GN build.
        'libangle_common_sources':
        [
            'common/BitSetIterator.h',
            'common/Color.h',
            'common/Color.inl',
            'common/Float16ToFloat32.cpp',
            'common/MemoryBuffer.cpp',
            'common/MemoryBuffer.h',
            'common/Optional.h',
            'common/angleutils.cpp',
            'common/angleutils.h',
            'common/debug.cpp',
            'common/debug.h',
            'common/mathutil.cpp',
            'common/mathutil.h',
            'common/matrix_utils.h',
            'common/platform.h',
            'common/string_utils.cpp',
            'common/string_utils.h',
            'common/third_party/numerics/base/logging.h',
            'common/third_party/numerics/base/numerics/safe_conversions.h',
            'common/third_party/numerics/base/numerics/safe_conversions_impl.h',
            'common/third_party/numerics/base/numerics/safe_math.h',
            'common/third_party/numerics/base/numerics/safe_math_impl.h',
            'common/tls.cpp',
            'common/tls.h',
            'common/utilities.cpp',
            'common/utilities.h',
            'common/version.h',
        ],
        'libangle_image_util_sources':
        [
            'image_util/copyimage.cpp',
            'image_util/copyimage.h',
            'image_util/copyimage.inl',
            'image_util/generatemip.h',
            'image_util/generatemip.inl',
            'image_util/imageformats.cpp',
            'image_util/imageformats.h',
            'image_util/loadimage.cpp',
            'image_util/loadimage.h',
            'image_util/loadimage.inl',
            'image_util/loadimage_etc.cpp',
        ],
        'libangle_includes':
        [
            '../include/angle_gl.h',
            '../include/export.h',
            '../include/EGL/egl.h',
            '../include/EGL/eglext.h',
            '../include/EGL/eglplatform.h',
            '../include/GLES2/gl2.h',
            '../include/GLES2/gl2ext.h',
            '../include/GLES2/gl2platform.h',
            '../include/GLES3/gl3.h',
            '../include/GLES3/gl3platform.h',
            '../include/GLES3/gl31.h',
            '../include/GLES3/gl32.h',
            '../include/GLSLANG/ShaderLang.h',
            '../include/GLSLANG/ShaderVars.h',
            '../include/KHR/khrplatform.h',
            '../include/platform/Platform.h',
        ],
        'libangle_sources':
        [
            'common/event_tracer.cpp',
            'common/event_tracer.h',
            'libANGLE/AttributeMap.cpp',
            'libANGLE/AttributeMap.h',
            'libANGLE/BinaryStream.h',
            'libANGLE/Buffer.cpp',
            'libANGLE/Buffer.h',
            'libANGLE/Caps.cpp',
            'libANGLE/Caps.h',
            'libANGLE/Compiler.cpp',
            'libANGLE/Compiler.h',
            'libANGLE/Config.cpp',
            'libANGLE/Config.h',
            'libANGLE/Constants.h',
            'libANGLE/Context.cpp',
            'libANGLE/Context.h',
            'libANGLE/ContextState.cpp',
            'libANGLE/ContextState.h',
            'libANGLE/Debug.cpp',
            'libANGLE/Debug.h',
            'libANGLE/Device.cpp',
            'libANGLE/Device.h',
            'libANGLE/Display.cpp',
            'libANGLE/Display.h',
            'libANGLE/Error.cpp',
            'libANGLE/Error.h',
            'libANGLE/Error.inl',
            'libANGLE/Fence.cpp',
            'libANGLE/Fence.h',
            'libANGLE/Framebuffer.cpp',
            'libANGLE/Framebuffer.h',
            'libANGLE/FramebufferAttachment.cpp',
            'libANGLE/FramebufferAttachment.h',
            'libANGLE/HandleAllocator.cpp',
            'libANGLE/HandleAllocator.h',
            'libANGLE/HandleRangeAllocator.h',
            'libANGLE/HandleRangeAllocator.cpp',
            'libANGLE/Image.h',
            'libANGLE/Image.cpp',
            'libANGLE/ImageIndex.h',
            'libANGLE/ImageIndex.cpp',
            'libANGLE/IndexRangeCache.cpp',
            'libANGLE/IndexRangeCache.h',
            'libANGLE/Path.h',
            'libANGLE/Path.cpp',
            'libANGLE/Platform.cpp',
            'libANGLE/Program.cpp',
            'libANGLE/Program.h',
            'libANGLE/Query.cpp',
            'libANGLE/Query.h',
            'libANGLE/RefCountObject.h',
            'libANGLE/Renderbuffer.cpp',
            'libANGLE/Renderbuffer.h',
            'libANGLE/ResourceManager.cpp',
            'libANGLE/ResourceManager.h',
            'libANGLE/Sampler.cpp',
            'libANGLE/Sampler.h',
            'libANGLE/Shader.cpp',
            'libANGLE/Shader.h',
            'libANGLE/State.cpp',
            'libANGLE/State.h',
            'libANGLE/Stream.cpp',
            'libANGLE/Stream.h',
            'libANGLE/Surface.cpp',
            'libANGLE/Surface.h',
            'libANGLE/Texture.cpp',
            'libANGLE/Texture.h',
            'libANGLE/Thread.cpp',
            'libANGLE/Thread.h',
            'libANGLE/TransformFeedback.cpp',
            'libANGLE/TransformFeedback.h',
            'libANGLE/Uniform.cpp',
            'libANGLE/Uniform.h',
            'libANGLE/Version.h',
            'libANGLE/Version.inl',
            'libANGLE/VertexArray.cpp',
            'libANGLE/VertexArray.h',
            'libANGLE/VertexAttribute.cpp',
            'libANGLE/VertexAttribute.h',
            'libANGLE/VertexAttribute.inl',
            'libANGLE/angletypes.cpp',
            'libANGLE/angletypes.h',
            'libANGLE/angletypes.inl',
            'libANGLE/es3_copy_conversion_table_autogen.cpp',
            'libANGLE/features.h',
            'libANGLE/format_map_autogen.cpp',
            'libANGLE/formatutils.cpp',
            'libANGLE/formatutils.h',
            'libANGLE/histogram_macros.h',
            'libANGLE/queryconversions.cpp',
            'libANGLE/queryconversions.h',
            'libANGLE/queryutils.cpp',
            'libANGLE/queryutils.h',
            'libANGLE/renderer/BufferImpl.h',
            'libANGLE/renderer/CompilerImpl.h',
            'libANGLE/renderer/ContextImpl.cpp',
            'libANGLE/renderer/ContextImpl.h',
            'libANGLE/renderer/driver_utils.cpp',
            'libANGLE/renderer/driver_utils.h',
            'libANGLE/renderer/DeviceImpl.cpp',
            'libANGLE/renderer/DeviceImpl.h',
            'libANGLE/renderer/DisplayImpl.cpp',
            'libANGLE/renderer/DisplayImpl.h',
            'libANGLE/renderer/EGLImplFactory.h',
            'libANGLE/renderer/FenceNVImpl.h',
            'libANGLE/renderer/FenceSyncImpl.h',
            'libANGLE/renderer/Format_ID_autogen.inl',
            'libANGLE/renderer/Format_table_autogen.cpp',
            'libANGLE/renderer/Format.h',
            'libANGLE/renderer/FramebufferAttachmentObjectImpl.h',
            'libANGLE/renderer/FramebufferImpl.h',
            'libANGLE/renderer/GLImplFactory.h',
            'libANGLE/renderer/ImageImpl.h',
            'libANGLE/renderer/ProgramImpl.h',
            'libANGLE/renderer/QueryImpl.h',
            'libANGLE/renderer/RenderbufferImpl.h',
            'libANGLE/renderer/SamplerImpl.h',
            'libANGLE/renderer/ShaderImpl.h',
            'libANGLE/renderer/StreamProducerImpl.h',
            'libANGLE/renderer/SurfaceImpl.cpp',
            'libANGLE/renderer/SurfaceImpl.h',
            'libANGLE/renderer/TextureImpl.cpp',
            'libANGLE/renderer/TextureImpl.h',
            'libANGLE/renderer/TransformFeedbackImpl.h',
            'libANGLE/renderer/VertexArrayImpl.h',
            'libANGLE/renderer/load_functions_table.h',
            'libANGLE/renderer/load_functions_table_autogen.cpp',
            'libANGLE/renderer/renderer_utils.cpp',
            'libANGLE/renderer/renderer_utils.h',
            'libANGLE/signal_utils.cpp',
            'libANGLE/signal_utils.h',
            'libANGLE/validationEGL.cpp',
            'libANGLE/validationEGL.h',
            'libANGLE/validationES.cpp',
            'libANGLE/validationES.h',
            'libANGLE/validationES2.cpp',
            'libANGLE/validationES2.h',
            'libANGLE/validationES3.cpp',
            'libANGLE/validationES3.h',
            'libANGLE/validationES31.cpp',
            'libANGLE/validationES31.h',
            'third_party/murmurhash/MurmurHash3.cpp',
            'third_party/murmurhash/MurmurHash3.h',
        ],
        'libangle_d3d_shared_sources':
        [
            'libANGLE/renderer/d3d/BufferD3D.cpp',
            'libANGLE/renderer/d3d/BufferD3D.h',
            'libANGLE/renderer/d3d/CompilerD3D.cpp',
            'libANGLE/renderer/d3d/CompilerD3D.h',
            'libANGLE/renderer/d3d/DeviceD3D.cpp',
            'libANGLE/renderer/d3d/DeviceD3D.h',
            'libANGLE/renderer/d3d/DisplayD3D.cpp',
            'libANGLE/renderer/d3d/DisplayD3D.h',
            'libANGLE/renderer/d3d/DynamicHLSL.cpp',
            'libANGLE/renderer/d3d/DynamicHLSL.h',
            'libANGLE/renderer/d3d/EGLImageD3D.cpp',
            'libANGLE/renderer/d3d/EGLImageD3D.h',
            'libANGLE/renderer/d3d/formatutilsD3D.h',
            'libANGLE/renderer/d3d/FramebufferD3D.cpp',
            'libANGLE/renderer/d3d/FramebufferD3D.h',
            'libANGLE/renderer/d3d/HLSLCompiler.cpp',
            'libANGLE/renderer/d3d/HLSLCompiler.h',
            'libANGLE/renderer/d3d/ImageD3D.cpp',
            'libANGLE/renderer/d3d/ImageD3D.h',
            'libANGLE/renderer/d3d/IndexBuffer.cpp',
            'libANGLE/renderer/d3d/IndexBuffer.h',
            'libANGLE/renderer/d3d/IndexDataManager.cpp',
            'libANGLE/renderer/d3d/IndexDataManager.h',
            'libANGLE/renderer/d3d/NativeWindowD3D.cpp',
            'libANGLE/renderer/d3d/NativeWindowD3D.h',
            'libANGLE/renderer/d3d/ProgramD3D.cpp',
            'libANGLE/renderer/d3d/ProgramD3D.h',
            'libANGLE/renderer/d3d/RenderbufferD3D.cpp',
            'libANGLE/renderer/d3d/RenderbufferD3D.h',
            'libANGLE/renderer/d3d/RendererD3D.cpp',
            'libANGLE/renderer/d3d/RendererD3D.h',
            'libANGLE/renderer/d3d/RenderTargetD3D.h',
            'libANGLE/renderer/d3d/RenderTargetD3D.cpp',
            'libANGLE/renderer/d3d/SamplerD3D.h',
            'libANGLE/renderer/d3d/ShaderD3D.cpp',
            'libANGLE/renderer/d3d/ShaderD3D.h',
            'libANGLE/renderer/d3d/ShaderExecutableD3D.cpp',
            'libANGLE/renderer/d3d/ShaderExecutableD3D.h',
            'libANGLE/renderer/d3d/SurfaceD3D.cpp',
            'libANGLE/renderer/d3d/SurfaceD3D.h',
            'libANGLE/renderer/d3d/SwapChainD3D.cpp',
            'libANGLE/renderer/d3d/SwapChainD3D.h',
            'libANGLE/renderer/d3d/TextureD3D.cpp',
            'libANGLE/renderer/d3d/TextureD3D.h',
            'libANGLE/renderer/d3d/TextureStorage.h',
            'libANGLE/renderer/d3d/VaryingPacking.cpp',
            'libANGLE/renderer/d3d/VaryingPacking.h',
            'libANGLE/renderer/d3d/VertexBuffer.cpp',
            'libANGLE/renderer/d3d/VertexBuffer.h',
            'libANGLE/renderer/d3d/VertexDataManager.cpp',
            'libANGLE/renderer/d3d/VertexDataManager.h',
            'libANGLE/renderer/d3d/WorkaroundsD3D.h',
        ],
        'libangle_d3d9_sources':
        [
            'libANGLE/renderer/d3d/d3d9/Blit9.cpp',
            'libANGLE/renderer/d3d/d3d9/Blit9.h',
            'libANGLE/renderer/d3d/d3d9/Buffer9.cpp',
            'libANGLE/renderer/d3d/d3d9/Buffer9.h',
            'libANGLE/renderer/d3d/d3d9/Context9.cpp',
            'libANGLE/renderer/d3d/d3d9/Context9.h',
            'libANGLE/renderer/d3d/d3d9/DebugAnnotator9.cpp',
            'libANGLE/renderer/d3d/d3d9/DebugAnnotator9.h',
            'libANGLE/renderer/d3d/d3d9/Fence9.cpp',
            'libANGLE/renderer/d3d/d3d9/Fence9.h',
            'libANGLE/renderer/d3d/d3d9/formatutils9.cpp',
            'libANGLE/renderer/d3d/d3d9/formatutils9.h',
            'libANGLE/renderer/d3d/d3d9/Framebuffer9.cpp',
            'libANGLE/renderer/d3d/d3d9/Framebuffer9.h',
            'libANGLE/renderer/d3d/d3d9/Image9.cpp',
            'libANGLE/renderer/d3d/d3d9/Image9.h',
            'libANGLE/renderer/d3d/d3d9/IndexBuffer9.cpp',
            'libANGLE/renderer/d3d/d3d9/IndexBuffer9.h',
            'libANGLE/renderer/d3d/d3d9/NativeWindow9.cpp',
            'libANGLE/renderer/d3d/d3d9/NativeWindow9.h',
            'libANGLE/renderer/d3d/d3d9/Query9.cpp',
            'libANGLE/renderer/d3d/d3d9/Query9.h',
            'libANGLE/renderer/d3d/d3d9/Renderer9.cpp',
            'libANGLE/renderer/d3d/d3d9/Renderer9.h',
            'libANGLE/renderer/d3d/d3d9/renderer9_utils.cpp',
            'libANGLE/renderer/d3d/d3d9/renderer9_utils.h',
            'libANGLE/renderer/d3d/d3d9/RenderTarget9.cpp',
            'libANGLE/renderer/d3d/d3d9/RenderTarget9.h',
            'libANGLE/renderer/d3d/d3d9/ShaderCache.h',
            'libANGLE/renderer/d3d/d3d9/ShaderExecutable9.cpp',
            'libANGLE/renderer/d3d/d3d9/ShaderExecutable9.h',
            'libANGLE/renderer/d3d/d3d9/shaders/compiled/componentmaskps.h',
            'libANGLE/renderer/d3d/d3d9/shaders/compiled/flipyvs.h',
            'libANGLE/renderer/d3d/d3d9/shaders/compiled/luminanceps.h',
            'libANGLE/renderer/d3d/d3d9/shaders/compiled/passthroughps.h',
            'libANGLE/renderer/d3d/d3d9/shaders/compiled/standardvs.h',
            'libANGLE/renderer/d3d/d3d9/StateManager9.cpp',
            'libANGLE/renderer/d3d/d3d9/StateManager9.h',
            'libANGLE/renderer/d3d/d3d9/SwapChain9.cpp',
            'libANGLE/renderer/d3d/d3d9/SwapChain9.h',
            'libANGLE/renderer/d3d/d3d9/TextureStorage9.cpp',
            'libANGLE/renderer/d3d/d3d9/TextureStorage9.h',
            'libANGLE/renderer/d3d/d3d9/VertexArray9.h',
            'libANGLE/renderer/d3d/d3d9/VertexBuffer9.cpp',
            'libANGLE/renderer/d3d/d3d9/VertexBuffer9.h',
            'libANGLE/renderer/d3d/d3d9/vertexconversion.h',
            'libANGLE/renderer/d3d/d3d9/VertexDeclarationCache.cpp',
            'libANGLE/renderer/d3d/d3d9/VertexDeclarationCache.h',
        ],
        'libangle_d3d11_sources':
        [
            'libANGLE/renderer/d3d/d3d11/Blit11.cpp',
            'libANGLE/renderer/d3d/d3d11/Blit11.h',
            'libANGLE/renderer/d3d/d3d11/Buffer11.cpp',
            'libANGLE/renderer/d3d/d3d11/Buffer11.h',
            'libANGLE/renderer/d3d/d3d11/Clear11.cpp',
            'libANGLE/renderer/d3d/d3d11/Clear11.h',
            'libANGLE/renderer/d3d/d3d11/Context11.cpp',
            'libANGLE/renderer/d3d/d3d11/Context11.h',
            'libANGLE/renderer/d3d/d3d11/copyvertex.h',
            'libANGLE/renderer/d3d/d3d11/copyvertex.inl',
            'libANGLE/renderer/d3d/d3d11/DebugAnnotator11.cpp',
            'libANGLE/renderer/d3d/d3d11/DebugAnnotator11.h',
            'libANGLE/renderer/d3d/d3d11/dxgi_format_map_autogen.cpp',
            'libANGLE/renderer/d3d/d3d11/dxgi_support_table.cpp',
            'libANGLE/renderer/d3d/d3d11/dxgi_support_table.h',
            'libANGLE/renderer/d3d/d3d11/Fence11.cpp',
            'libANGLE/renderer/d3d/d3d11/Fence11.h',
            'libANGLE/renderer/d3d/d3d11/formatutils11.cpp',
            'libANGLE/renderer/d3d/d3d11/formatutils11.h',
            'libANGLE/renderer/d3d/d3d11/Framebuffer11.cpp',
            'libANGLE/renderer/d3d/d3d11/Framebuffer11.h',
            'libANGLE/renderer/d3d/d3d11/Image11.cpp',
            'libANGLE/renderer/d3d/d3d11/Image11.h',
            'libANGLE/renderer/d3d/d3d11/IndexBuffer11.cpp',
            'libANGLE/renderer/d3d/d3d11/IndexBuffer11.h',
            'libANGLE/renderer/d3d/d3d11/InputLayoutCache.cpp',
            'libANGLE/renderer/d3d/d3d11/InputLayoutCache.h',
            'libANGLE/renderer/d3d/d3d11/NativeWindow11.h',
            'libANGLE/renderer/d3d/d3d11/PixelTransfer11.cpp',
            'libANGLE/renderer/d3d/d3d11/PixelTransfer11.h',
            'libANGLE/renderer/d3d/d3d11/Query11.cpp',
            'libANGLE/renderer/d3d/d3d11/Query11.h',
            'libANGLE/renderer/d3d/d3d11/Renderer11.cpp',
            'libANGLE/renderer/d3d/d3d11/Renderer11.h',
            'libANGLE/renderer/d3d/d3d11/renderer11_utils.cpp',
            'libANGLE/renderer/d3d/d3d11/renderer11_utils.h',
            'libANGLE/renderer/d3d/d3d11/RenderStateCache.cpp',
            'libANGLE/renderer/d3d/d3d11/RenderStateCache.h',
            'libANGLE/renderer/d3d/d3d11/RenderTarget11.cpp',
            'libANGLE/renderer/d3d/d3d11/RenderTarget11.h',
            'libANGLE/renderer/d3d/d3d11/ShaderExecutable11.cpp',
            'libANGLE/renderer/d3d/d3d11/ShaderExecutable11.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/buffertotexture11_gs.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/buffertotexture11_ps_4f.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/buffertotexture11_ps_4i.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/buffertotexture11_ps_4ui.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/buffertotexture11_vs.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/clearfloat11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/clearfloat11vs.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/clearsint11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/clearsint11vs.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/clearuint11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/clearuint11vs.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthrough2d11vs.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthrough3d11gs.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthrough3d11vs.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughdepth2d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughlum2d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughlum3d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughlumalpha2d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughlumalpha3d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughr2d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughr2di11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughr2dui11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughr3d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughr3di11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughr3dui11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrg2d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrg2di11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrg2dui11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrg3d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrg3di11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrg3dui11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgb2d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgbpremultiply2d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgbunmultiply2d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgb2di11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgb2dui11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgb3d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgb3di11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgb3dui11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgba2d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgbapremultiply2d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgbaunmultiply2d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgba2di11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgba2dui11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgba3d11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgba3di11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/passthroughrgba3dui11ps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/swizzlef2darrayps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/swizzlef2dps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/swizzlef3dps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/swizzlei2darrayps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/swizzlei2dps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/swizzlei3dps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/swizzleui2darrayps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/swizzleui2dps.h',
            'libANGLE/renderer/d3d/d3d11/shaders/compiled/swizzleui3dps.h',
            'libANGLE/renderer/d3d/d3d11/StateManager11.cpp',
            'libANGLE/renderer/d3d/d3d11/StateManager11.h',
            'libANGLE/renderer/d3d/d3d11/StreamProducerNV12.cpp',
            'libANGLE/renderer/d3d/d3d11/StreamProducerNV12.h',
            'libANGLE/renderer/d3d/d3d11/SwapChain11.cpp',
            'libANGLE/renderer/d3d/d3d11/SwapChain11.h',
            'libANGLE/renderer/d3d/d3d11/TextureStorage11.cpp',
            'libANGLE/renderer/d3d/d3d11/TextureStorage11.h',
            'libANGLE/renderer/d3d/d3d11/TransformFeedback11.cpp',
            'libANGLE/renderer/d3d/d3d11/TransformFeedback11.h',
            'libANGLE/renderer/d3d/d3d11/Trim11.cpp',
            'libANGLE/renderer/d3d/d3d11/Trim11.h',
            'libANGLE/renderer/d3d/d3d11/texture_format_table_autogen.cpp',
            'libANGLE/renderer/d3d/d3d11/texture_format_table_utils.h',
            'libANGLE/renderer/d3d/d3d11/texture_format_table.cpp',
            'libANGLE/renderer/d3d/d3d11/texture_format_table.h',
            'libANGLE/renderer/d3d/d3d11/VertexArray11.cpp',
            'libANGLE/renderer/d3d/d3d11/VertexArray11.h',
            'libANGLE/renderer/d3d/d3d11/VertexBuffer11.cpp',
            'libANGLE/renderer/d3d/d3d11/VertexBuffer11.h',
        ],
        'libangle_d3d11_win32_sources':
        [
            'libANGLE/renderer/d3d/d3d11/win32/NativeWindow11Win32.cpp',
            'libANGLE/renderer/d3d/d3d11/win32/NativeWindow11Win32.h',
            'third_party/systeminfo/SystemInfo.cpp',
            'third_party/systeminfo/SystemInfo.h',
        ],
        'libangle_d3d11_winrt_sources':
        [
            'libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow.cpp',
            'libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow.h',
            'libANGLE/renderer/d3d/d3d11/winrt/InspectableNativeWindow.cpp',
            'libANGLE/renderer/d3d/d3d11/winrt/InspectableNativeWindow.h',
            'libANGLE/renderer/d3d/d3d11/winrt/NativeWindow11WinRT.cpp',
            'libANGLE/renderer/d3d/d3d11/winrt/NativeWindow11WinRT.h',
            'libANGLE/renderer/d3d/d3d11/winrt/SwapChainPanelNativeWindow.cpp',
            'libANGLE/renderer/d3d/d3d11/winrt/SwapChainPanelNativeWindow.h',
        ],
        'libangle_gl_sources':
        [
            'libANGLE/renderer/gl/BlitGL.cpp',
            'libANGLE/renderer/gl/BlitGL.h',
            'libANGLE/renderer/gl/BufferGL.cpp',
            'libANGLE/renderer/gl/BufferGL.h',
            'libANGLE/renderer/gl/CompilerGL.cpp',
            'libANGLE/renderer/gl/CompilerGL.h',
            'libANGLE/renderer/gl/ContextGL.cpp',
            'libANGLE/renderer/gl/ContextGL.h',
            'libANGLE/renderer/gl/DisplayGL.cpp',
            'libANGLE/renderer/gl/DisplayGL.h',
            'libANGLE/renderer/gl/FenceNVGL.cpp',
            'libANGLE/renderer/gl/FenceNVGL.h',
            'libANGLE/renderer/gl/FenceSyncGL.cpp',
            'libANGLE/renderer/gl/FenceSyncGL.h',
            'libANGLE/renderer/gl/FramebufferGL.cpp',
            'libANGLE/renderer/gl/FramebufferGL.h',
            'libANGLE/renderer/gl/FunctionsGL.cpp',
            'libANGLE/renderer/gl/FunctionsGL.h',
            'libANGLE/renderer/gl/PathGL.h',
            'libANGLE/renderer/gl/PathGL.cpp',
            'libANGLE/renderer/gl/ProgramGL.cpp',
            'libANGLE/renderer/gl/ProgramGL.h',
            'libANGLE/renderer/gl/QueryGL.cpp',
            'libANGLE/renderer/gl/QueryGL.h',
            'libANGLE/renderer/gl/RenderbufferGL.cpp',
            'libANGLE/renderer/gl/RenderbufferGL.h',
            'libANGLE/renderer/gl/RendererGL.cpp',
            'libANGLE/renderer/gl/RendererGL.h',
            'libANGLE/renderer/gl/SamplerGL.cpp',
            'libANGLE/renderer/gl/SamplerGL.h',
            'libANGLE/renderer/gl/ShaderGL.cpp',
            'libANGLE/renderer/gl/ShaderGL.h',
            'libANGLE/renderer/gl/StateManagerGL.cpp',
            'libANGLE/renderer/gl/StateManagerGL.h',
            'libANGLE/renderer/gl/SurfaceGL.cpp',
            'libANGLE/renderer/gl/SurfaceGL.h',
            'libANGLE/renderer/gl/TextureGL.cpp',
            'libANGLE/renderer/gl/TextureGL.h',
            'libANGLE/renderer/gl/TransformFeedbackGL.cpp',
            'libANGLE/renderer/gl/TransformFeedbackGL.h',
            'libANGLE/renderer/gl/VertexArrayGL.cpp',
            'libANGLE/renderer/gl/VertexArrayGL.h',
            'libANGLE/renderer/gl/WorkaroundsGL.h',
            'libANGLE/renderer/gl/formatutilsgl.cpp',
            'libANGLE/renderer/gl/formatutilsgl.h',
            'libANGLE/renderer/gl/functionsgl_enums.h',
            'libANGLE/renderer/gl/functionsgl_typedefs.h',
            'libANGLE/renderer/gl/renderergl_utils.cpp',
            'libANGLE/renderer/gl/renderergl_utils.h',
        ],
        'libangle_gl_wgl_sources':
        [
            'libANGLE/renderer/gl/wgl/D3DTextureSurfaceWGL.cpp',
            'libANGLE/renderer/gl/wgl/D3DTextureSurfaceWGL.h',
            'libANGLE/renderer/gl/wgl/DisplayWGL.cpp',
            'libANGLE/renderer/gl/wgl/DisplayWGL.h',
            'libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.cpp',
            'libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.h',
            'libANGLE/renderer/gl/wgl/FunctionsWGL.cpp',
            'libANGLE/renderer/gl/wgl/FunctionsWGL.h',
            'libANGLE/renderer/gl/wgl/PbufferSurfaceWGL.cpp',
            'libANGLE/renderer/gl/wgl/PbufferSurfaceWGL.h',
            'libANGLE/renderer/gl/wgl/WindowSurfaceWGL.cpp',
            'libANGLE/renderer/gl/wgl/WindowSurfaceWGL.h',
            'libANGLE/renderer/gl/wgl/functionswgl_typedefs.h',
            'libANGLE/renderer/gl/wgl/wgl_utils.cpp',
            'libANGLE/renderer/gl/wgl/wgl_utils.h',
            'third_party/khronos/GL/wglext.h',
        ],
        'libangle_gl_glx_sources':
        [
            'libANGLE/renderer/gl/glx/DisplayGLX.cpp',
            'libANGLE/renderer/gl/glx/DisplayGLX.h',
            'libANGLE/renderer/gl/glx/FunctionsGLX.cpp',
            'libANGLE/renderer/gl/glx/FunctionsGLX.h',
            'libANGLE/renderer/gl/glx/PbufferSurfaceGLX.cpp',
            'libANGLE/renderer/gl/glx/PbufferSurfaceGLX.h',
            'libANGLE/renderer/gl/glx/SurfaceGLX.h',
            'libANGLE/renderer/gl/glx/WindowSurfaceGLX.cpp',
            'libANGLE/renderer/gl/glx/WindowSurfaceGLX.h',
            'libANGLE/renderer/gl/glx/functionsglx_typedefs.h',
            'libANGLE/renderer/gl/glx/platform_glx.h',
        ],
        'libangle_gl_egl_sources':
        [
            'libANGLE/renderer/gl/egl/DisplayEGL.cpp',
            'libANGLE/renderer/gl/egl/DisplayEGL.h',
            'libANGLE/renderer/gl/egl/FunctionsEGL.cpp',
            'libANGLE/renderer/gl/egl/FunctionsEGL.h',
            'libANGLE/renderer/gl/egl/functionsegl_typedefs.h',
            'libANGLE/renderer/gl/egl/PbufferSurfaceEGL.cpp',
            'libANGLE/renderer/gl/egl/PbufferSurfaceEGL.h',
            'libANGLE/renderer/gl/egl/SurfaceEGL.cpp',
            'libANGLE/renderer/gl/egl/SurfaceEGL.h',
            'libANGLE/renderer/gl/egl/WindowSurfaceEGL.cpp',
            'libANGLE/renderer/gl/egl/WindowSurfaceEGL.h',
        ],
        'libangle_gl_egl_dl_sources':
        [
            'libANGLE/renderer/gl/egl/FunctionsEGLDL.cpp',
            'libANGLE/renderer/gl/egl/FunctionsEGLDL.h',
        ],
        'libangle_gl_ozone_sources':
        [
            'libANGLE/renderer/gl/egl/ozone/DisplayOzone.cpp',
            'libANGLE/renderer/gl/egl/ozone/DisplayOzone.h',
            'libANGLE/renderer/gl/egl/ozone/SurfaceOzone.cpp',
            'libANGLE/renderer/gl/egl/ozone/SurfaceOzone.h',
        ],
        'libangle_gl_egl_android_sources':
        [
            'libANGLE/renderer/gl/egl/android/DisplayAndroid.cpp',
            'libANGLE/renderer/gl/egl/android/DisplayAndroid.h',
        ],
        'libangle_gl_cgl_sources':
        [
            'libANGLE/renderer/gl/cgl/DisplayCGL.mm',
            'libANGLE/renderer/gl/cgl/DisplayCGL.h',
            'libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.mm',
            'libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.h',
            'libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm',
            'libANGLE/renderer/gl/cgl/WindowSurfaceCGL.h',
        ],
        'libangle_vulkan_sources':
        [
            'libANGLE/renderer/vulkan/BufferVk.cpp',
            'libANGLE/renderer/vulkan/BufferVk.h',
            'libANGLE/renderer/vulkan/CompilerVk.cpp',
            'libANGLE/renderer/vulkan/CompilerVk.h',
            'libANGLE/renderer/vulkan/ContextVk.cpp',
            'libANGLE/renderer/vulkan/ContextVk.h',
            'libANGLE/renderer/vulkan/DeviceVk.cpp',
            'libANGLE/renderer/vulkan/DeviceVk.h',
            'libANGLE/renderer/vulkan/DisplayVk.cpp',
            'libANGLE/renderer/vulkan/DisplayVk.h',
            'libANGLE/renderer/vulkan/FenceNVVk.cpp',
            'libANGLE/renderer/vulkan/FenceNVVk.h',
            'libANGLE/renderer/vulkan/FenceSyncVk.cpp',
            'libANGLE/renderer/vulkan/FenceSyncVk.h',
            'libANGLE/renderer/vulkan/FramebufferVk.cpp',
            'libANGLE/renderer/vulkan/FramebufferVk.h',
            'libANGLE/renderer/vulkan/ImageVk.cpp',
            'libANGLE/renderer/vulkan/ImageVk.h',
            'libANGLE/renderer/vulkan/ProgramVk.cpp',
            'libANGLE/renderer/vulkan/ProgramVk.h',
            'libANGLE/renderer/vulkan/QueryVk.cpp',
            'libANGLE/renderer/vulkan/QueryVk.h',
            'libANGLE/renderer/vulkan/RenderbufferVk.cpp',
            'libANGLE/renderer/vulkan/RenderbufferVk.h',
            'libANGLE/renderer/vulkan/RendererVk.cpp',
            'libANGLE/renderer/vulkan/RendererVk.h',
            'libANGLE/renderer/vulkan/SamplerVk.cpp',
            'libANGLE/renderer/vulkan/SamplerVk.h',
            'libANGLE/renderer/vulkan/ShaderVk.cpp',
            'libANGLE/renderer/vulkan/ShaderVk.h',
            'libANGLE/renderer/vulkan/SurfaceVk.cpp',
            'libANGLE/renderer/vulkan/SurfaceVk.h',
            'libANGLE/renderer/vulkan/TextureVk.cpp',
            'libANGLE/renderer/vulkan/TextureVk.h',
            'libANGLE/renderer/vulkan/TransformFeedbackVk.cpp',
            'libANGLE/renderer/vulkan/TransformFeedbackVk.h',
            'libANGLE/renderer/vulkan/VertexArrayVk.cpp',
            'libANGLE/renderer/vulkan/VertexArrayVk.h',
        ],
        'libangle_null_sources':
        [
            'libANGLE/renderer/null/BufferNULL.cpp',
            'libANGLE/renderer/null/BufferNULL.h',
            'libANGLE/renderer/null/CompilerNULL.cpp',
            'libANGLE/renderer/null/CompilerNULL.h',
            'libANGLE/renderer/null/ContextNULL.cpp',
            'libANGLE/renderer/null/ContextNULL.h',
            'libANGLE/renderer/null/DeviceNULL.cpp',
            'libANGLE/renderer/null/DeviceNULL.h',
            'libANGLE/renderer/null/DisplayNULL.cpp',
            'libANGLE/renderer/null/DisplayNULL.h',
            'libANGLE/renderer/null/FenceNVNULL.cpp',
            'libANGLE/renderer/null/FenceNVNULL.h',
            'libANGLE/renderer/null/FenceSyncNULL.cpp',
            'libANGLE/renderer/null/FenceSyncNULL.h',
            'libANGLE/renderer/null/FramebufferNULL.cpp',
            'libANGLE/renderer/null/FramebufferNULL.h',
            'libANGLE/renderer/null/ImageNULL.cpp',
            'libANGLE/renderer/null/ImageNULL.h',
            'libANGLE/renderer/null/PathNULL.cpp',
            'libANGLE/renderer/null/PathNULL.h',
            'libANGLE/renderer/null/ProgramNULL.cpp',
            'libANGLE/renderer/null/ProgramNULL.h',
            'libANGLE/renderer/null/QueryNULL.cpp',
            'libANGLE/renderer/null/QueryNULL.h',
            'libANGLE/renderer/null/RenderbufferNULL.cpp',
            'libANGLE/renderer/null/RenderbufferNULL.h',
            'libANGLE/renderer/null/SamplerNULL.cpp',
            'libANGLE/renderer/null/SamplerNULL.h',
            'libANGLE/renderer/null/ShaderNULL.cpp',
            'libANGLE/renderer/null/ShaderNULL.h',
            'libANGLE/renderer/null/SurfaceNULL.cpp',
            'libANGLE/renderer/null/SurfaceNULL.h',
            'libANGLE/renderer/null/TextureNULL.cpp',
            'libANGLE/renderer/null/TextureNULL.h',
            'libANGLE/renderer/null/TransformFeedbackNULL.cpp',
            'libANGLE/renderer/null/TransformFeedbackNULL.h',
            'libANGLE/renderer/null/VertexArrayNULL.cpp',
            'libANGLE/renderer/null/VertexArrayNULL.h',
        ],
        'libglesv2_sources':
        [
            'common/angleutils.h',
            'common/debug.h',
            'libGLESv2/entry_points_egl.cpp',
            'libGLESv2/entry_points_egl.h',
            'libGLESv2/entry_points_egl_ext.cpp',
            'libGLESv2/entry_points_egl_ext.h',
            'libGLESv2/entry_points_gles_2_0.cpp',
            'libGLESv2/entry_points_gles_2_0.h',
            'libGLESv2/entry_points_gles_2_0_ext.cpp',
            'libGLESv2/entry_points_gles_2_0_ext.h',
            'libGLESv2/entry_points_gles_3_0.cpp',
            'libGLESv2/entry_points_gles_3_0.h',
            'libGLESv2/entry_points_gles_3_1.cpp',
            'libGLESv2/entry_points_gles_3_1.h',
            'libGLESv2/global_state.cpp',
            'libGLESv2/global_state.h',
            'libGLESv2/libGLESv2.cpp',
            'libGLESv2/libGLESv2.def',
            'libGLESv2/libGLESv2.rc',
            'libGLESv2/resource.h',
        ],
        'libegl_sources':
        [
            'libEGL/libEGL.cpp',
            'libEGL/libEGL.def',
            'libEGL/libEGL.rc',
            'libEGL/resource.h',
        ],
    },
    # Everything below this is duplicated in the GN build. If you change
    # anything also change angle/BUILD.gn
    'targets':
    [
        {
            'target_name': 'libANGLE',
            'type': 'static_library',
            'dependencies':
            [
                'translator',
                'commit_id',
                'angle_common',
                'angle_image_util',
            ],
            'includes': [ '../gyp/common_defines.gypi', ],
            'include_dirs':
            [
                '.',
                '../include',
                'third_party/khronos',
            ],
            'sources':
            [
                '<@(libangle_sources)',
                '<@(libangle_includes)',
            ],
            'defines':
            [
                'LIBANGLE_IMPLEMENTATION',
            ],
            'export_dependent_settings':
            [
                'angle_common',
            ],
            'direct_dependent_settings':
            {
                'include_dirs':
                [
                    '<(angle_path)/src',
                    '<(angle_path)/include',
                ],
                'defines':
                [
                    'LIBANGLE_IMPLEMENTATION',
                    'GL_GLEXT_PROTOTYPES',
                    'ANGLE_PRELOADED_D3DCOMPILER_MODULE_NAMES={ "d3dcompiler_47.dll", "d3dcompiler_46.dll", "d3dcompiler_43.dll" }',
                ],
                'conditions':
                [
                    ['OS=="win"', {
                        'defines':
                        [
                            'GL_APICALL=',
                            'EGLAPI=',
                        ],
                    }, {
                        'defines':
                        [
                            'GL_APICALL=__attribute__((visibility("default")))',
                            'EGLAPI=__attribute__((visibility("default")))',
                        ],
                    }],
                    ['OS == "mac"',
                    {
                        'xcode_settings':
                        {
                            'DYLIB_INSTALL_NAME_BASE': '@rpath',
                        },
                    }],
                    ['angle_enable_d3d9==1',
                    {
                        'defines':
                        [
                            'ANGLE_ENABLE_D3D9',
                        ],
                    }],
                    ['angle_enable_d3d11==1',
                    {
                        'defines':
                        [
                            'ANGLE_ENABLE_D3D11',
                        ],
                    }],
                    ['angle_enable_gl==1',
                    {
                        'defines':
                        [
                            'ANGLE_ENABLE_OPENGL',
                        ],
                        'conditions':
                        [
                            ['angle_use_glx==1',
                            {
                                'defines':
                                [
                                    'ANGLE_USE_X11',
                                ],
                            }],
                        ],
                    }],
                    ['angle_enable_vulkan==1',
                    {
                        'defines':
                        [
                            'ANGLE_ENABLE_VULKAN',
                        ],
                    }],
                ],
            },
            'conditions':
            [
                ['angle_enable_d3d9==1 or angle_enable_d3d11==1',
                {
                    'sources':
                    [
                        '<@(libangle_d3d_shared_sources)',
                    ],
                }],
                ['angle_enable_d3d9==1',
                {
                    'sources':
                    [
                        '<@(libangle_d3d9_sources)',
                    ],
                    'defines':
                    [
                        'ANGLE_ENABLE_D3D9',
                    ],
                    'link_settings':
                    {
                        'msvs_settings':
                        {
                            'VCLinkerTool':
                            {
                                'AdditionalDependencies':
                                [
                                    'd3d9.lib',
                                ]
                            }
                        },
                    },
                }],
                ['angle_enable_d3d11==1',
                {
                    'sources':
                    [
                        '<@(libangle_d3d11_sources)',
                    ],
                    'defines':
                    [
                        'ANGLE_ENABLE_D3D11',
                    ],
                    'link_settings':
                    {
                        'msvs_settings':
                        {
                            'VCLinkerTool':
                            {
                                'conditions':
                                [
                                    ['angle_build_winrt==0',
                                    {
                                        'AdditionalDependencies':
                                        [
                                            'dxguid.lib',
                                        ],
                                    }],
                                    ['angle_build_winrt==1',
                                    {
                                        'AdditionalDependencies':
                                        [
                                            'dxguid.lib',
                                            'd3d11.lib',
                                            'd3dcompiler.lib',
                                        ],
                                    }],
                                ],
                            }
                        },
                    },
                    'conditions':
                    [
                        ['angle_build_winrt==1',
                        {
                            'sources':
                            [
                                '<@(libangle_d3d11_winrt_sources)',
                            ],
                        },
                        { # win32
                            'sources':
                            [
                                '<@(libangle_d3d11_win32_sources)',
                            ],
                        }],
                    ],
                }],
                ['angle_enable_gl==1',
                {
                    'sources':
                    [
                        '<@(libangle_gl_sources)',
                    ],
                    'defines':
                    [
                        'ANGLE_ENABLE_OPENGL',
                    ],
                    'conditions':
                    [
                        ['OS=="win"',
                        {
                            'sources':
                            [
                                '<@(libangle_gl_wgl_sources)',
                            ],
                        }],
                        ['angle_use_glx==1',
                        {
                            'defines':
                            [
                                'ANGLE_USE_X11',
                            ],
                            'dependencies':
                            [
                                '<(angle_path)/src/third_party/libXNVCtrl/libXNVCtrl.gyp:libXNVCtrl',
                            ],
                            'sources':
                            [
                                '<@(libangle_gl_glx_sources)',
                            ],
                            'link_settings': {
                                'ldflags': [
                                    '<!@(<(pkg-config) --libs-only-L --libs-only-other x11 xi xext)',
                                ],
                                'libraries': [
                                    '<!@(<(pkg-config) --libs-only-l x11 xi xext) -ldl',
                                ],
                            },
                        }],
                        ['use_ozone==1',
                        {
                            'defines':
                            [
                                'ANGLE_USE_OZONE',
                            ],
                            'sources':
                            [
                                '<@(libangle_gl_egl_sources)',
                                '<@(libangle_gl_egl_dl_sources)',
                                '<@(libangle_gl_ozone_sources)',
                            ],
                            'cflags':
                            [
                                '<!@(<(pkg-config) --cflags libdrm gbm)',
                            ],
                            'link_settings': {
                                'ldflags': [
                                    '<!@(<(pkg-config) --libs-only-L --libs-only-other libdrm gbm)',
                                ],
                                'libraries': [
                                    '<!@(<(pkg-config) --libs-only-l libdrm gbm) -ldl',
                                ],
                            },
                        }],
                        ['angle_link_glx==1',
                        {
                            'link_settings':
                            {
                                'libraries':
                                [
                                    '-lGL',
                                ],
                            },
                            'defines':
                            [
                                'ANGLE_LINK_GLX',
                            ],
                        }],
                        ['OS=="mac"',
                        {
                            'sources':
                            [
                                '<@(libangle_gl_cgl_sources)',
                            ],
                            'link_settings':
                            {
                                'libraries':
                                [
                                    '$(SDKROOT)/System/Library/Frameworks/Cocoa.framework',
                                    '$(SDKROOT)/System/Library/Frameworks/IOSurface.framework',
                                    '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework',
                                    '$(SDKROOT)/System/Library/Frameworks/QuartzCore.framework',
                                ],
                            },
                            'all_dependent_settings':
                            {
                                'xcode_settings': {
                                    'LD_RUNPATH_SEARCH_PATHS': ['@executable_path/.'],
                                },
                            }
                        }],
                    ],
                }],
                ['angle_enable_vulkan==1',
                {
                    'sources':
                    [
                        '<@(libangle_vulkan_sources)',
                    ],
                    'defines':
                    [
                        'ANGLE_ENABLE_VULKAN',
                    ],
                }],
                ['angle_enable_null==1',
                {
                    'sources':
                    [
                        '<@(libangle_null_sources)',
                    ],
                    'defines':
                    [
                        'ANGLE_ENABLE_NULL',
                    ],
                }],
                ['angle_build_winrt==0 and OS=="win"',
                {
                    'dependencies':
                    [
                        'copy_compiler_dll'
                    ],
                }],
                ['angle_build_winrt==1',
                {
                    'msvs_requires_importlibrary' : 'true',
                }],
            ],
        },
        {
            'target_name': 'libGLESv2',
            'type': '<(angle_gl_library_type)',
            'dependencies': [ 'libANGLE', 'angle_common' ],
            'includes': [ '../gyp/common_defines.gypi', ],
            'sources':
            [
                '<@(libglesv2_sources)',
            ],
            'defines':
            [
                'LIBGLESV2_IMPLEMENTATION',
            ],
            'conditions':
            [
                ['angle_build_winrt==1',
                {
                    'msvs_requires_importlibrary' : 'true',
                }],
            ],
        },
    ],
}