Add Sony to domain affiliations on team page
[WebKit-https.git] / Source / WTF / AVFoundationSupport.py
1 #!/usr/bin/python
2
3 # Copyright (C) 2015 Apple Inc.  All rights reserved.
4 #
5 # Redistribution and use in source and binary forms, with or without
6 # modification, are permitted provided that the following conditions
7 # are met:
8 #
9 # 1.  Redistributions of source code must retain the above copyright
10 #     notice, this list of conditions and the following disclaimer.
11 # 2.  Redistributions in binary form must reproduce the above copyright
12 #     notice, this list of conditions and the following disclaimer in the
13 #     documentation and/or other materials provided with the distribution.
14 # 3.  Neither the name of Apple puter, Inc. ("Apple") nor the names of
15 #     its contributors may be used to endorse or promote products derived
16 #     from this software without specific prior written permission.
17 #
18 # THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
19 # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21 # DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
22 # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23 # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25 # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
29 import re
30 import sys
31 import os
32
33
34 def lookFor(relativePath):
35     return os.path.isfile(sys.argv[1] + relativePath)
36
37
38 def fileContains(relativePath, regexp):
39     with open(sys.argv[1] + relativePath) as file:
40         for line in file:
41             if regexp.search(line):
42                 return True
43     return False
44
45
46 print "/* Identifying AVFoundation Support */"
47 if lookFor("/include/AVFoundationCF/AVCFBase.h"):
48     print "#define HAVE_AVCF 1"
49 if lookFor("/include/AVFoundationCF/AVCFPlayerItemLegibleOutput.h"):
50     print "#define HAVE_AVCF_LEGIBLE_OUTPUT 1"
51 if lookFor("/include/AVFoundationCF/AVCFAssetResourceLoader.h"):
52     print "#define HAVE_AVFOUNDATION_LOADER_DELEGATE 1"
53 if lookFor("/include/AVFoundationCF/AVCFAsset.h"):
54     regexp = re.compile("AVCFURLAssetIsPlayableExtendedMIMEType")
55     if fileContains("/include/AVFoundationCF/AVCFAsset.h", regexp):
56         print "#define HAVE_AVCFURL_PLAYABLE_MIMETYPE 1"
57 if lookFor("/include/QuartzCore/CACFLayer.h"):
58     regexp = re.compile("CACFLayerSetContentsScale")
59     if fileContains("/include/QuartzCore/CACFLayer.h", regexp):
60         print "#define HAVE_CACFLAYER_SETCONTENTSSCALE 1"
61 if lookFor("/include/AVFoundationCF/AVCFPlayerItemLegibleOutput.h"):
62     regexp = re.compile("kAVCFPlayerItemLegibleOutput_CallbacksVersion_2")
63     if fileContains("/include/AVFoundationCF/AVCFPlayerItemLegibleOutput.h", regexp):
64         print "#define HAVE_AVCFPLAYERITEM_CALLBACK_VERSION_2 1"