Config.osx.pp 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. //
  2. // Config.osx.pp
  3. //
  4. // This file defines some custom config variables for the osx
  5. // platform. It makes some initial guesses about compiler features,
  6. // etc.
  7. //
  8. // *******************************************************************
  9. // NOTE: you should not attempt to copy this file verbatim as your own
  10. // personal Config.pp file. Instead, you should start with an empty
  11. // Config.pp file, and add lines to it when you wish to override
  12. // settings given in here. In the normal ppremake system, this file
  13. // will always be read first, and then your personal Config.pp file
  14. // will be read later, which gives you a chance to override the
  15. // default settings found in this file. However, if you start by
  16. // copying the entire file, it will be difficult to tell which
  17. // settings you have customized, and it will be difficult to upgrade
  18. // to a subsequent version of Panda.
  19. // *******************************************************************
  20. //#define PYTHON_IPATH /Library/Frameworks/Python.framework/Headers
  21. //#define PYTHON_LPATH /Library/Frameworks/Python.framework/Headers
  22. #define PYTHON_IPATH /Library/Frameworks/Python.framework/Headers
  23. #define HAVE_PYTHON 1
  24. #define PYTHON_FRAMEWORK Python
  25. // What additional flags should we pass to interrogate?
  26. #define SYSTEM_IGATE_FLAGS -D__ppc__ -D__const=const -Dvolatile -D__BIG_ENDIAN__ -D__inline__=inline -D__GNUC__
  27. #define HAVE_GL 1
  28. #define IS_OSX 1
  29. //#define ZLIB_IPATH /usr/include
  30. //#define ZLIB_LPATH /usr/lib/
  31. //#define ZLIB_LIBS libz.dylib
  32. #define HAVE_ZLIB 1
  33. #define HAVE_JPEG 1
  34. #define HAVE_FREETYPE 1
  35. #define PNG_IPATH /opt/local/include
  36. #define PNG_LPATH /opt/local/lib
  37. #define PNG_LIBS png
  38. //#define HAVE_PNG 1
  39. #define HAVE_OPENSSL 1
  40. // Is libfftw installed, and where?
  41. #define FFTW_IPATH /opt/local/include
  42. #define FFTW_LPATH /opt/local/lib
  43. #define FFTW_LIBS drfftw dfftw
  44. //#define HAVE_FFTW 1
  45. #define TIFF_IPATH /opt/local/include
  46. #define TIFF_LPATH /opt/local/lib
  47. // Is the platform big-endian (like an SGI workstation) or
  48. // little-endian (like a PC)? Define this to the empty string to
  49. // indicate little-endian, or nonempty to indicate big-endian.
  50. #define WORDS_BIGENDIAN 1
  51. // Does the C++ compiler support namespaces?
  52. #define HAVE_NAMESPACE 1
  53. // Does the C++ compiler support ios::binary?
  54. #define HAVE_IOS_BINARY 1
  55. // How about the typename keyword?
  56. #define HAVE_TYPENAME 1
  57. // Will the compiler avoid inserting extra bytes in structs between a
  58. // base struct and its derived structs? It is safe to define this
  59. // false if you don't know, but if you know that you can get away with
  60. // this you may gain a tiny performance gain by defining this true.
  61. // If you define this true incorrectly, you will get lots of
  62. // assertion failures on execution.
  63. #define SIMPLE_STRUCT_POINTERS
  64. // Do we have a gettimeofday() function?
  65. #define HAVE_GETTIMEOFDAY 1
  66. // Does gettimeofday() take only one parameter?
  67. #define GETTIMEOFDAY_ONE_PARAM
  68. // Do we have getopt() and/or getopt_long_only() built into the
  69. // system?
  70. #define HAVE_GETOPT 1
  71. #define HAVE_GETOPT_LONG_ONLY
  72. // Are the above getopt() functions defined in getopt.h, or somewhere else?
  73. #define HAVE_GETOPT_H 1
  74. // Can we determine the terminal width by making an ioctl(TIOCGWINSZ) call?
  75. #define IOCTL_TERMINAL_WIDTH 1
  76. // Do the system headers define a "streamsize" typedef? How about the
  77. // ios::binary enumerated value? And other ios typedef symbols like
  78. // ios::openmode and ios::fmtflags?
  79. #define HAVE_STREAMSIZE 1
  80. #define HAVE_IOS_BINARY 1
  81. #define HAVE_IOS_TYPEDEFS 1
  82. // Can we safely call getenv() at static init time?
  83. #define STATIC_INIT_GETENV 1
  84. // Can we read the file /proc/self/environ to determine our
  85. // environment variables at static init time?
  86. #define HAVE_PROC_SELF_ENVIRON 1
  87. // Do we have a global pair of argc/argv variables that we can read at
  88. // static init time? Should we prototype them? What are they called?
  89. #define HAVE_GLOBAL_ARGV
  90. #define PROTOTYPE_GLOBAL_ARGV
  91. #define GLOBAL_ARGV __Argv
  92. #define GLOBAL_ARGC __Argc
  93. // Can we read the file /proc/self/cmdline to determine our
  94. // command-line arguments at static init time?
  95. #define HAVE_PROC_SELF_CMDLINE
  96. // Should we include <iostream> or <iostream.h>? Define HAVE_IOSTREAM
  97. // to nonempty if we should use <iostream>, or empty if we should use
  98. // <iostream.h>.
  99. #define HAVE_IOSTREAM 1
  100. // Do we have a true stringstream class defined in <sstream>?
  101. #define HAVE_SSTREAM 1
  102. // Does fstream::open() require a third parameter, specifying the
  103. // umask? Versions of gcc prior to 3.2 had this.
  104. #define HAVE_OPEN_MASK
  105. // Do the compiler or system libraries define wchar_t for you?
  106. #define HAVE_WCHAR_T 1
  107. // Does <string> define the typedef wstring? Most do, but for some
  108. // reason, versions of gcc before 3.0 didn't do this.
  109. #define HAVE_WSTRING 1
  110. // Do we have <new>?
  111. #define HAVE_NEW 1
  112. // Do we have <io.h>?
  113. #define HAVE_IO_H
  114. // Do we have <malloc.h>?
  115. #define HAVE_MALLOC_H 1
  116. // Do we have <alloca.h>?
  117. #define HAVE_ALLOCA_H 1
  118. // Do we have <locale.h>?
  119. #define HAVE_LOCALE_H 1
  120. // Do we have <minmax.h>?
  121. #define HAVE_MINMAX_H
  122. // Do we have <sys/types.h>?
  123. #define HAVE_SYS_TYPES_H 1
  124. #define HAVE_SYS_TIME_H 1
  125. // Do we have <unistd.h>?
  126. #define HAVE_UNISTD_H 1
  127. // Do we have <utime.h>?
  128. #define HAVE_UTIME_H 1
  129. // Do we have <dirent.h>?
  130. #define HAVE_DIRENT_H 1
  131. // Do we have <glob.h> (and do we want to use it instead of dirent.h)?
  132. #define HAVE_GLOB_H 1
  133. // Do we have <sys/soundcard.h> (and presumably a Linux-style audio
  134. // interface)?
  135. #define HAVE_SYS_SOUNDCARD_H 1
  136. // Do we have RTTI (and <typeinfo>)?
  137. #define HAVE_RTTI 1
  138. // Must global operator new and delete functions throw exceptions?
  139. #define GLOBAL_OPERATOR_NEW_EXCEPTIONS 1
  140. // Modern versions of gcc do support the latest STL allocator
  141. // definitions.
  142. #define USE_STL_ALLOCATOR 1
  143. // The dynamic library file extension (usually .so .dll or .dylib):
  144. #define DYNAMIC_LIB_EXT .dylib
  145. #define BUNDLE_EXT .so