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 | 8a318ed | 2010-01-01 22:35:28 +0000 | [diff] [blame^] | 48 | env.InstallSharedLibrary(glew, version=(1, 5)) |
| 49 | |
José Fonseca | 14a8c9d | 2010-01-01 19:58:39 +0000 | [diff] [blame] | 50 | if lib_env['platform'] == 'windows': |
| 51 | glew = lib_env.FindIxes(glew, 'LIBPREFIX', 'LIBSUFFIX') |
José Fonseca | 7bbf7f9 | 2009-12-31 21:10:25 +0000 | [diff] [blame] | 52 | |
José Fonseca | 14a8c9d | 2010-01-01 19:58:39 +0000 | [diff] [blame] | 53 | # Program specific environment settings |
| 54 | prog_env = env.Clone() |
José Fonseca | 7bbf7f9 | 2009-12-31 21:10:25 +0000 | [diff] [blame] | 55 | |
José Fonseca | 14a8c9d | 2010-01-01 19:58:39 +0000 | [diff] [blame] | 56 | prog_env.Prepend(LIBS = [glew]) |
José Fonseca | 57d0001 | 2009-01-23 12:32:35 +0000 | [diff] [blame] | 57 | |
José Fonseca | 14a8c9d | 2010-01-01 19:58:39 +0000 | [diff] [blame] | 58 | prog_env.Program( |
José Fonseca | 57d0001 | 2009-01-23 12:32:35 +0000 | [diff] [blame] | 59 | target = 'glewinfo', |
| 60 | source = ['glewinfo.c'], |
| 61 | ) |
| 62 | |
José Fonseca | 14a8c9d | 2010-01-01 19:58:39 +0000 | [diff] [blame] | 63 | prog_env.Program( |
José Fonseca | 57d0001 | 2009-01-23 12:32:35 +0000 | [diff] [blame] | 64 | target = 'visualinfo', |
| 65 | source = ['visualinfo.c'], |
| 66 | ) |
José Fonseca | 7bbf7f9 | 2009-12-31 21:10:25 +0000 | [diff] [blame] | 67 | |
| 68 | Export('glew') |