Package SCons :: Package Platform :: Module darwin
[hide private]
[frames] | no frames]

Source Code for Module SCons.Platform.darwin

 1  """engine.SCons.Platform.darwin 
 2   
 3  Platform-specific initialization for Mac OS X systems. 
 4   
 5  There normally shouldn't be any need to import this module directly.  It 
 6  will usually be imported through the generic SCons.Platform.Platform() 
 7  selection method. 
 8  """ 
 9   
10  # 
11  # Copyright (c) 2001 - 2019 The SCons Foundation 
12  # 
13  # Permission is hereby granted, free of charge, to any person obtaining 
14  # a copy of this software and associated documentation files (the 
15  # "Software"), to deal in the Software without restriction, including 
16  # without limitation the rights to use, copy, modify, merge, publish, 
17  # distribute, sublicense, and/or sell copies of the Software, and to 
18  # permit persons to whom the Software is furnished to do so, subject to 
19  # the following conditions: 
20  # 
21  # The above copyright notice and this permission notice shall be included 
22  # in all copies or substantial portions of the Software. 
23  # 
24  # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY 
25  # KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 
26  # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 
27  # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 
28  # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 
29  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 
30  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 
31  # 
32   
33  __revision__ = "src/engine/SCons/Platform/darwin.py 3a41ed6b288cee8d085373ad7fa02894e1903864 2019-01-23 17:30:35 bdeegan" 
34   
35  from . import posix 
36  import os 
37   
38 -def generate(env):
39 posix.generate(env) 40 env['SHLIBSUFFIX'] = '.dylib' 41 # put macports paths at front to override Apple's versions, fink path is after 42 # For now let people who want Macports or Fink tools specify it! 43 # env['ENV']['PATH'] = '/opt/local/bin:/opt/local/sbin:' + env['ENV']['PATH'] + ':/sw/bin' 44 45 # Store extra system paths in env['ENV']['PATHOSX'] 46 47 filelist = ['/etc/paths',] 48 # make sure this works on Macs with Tiger or earlier 49 try: 50 dirlist = os.listdir('/etc/paths.d') 51 except: 52 dirlist = [] 53 54 for file in dirlist: 55 filelist.append('/etc/paths.d/'+file) 56 57 for file in filelist: 58 if os.path.isfile(file): 59 f = open(file, 'r') 60 lines = f.readlines() 61 for line in lines: 62 if line: 63 env.AppendENVPath('PATHOSX', line.strip('\n')) 64 f.close() 65 66 # Not sure why this wasn't the case all along? 67 if env['ENV'].get('PATHOSX', False) and os.environ.get('SCONS_USE_MAC_PATHS', False): 68 env.AppendENVPath('PATH',env['ENV']['PATHOSX'])
69 70 # Local Variables: 71 # tab-width:4 72 # indent-tabs-mode:nil 73 # End: 74 # vim: set expandtab tabstop=4 shiftwidth=4: 75