768e925271
This allows us not to have to hack our definitions in the upstream files, making it easier to upgrade to newer versions in the future. For the include paths to work, the headers are moved to a GL subfolder to match their upstream location.
64 lines
1.7 KiB
Python
64 lines
1.7 KiB
Python
import os
|
|
import sys
|
|
|
|
def is_active():
|
|
return True
|
|
|
|
def get_name():
|
|
return "Haiku"
|
|
|
|
def can_build():
|
|
if (os.name != "posix"):
|
|
return False
|
|
|
|
if (sys.platform == "darwin"):
|
|
return False
|
|
|
|
return True
|
|
|
|
def get_opts():
|
|
return [
|
|
('debug_release', 'Add debug symbols to release version','no')
|
|
]
|
|
|
|
def get_flags():
|
|
return [
|
|
('builtin_zlib', 'no'),
|
|
#('glew', 'yes'), # TODO: investigate the GLEW situation on Haiku
|
|
]
|
|
|
|
def configure(env):
|
|
is64 = sys.maxsize > 2**32
|
|
|
|
if (env["bits"]=="default"):
|
|
if (is64):
|
|
env["bits"]="64"
|
|
else:
|
|
env["bits"]="32"
|
|
|
|
env.Append(CPPPATH = ['#platform/haiku'])
|
|
|
|
env["CC"] = "gcc"
|
|
env["CXX"] = "g++"
|
|
|
|
if (env["target"]=="release"):
|
|
if (env["debug_release"]=="yes"):
|
|
env.Append(CCFLAGS=['-g2'])
|
|
else:
|
|
env.Append(CCFLAGS=['-O3','-ffast-math'])
|
|
elif (env["target"]=="release_debug"):
|
|
env.Append(CCFLAGS=['-O2','-ffast-math','-DDEBUG_ENABLED'])
|
|
elif (env["target"]=="debug"):
|
|
env.Append(CCFLAGS=['-g2', '-Wall','-DDEBUG_ENABLED','-DDEBUG_MEMORY_ENABLED'])
|
|
|
|
#env.Append(CCFLAGS=['-DFREETYPE_ENABLED'])
|
|
env.Append(CPPFLAGS = ['-DPTHREAD_NO_RENAME']) # TODO: enable when we have pthread_setname_np
|
|
env.Append(CPPFLAGS = ['-DOPENGL_ENABLED', '-DMEDIA_KIT_ENABLED'])
|
|
env.Append(CPPFLAGS = ['-DUNIX_ENABLED', '-DGLES2_ENABLED', '-DGLES_OVER_GL'])
|
|
env.Append(LIBS = ['be', 'game', 'media', 'network', 'bnetapi', 'z', 'GL'])
|
|
|
|
import methods
|
|
env.Append(BUILDERS = {'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl')})
|
|
env.Append(BUILDERS = {'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl')})
|
|
env.Append(BUILDERS = {'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl')})
|