PyLucene 3.4.0-1 import
[pylucene.git] / jcc / helpers / darwin.py
1 #   Licensed under the Apache License, Version 2.0 (the "License");
2 #   you may not use this file except in compliance with the License.
3 #   You may obtain a copy of the License at
4 #
5 #       http://www.apache.org/licenses/LICENSE-2.0
6 #
7 #   Unless required by applicable law or agreed to in writing, software
8 #   distributed under the License is distributed on an "AS IS" BASIS,
9 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10 #   See the License for the specific language governing permissions and
11 #   limitations under the License.
12
13 import sys, os
14
15 global JAVAHOME
16 JAVAHOME = None
17
18 if sys.platform == "darwin":
19
20     # figure out where the JDK lives
21     import platform, re
22     _os_version = re.match("[0-9]+\.[0-9]+", platform.mac_ver()[0]).group(0)
23
24     # this is where Apple says we should look for headers
25     _path = "/System/Library/Frameworks/JavaVM.framework"
26     if os.path.exists(os.path.join(_path, "Headers", "jni.h")):
27         JAVAHOME = _path
28     else:
29         # but their updates don't always match their documentation, 
30         # so look up the same path in the OS's /Developer tree
31         _path = "/Developer/SDKs/MacOSX%s.sdk%s" %(_os_version, _path)
32         if os.path.exists(os.path.join(_path, "Headers", "jni.h")):
33             JAVAHOME = _path