== SCons ==
[blender.git] / intern / ghost / SConscript
index b8d47f49f336e9f0f47724d14f3fa7ecb7f1b854..6009b14767f4348a6911e05dc09e8d600bec567f 100644 (file)
@@ -1,40 +1,30 @@
-Import ('user_options_dict')
-Import ('library_env')
-Import ('window_system')
+#!/usr/bin/python
+import sys
+import os
 
 
-ghost_env = library_env.Copy ()
+Import ('env')
 
 
-source_files = ['intern/GHOST_Buttons.cpp',
-                'intern/GHOST_C-api.cpp',
-                'intern/GHOST_CallbackEventConsumer.cpp',
-                'intern/GHOST_DisplayManager.cpp',
-                'intern/GHOST_EventManager.cpp',
-                'intern/GHOST_EventPrinter.cpp',
-                'intern/GHOST_ISystem.cpp',
-                'intern/GHOST_ModifierKeys.cpp',
-                'intern/GHOST_Rect.cpp',
-                'intern/GHOST_System.cpp',
-                'intern/GHOST_TimerManager.cpp',
-                'intern/GHOST_Window.cpp',
-                'intern/GHOST_WindowManager.cpp']
+window_system = sys.platform
 
 
-if window_system == 'X11':
-    source_files += ['intern/GHOST_DisplayManagerX11.cpp',
-                     'intern/GHOST_SystemX11.cpp',
-                     'intern/GHOST_WindowX11.cpp']
-elif window_system == 'WIN32':
-    source_files += ['intern/GHOST_DisplayManagerWin32.cpp',
-                     'intern/GHOST_SystemWin32.cpp',
-                     'intern/GHOST_WindowWin32.cpp']
-elif window_system == 'CARBON':
-    source_files += ['intern/GHOST_DisplayManagerCarbon.cpp',
-                     'intern/GHOST_SystemCarbon.cpp',
-                     'intern/GHOST_WindowCarbon.cpp']
-else:
-    print "Unknown window system specified."
+sources = env.Glob('intern/*.cpp')
+
+pf = ['GHOST_DisplayManager', 'GHOST_System', 'GHOST_Window']
 
 
-ghost_env.Append (CPPPATH = ['.',
-                             '../string'])
+if window_system == 'linux2':
+       for f in pf:
+               sources.remove('intern' + os.sep + f + 'Win32.cpp')
+               sources.remove('intern' + os.sep + f + 'Carbon.cpp')
+elif window_system == 'win32':
+       for f in pf:
+               sources.remove('intern' + os.sep + f + 'X11.cpp')
+               sources.remove('intern' + os.sep + f + 'Carbon.cpp')
+elif window_system == 'darwin':
+       for f in pf:
+               sources.remove('intern' + os.sep + f + 'Win32.cpp')
+               sources.remove('intern' + os.sep + f + 'X11.cpp')
+else:
+       print "Unknown window system specified."
+       Exit()
 
 
-ghost_env.Append (CPPPATH = user_options_dict['OPENGL_INCLUDE'])
-ghost_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_GHOST', source=source_files)
+incs = '. ../string ' + env['BF_OPENGL_INC']
+env.BlenderLib ('blender_GHOST', sources, Split(incs), [], libtype='core', priority = 25 )