summaryrefslogtreecommitdiffstats
path: root/widget/gonk/nativewindow/moz.build
blob: fbcee601c8c05b75fca5926fb1989bb208c26d0c (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
# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# Copyright 2013 Mozilla Foundation and Mozilla contributors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

EXPORTS += [
    'GonkBufferQueue.h',
    'GonkNativeWindow.h',
]

if CONFIG['ANDROID_VERSION'] >= '19':
    EXPORTS += [
        'IGonkGraphicBufferConsumer.h',
    ]

if CONFIG['ANDROID_VERSION'] >= '21':
    EXPORTS += [
        'GonkBufferQueueLL/GonkBufferQueueDefs.h',
        'GonkBufferQueueLL/GonkBufferQueueLL.h',
        'GonkBufferQueueLL/GonkBufferQueueProducer.h',
        'GonkBufferQueueLL/GonkBufferSlot.h',
        'GonkConsumerBaseLL.h',
        'GonkNativeWindowLL.h',
        'IGonkGraphicBufferConsumerLL.h',
    ]
elif CONFIG['ANDROID_VERSION'] >= '19':
    EXPORTS += [
        'GonkBufferQueueKK.h',
        'GonkConsumerBaseKK.h',
        'GonkNativeWindowKK.h',
        'IGonkGraphicBufferConsumerKK.h',
    ]
elif CONFIG['ANDROID_VERSION'] in ('17', '18'):
    EXPORTS += [
        'GonkBufferQueueJB.h',
        'GonkConsumerBaseJB.h',
        'GonkNativeWindowJB.h',
    ]

if CONFIG['MOZ_WEBRTC']:
    if CONFIG['ANDROID_VERSION'] >= '21':
        SOURCES += [
            'GonkBufferQueueLL/GonkBufferItem.cpp',
            'GonkBufferQueueLL/GonkBufferQueueConsumer.cpp',
            'GonkBufferQueueLL/GonkBufferQueueCore.cpp',
            'GonkBufferQueueLL/GonkBufferQueueLL.cpp',
            'GonkBufferQueueLL/GonkBufferQueueProducer.cpp',
            'GonkBufferQueueLL/GonkBufferSlot.cpp',
            'GonkConsumerBaseLL.cpp',
            'GonkNativeWindowLL.cpp',
            'IGonkGraphicBufferConsumerLL.cpp',
        ]
    elif CONFIG['ANDROID_VERSION'] >= '19':
        SOURCES += [
            'GonkBufferQueueKK.cpp',
            'GonkConsumerBaseKK.cpp',
            'GonkNativeWindowKK.cpp',
            'IGonkGraphicBufferConsumerKK.cpp',
        ]
    elif CONFIG['ANDROID_VERSION'] in ('17', '18'):
        SOURCES += [
            'GonkBufferQueueJB.cpp',
            'GonkConsumerBaseJB.cpp',
            'GonkNativeWindowJB.cpp',
        ]

if CONFIG['ANDROID_VERSION'] >= '18':
    SOURCES += [
        'FakeSurfaceComposer.cpp',
    ]

include('/ipc/chromium/chromium-config.mozbuild')

if CONFIG['ANDROID_VERSION'] >= '18':
    LOCAL_INCLUDES += [
        '%' + '%s/%s' % (CONFIG['ANDROID_SOURCE'], d) for d in [
            'frameworks/native/opengl/include',
        ]
    ]

DEFINES['HAVE_ANDROID_OS'] = True

# Suppress some GCC warnings being treated as errors:
#  - about attributes on forward declarations for types that are already
#    defined, which complains about an important MOZ_EXPORT for android::AString
if CONFIG['GNU_CC']:
  CXXFLAGS += ['-Wno-error=attributes', '-Wno-overloaded-virtual']

FINAL_LIBRARY = 'xul'

DISABLE_STL_WRAPPING = True

NO_VISIBILITY_FLAGS = True