detect.py 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. import os
  2. import sys
  3. def is_active():
  4. return True
  5. def get_name():
  6. return "Haiku"
  7. def can_build():
  8. if (os.name != "posix"):
  9. return False
  10. if (sys.platform == "darwin"):
  11. return False
  12. return True
  13. def get_opts():
  14. return [
  15. ('debug_release', 'Add debug symbols to release version','no')
  16. ]
  17. def get_flags():
  18. return [
  19. ('builtin_zlib', 'no'),
  20. ('glew', 'yes'),
  21. ]
  22. def configure(env):
  23. is64 = sys.maxsize > 2**32
  24. if (env["bits"]=="default"):
  25. if (is64):
  26. env["bits"]="64"
  27. else:
  28. env["bits"]="32"
  29. env.Append(CPPPATH = ['#platform/haiku'])
  30. env["CC"] = "gcc-x86"
  31. env["CXX"] = "g++-x86"
  32. if (env["target"]=="release"):
  33. if (env["debug_release"]=="yes"):
  34. env.Append(CCFLAGS=['-g2'])
  35. else:
  36. env.Append(CCFLAGS=['-O3','-ffast-math'])
  37. elif (env["target"]=="release_debug"):
  38. env.Append(CCFLAGS=['-O2','-ffast-math','-DDEBUG_ENABLED'])
  39. elif (env["target"]=="debug"):
  40. env.Append(CCFLAGS=['-g2', '-Wall','-DDEBUG_ENABLED','-DDEBUG_MEMORY_ENABLED'])
  41. #env.Append(CCFLAGS=['-DFREETYPE_ENABLED'])
  42. env.Append(CPPFLAGS = ['-DPTHREAD_NO_RENAME']) # TODO: enable when we have pthread_setname_np
  43. env.Append(CPPFLAGS = ['-DOPENGL_ENABLED', '-DMEDIA_KIT_ENABLED'])
  44. env.Append(CPPFLAGS = ['-DUNIX_ENABLED', '-DGLES2_ENABLED', '-DGLES_OVER_GL'])
  45. env.Append(LIBS = ['be', 'game', 'media', 'network', 'bnetapi', 'z', 'GL'])
  46. import methods
  47. env.Append(BUILDERS = {'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl')})
  48. env.Append(BUILDERS = {'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl')})
  49. env.Append(BUILDERS = {'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl')})