José Fonseca | 57d0001 | 2009-01-23 12:32:35 +0000 | [diff] [blame] | 1 | Import('*') |
| 2 | |
| 3 | if env['platform'] not in ['windows', 'linux']: |
| 4 | Return() |
| 5 | |
José Fonseca | 14a8c9d | 2010-01-01 19:58:39 +0000 | [diff] [blame^] | 6 | # Shared environment settings |
José Fonseca | 57d0001 | 2009-01-23 12:32:35 +0000 | [diff] [blame] | 7 | env = env.Clone() |
| 8 | |
José Fonseca | 57d0001 | 2009-01-23 12:32:35 +0000 | [diff] [blame] | 9 | env.PrependUnique(CPPPATH = [ |
| 10 | '#/include', |
| 11 | ]) |
| 12 | |
José Fonseca | 57d0001 | 2009-01-23 12:32:35 +0000 | [diff] [blame] | 13 | if env['platform'] == 'windows': |
| 14 | env.PrependUnique(LIBS = [ |
| 15 | 'glu32', |
| 16 | 'opengl32', |
| 17 | 'gdi32', |
| 18 | 'user32', |
| 19 | ]) |
| 20 | else: |
| 21 | env.PrependUnique(LIBS = [ |
| 22 | 'GLU', |
| 23 | 'GL', |
| 24 | 'X11', |
| 25 | ]) |
José Fonseca | 7bbf7f9 | 2009-12-31 21:10:25 +0000 | [diff] [blame] | 26 | |
José Fonseca | 14a8c9d | 2010-01-01 19:58:39 +0000 | [diff] [blame^] | 27 | # Library specific environment settings |
| 28 | lib_env = env.Clone() |
| 29 | |
| 30 | lib_env.Append(CPPDEFINES = [ |
| 31 | 'GLEW_BUILD', |
| 32 | #'GLEW_STATIC', |
| 33 | #'GLEW_MX', # Multiple Rendering Contexts support |
| 34 | ]) |
| 35 | |
| 36 | if lib_env['platform'] == 'windows': |
José Fonseca | 7bbf7f9 | 2009-12-31 21:10:25 +0000 | [diff] [blame] | 37 | target = 'glew' |
| 38 | else: |
| 39 | target = 'GLEW' |
| 40 | |
José Fonseca | 14a8c9d | 2010-01-01 19:58:39 +0000 | [diff] [blame^] | 41 | glew = lib_env.SharedLibrary( |
José Fonseca | 7bbf7f9 | 2009-12-31 21:10:25 +0000 | [diff] [blame] | 42 | target = target, |
| 43 | source = [ |
| 44 | 'glew.c', |
| 45 | ], |
| 46 | ) |
| 47 | |
José Fonseca | 14a8c9d | 2010-01-01 19:58:39 +0000 | [diff] [blame^] | 48 | if lib_env['platform'] == 'windows': |
| 49 | glew = lib_env.FindIxes(glew, 'LIBPREFIX', 'LIBSUFFIX') |
José Fonseca | 7bbf7f9 | 2009-12-31 21:10:25 +0000 | [diff] [blame] | 50 | |
José Fonseca | 14a8c9d | 2010-01-01 19:58:39 +0000 | [diff] [blame^] | 51 | # Program specific environment settings |
| 52 | prog_env = env.Clone() |
José Fonseca | 7bbf7f9 | 2009-12-31 21:10:25 +0000 | [diff] [blame] | 53 | |
José Fonseca | 14a8c9d | 2010-01-01 19:58:39 +0000 | [diff] [blame^] | 54 | prog_env.Prepend(LIBS = [glew]) |
José Fonseca | 57d0001 | 2009-01-23 12:32:35 +0000 | [diff] [blame] | 55 | |
José Fonseca | 14a8c9d | 2010-01-01 19:58:39 +0000 | [diff] [blame^] | 56 | prog_env.Program( |
José Fonseca | 57d0001 | 2009-01-23 12:32:35 +0000 | [diff] [blame] | 57 | target = 'glewinfo', |
| 58 | source = ['glewinfo.c'], |
| 59 | ) |
| 60 | |
José Fonseca | 14a8c9d | 2010-01-01 19:58:39 +0000 | [diff] [blame^] | 61 | prog_env.Program( |
José Fonseca | 57d0001 | 2009-01-23 12:32:35 +0000 | [diff] [blame] | 62 | target = 'visualinfo', |
| 63 | source = ['visualinfo.c'], |
| 64 | ) |
José Fonseca | 7bbf7f9 | 2009-12-31 21:10:25 +0000 | [diff] [blame] | 65 | |
| 66 | Export('glew') |