LocalSetup.pp 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451
  1. //
  2. // LocalSetup.pp
  3. //
  4. // This file contains further instructions to set up the DTOOL package
  5. // when using ppremake. In particular, it creates the dtool_config.h
  6. // file based on the user's selected configure variables. This script
  7. // need not execute when BUILD_TYPE is "autoconf"; in this case, the
  8. // dtool_config.h file will automatically be correctly generated by
  9. // configure.
  10. //
  11. #print
  12. #print Configuring support for the following optional third-party packages:
  13. #if $[HAVE_NSPR]
  14. #print + NSPR
  15. #else
  16. #print - Did not find NSPR
  17. #endif
  18. #if $[HAVE_SSL]
  19. #print + OpenSSL
  20. #else
  21. #print - Did not find OpenSSL
  22. #endif
  23. #if $[HAVE_JPEG]
  24. #print + libjpeg
  25. #else
  26. #print - Did not find libjpeg
  27. #endif
  28. #if $[HAVE_PNG]
  29. #print + libpng
  30. #else
  31. #print - Did not find libpng
  32. #endif
  33. #if $[HAVE_TIFF]
  34. #print + libtiff
  35. #else
  36. #print - Did not find libtiff
  37. #endif
  38. #if $[HAVE_FFTW]
  39. #print + fftw
  40. #else
  41. #print - Did not find fftw
  42. #endif
  43. #if $[HAVE_CG]
  44. #print + Nvidia Cg High Level Shading Language
  45. #else
  46. #print - Did not find Nvidia Cg High Level Shading Language
  47. #endif
  48. #if $[HAVE_CGGL]
  49. #print + Cg OpenGL API
  50. #else
  51. #print - Did not find Cg OpenGL API
  52. #endif
  53. #if $[HAVE_VRPN]
  54. #print + VRPN
  55. #else
  56. #print - Did not find VRPN
  57. #endif
  58. #if $[HAVE_ZLIB]
  59. #print + zlib
  60. #else
  61. #print - Did not find zlib
  62. #endif
  63. #if $[HAVE_RAD_MSS]
  64. #print + Miles Sound System
  65. #else
  66. #print - Did not find Miles Sound System
  67. #endif
  68. #if $[HAVE_FMOD]
  69. #print + FMOD sound library
  70. #else
  71. #print - Did not find FMOD sound library
  72. #endif
  73. #if $[HAVE_FREETYPE]
  74. #print + Freetype
  75. #else
  76. #print - Did not find Freetype
  77. #endif
  78. #if $[HAVE_GL]
  79. #print + OpenGL
  80. #else
  81. #print - Did not find OpenGL
  82. #endif
  83. #if $[HAVE_DX]
  84. #print + DirectX
  85. #else
  86. #print - Did not find DirectX
  87. #endif
  88. #if $[HAVE_MAYA]
  89. #print + OpenMaya
  90. #else
  91. #print - Did not find OpenMaya
  92. #endif
  93. #print
  94. #if $[and $[HAVE_INTERROGATE],$[HAVE_PYTHON]]
  95. #print Compilation will generate Python interfaces.
  96. #else
  97. #print Configuring Panda WITHOUT Python interfaces.
  98. #endif
  99. #print
  100. #print See dtool_config.h for more details about the specified configuration.
  101. #print
  102. // We don't include the ppremake version in the first comment line of
  103. // the output to dtool_config.h, below, to minimize unnecessary
  104. // complete rebuilds due to an updated ppremake version.
  105. #output dtool_config.h notouch
  106. #format straight
  107. /* dtool_config.h. Generated automatically by $[PPREMAKE] from $[SOURCEFILE]. */
  108. /* Define if we have Python installed. */
  109. $[cdefine HAVE_PYTHON]
  110. /* Define if we have Python as a framework (Mac OS X). */
  111. $[cdefine PYTHON_FRAMEWORK]
  112. /* Define if we have RAD game tools, Miles Sound System installed. */
  113. $[cdefine HAVE_RAD_MSS]
  114. /* Define if we have FMOD installed. */
  115. $[cdefine HAVE_FMOD]
  116. /* Define if we have Freetype 2.0 or better available. */
  117. $[cdefine HAVE_FREETYPE]
  118. /* Define if we want to compile in a default font. */
  119. $[cdefine COMPILE_IN_DEFAULT_FONT]
  120. /* Define if we have Maya available. */
  121. $[cdefine HAVE_MAYA]
  122. $[cdefine MAYA_PRE_5_0]
  123. /* Define if we have SoftImage available. */
  124. $[cdefine HAVE_SOFTIMAGE]
  125. /* Define if we have NSPR installed. */
  126. $[cdefine HAVE_NSPR]
  127. /* Define if we have OpenSSL installed. */
  128. $[cdefine HAVE_SSL]
  129. $[cdefine SSL_097]
  130. $[cdefine REPORT_OPENSSL_ERRORS]
  131. /* Define if we have libjpeg installed. */
  132. $[cdefine HAVE_JPEG]
  133. /* Define if we have libpng installed. */
  134. $[cdefine HAVE_PNG]
  135. /* Define if we have libtiff installed. */
  136. $[cdefine HAVE_TIFF]
  137. /* Define if we have libfftw installed. */
  138. $[cdefine HAVE_FFTW]
  139. /* Define if we have NURBS++ installed. */
  140. $[cdefine HAVE_NURBSPP]
  141. /* Define if we have VRPN installed. */
  142. $[cdefine HAVE_VRPN]
  143. /* Define if we have HELIX installed. */
  144. $[cdefine HAVE_HELIX]
  145. /* Define if we have CG installed. */
  146. $[cdefine HAVE_CG]
  147. /* Define if we have CGGL installed. */
  148. $[cdefine HAVE_CGGL]
  149. /* Define if we have zlib installed. */
  150. $[cdefine HAVE_ZLIB]
  151. /* Define if we have OpenGL installed and want to build for GL. */
  152. $[cdefine HAVE_GL]
  153. /* Define if we have Mesa installed and want to build mesadisplay. */
  154. $[cdefine HAVE_MESA]
  155. $[cdefine MESA_MGL]
  156. /* Define if we want to build with SGI OpenGL extensions. */
  157. $[cdefine HAVE_SGIGL]
  158. /* Define if we have GLX installed and want to build for GLX. */
  159. $[cdefine HAVE_GLX]
  160. /* Define if we have Windows-GL installed and want to build for Wgl. */
  161. $[cdefine HAVE_WGL]
  162. /* Define if we have DirectX installed and want to build for DX. */
  163. $[cdefine HAVE_DX]
  164. /* Define if we have Chromium installed and want to use it. */
  165. $[cdefine HAVE_CHROMIUM]
  166. /* Define if we want to compile the threading code. */
  167. $[cdefine HAVE_THREADS]
  168. /* Define if we want to compile the net code. */
  169. $[cdefine HAVE_NET]
  170. /* Define if we want to compile the audio code. */
  171. $[cdefine HAVE_AUDIO]
  172. /* Define if we have bison and flex available. */
  173. $[cdefine HAVE_BISON]
  174. /* Define if we want to use PStats. */
  175. $[cdefine DO_PSTATS]
  176. /* Define if we want to type-check downcasts. */
  177. $[cdefine DO_DCAST]
  178. /* Define if we want to provide collision system recording and
  179. visualization tools. */
  180. $[cdefine DO_COLLISION_RECORDING]
  181. /* Define if we want to track callbacks from within the show code. */
  182. $[cdefine TRACK_IN_INTERPRETER]
  183. /* Define if we want to enable track-memory-usage. */
  184. $[cdefine DO_MEMORY_USAGE]
  185. /* Define if we want to compile in support for pipelining. */
  186. $[cdefine DO_PIPELINING]
  187. /* Define if we want to keep Notify debug messages around, or undefine
  188. to compile them out. */
  189. $[cdefine NOTIFY_DEBUG]
  190. /* Define if we want to export template classes from the DLL. Only
  191. makes sense to MSVC++. */
  192. $[cdefine EXPORT_TEMPLATES]
  193. /* Define if we are linking PANDAGL in with PANDA. */
  194. $[cdefine LINK_IN_GL]
  195. /* Define if we are linking PANDAPHYSICS in with PANDA. */
  196. $[cdefine LINK_IN_PHYSICS]
  197. /* The compiled-in character(s) to expect to separate different
  198. components of a path list (e.g. $PRC_PATH). */
  199. # define DEFAULT_PATHSEP "$[DEFAULT_PATHSEP]"
  200. /* The compiled-in default directory to look for the Configrc file, in
  201. the absence of the PRC_DIR environment variable set, and in
  202. the absence of anything specified via the configpath directive. */
  203. # define DEFAULT_PRC_DIR "$[unixfilename $[DEFAULT_PRC_DIR]]"
  204. /* The compiled-in name of the environment variable(s) that contain
  205. the name of a single directory in which to search for prc files. */
  206. # define PRC_DIR_ENVVARS "$[PRC_DIR_ENVVARS]"
  207. /* The compiled-in name of the environment variable(s) that contain
  208. the name of multiple directories, separated by DEFAULT_PATHSEP, in
  209. which to search for prc files. */
  210. # define PRC_PATH_ENVVARS "$[PRC_PATH_ENVVARS]"
  211. /* The filename(s) to search for in the above paths. Normally this is
  212. *.prc. */
  213. # define PRC_PATTERNS "$[PRC_PATTERNS]"
  214. /* The filename(s) to search for, and execute, in the above paths.
  215. Normally this is empty. */
  216. # define PRC_EXECUTABLE_PATTERNS "$[PRC_EXECUTABLE_PATTERNS]"
  217. /* The environment variable that defines optional args to pass to
  218. executables found that match one of the above patterns. */
  219. # define PRC_EXECUTABLE_ARGS_ENVVAR "$[PRC_EXECUTABLE_ARGS_ENVVAR]"
  220. /* The filename that specifies the public keys to import into
  221. config. */
  222. # define PRC_PUBLIC_KEYS_FILENAME "$[unixfilename $[PRC_PUBLIC_KEYS_FILENAME]]"
  223. #if $[PRC_PUBLIC_KEYS_FILENAME]
  224. # define PRC_PUBLIC_KEYS_INCLUDE "$[osfilename $[PRC_PUBLIC_KEYS_FILENAME]]"
  225. #endif
  226. /* Define if we want to enable the "trust_level" feature of prc config
  227. variables. This requires OpenSSL and PRC_PUBLIC_KEYS_FILENAME,
  228. above. */
  229. $[cdefine PRC_RESPECT_TRUST_LEVEL]
  230. /* Define if you want to save the descriptions for ConfigVariables. */
  231. $[cdefine PRC_SAVE_DESCRIPTIONS]
  232. /* Define if your processor stores words with the most significant
  233. byte first (like Motorola and SPARC, unlike Intel and VAX). */
  234. $[cdefine WORDS_BIGENDIAN]
  235. /* Define if the C++ compiler uses namespaces. */
  236. $[cdefine HAVE_NAMESPACE]
  237. /* Define if fstream::open() accepts a third parameter for umask. */
  238. $[cdefine HAVE_OPEN_MASK]
  239. /* Define if some header file defines wchar_t. */
  240. $[cdefine HAVE_WCHAR_T]
  241. /* Define if the <string> header file defines wstring. */
  242. $[cdefine HAVE_WSTRING]
  243. /* Define if the C++ compiler supports the typename keyword. */
  244. $[cdefine HAVE_TYPENAME]
  245. /* Define if we can trust the compiler not to insert extra bytes in
  246. structs between base structs and derived structs. */
  247. $[cdefine SIMPLE_STRUCT_POINTERS]
  248. /* Define if we have Dinkumware STL installed. */
  249. $[cdefine HAVE_DINKUM]
  250. /* Define if we have STL hash_map etc. available */
  251. $[cdefine HAVE_STL_HASH]
  252. /* Define if we have a gettimeofday() function. */
  253. $[cdefine HAVE_GETTIMEOFDAY]
  254. /* Define if gettimeofday() takes only one parameter. */
  255. $[cdefine GETTIMEOFDAY_ONE_PARAM]
  256. /* Define if you have the getopt function. */
  257. $[cdefine HAVE_GETOPT]
  258. /* Define if you have the getopt_long_only function. */
  259. $[cdefine HAVE_GETOPT_LONG_ONLY]
  260. /* Define if getopt appears in getopt.h. */
  261. $[cdefine HAVE_GETOPT_H]
  262. /* Define if you have ioctl(TIOCGWINSZ) to determine terminal width. */
  263. $[cdefine IOCTL_TERMINAL_WIDTH]
  264. /* Do the system headers define a "streamsize" typedef? */
  265. $[cdefine HAVE_STREAMSIZE]
  266. /* Do the system headers define key ios typedefs like ios::openmode
  267. and ios::fmtflags? */
  268. $[cdefine HAVE_IOS_TYPEDEFS]
  269. /* Define if the C++ iostream library defines ios::binary. */
  270. $[cdefine HAVE_IOS_BINARY]
  271. /* Can we safely call getenv() at static init time? */
  272. $[cdefine STATIC_INIT_GETENV]
  273. /* Can we read the file /proc/self/environ to determine our
  274. environment variables at static init time? */
  275. $[cdefine HAVE_PROC_SELF_ENVIRON]
  276. /* Do we have a global pair of argc/argv variables that we can read at
  277. static init time? Should we prototype them? What are they called? */
  278. $[cdefine HAVE_GLOBAL_ARGV]
  279. $[cdefine PROTOTYPE_GLOBAL_ARGV]
  280. $[cdefine GLOBAL_ARGV]
  281. $[cdefine GLOBAL_ARGC]
  282. /* Can we read the file /proc/self/cmdline to determine our
  283. command-line arguments at static init time? */
  284. $[cdefine HAVE_PROC_SELF_CMDLINE]
  285. /* Define if you have the <io.h> header file. */
  286. $[cdefine HAVE_IO_H]
  287. /* Define if you have the <iostream> header file. */
  288. $[cdefine HAVE_IOSTREAM]
  289. /* Define if you have the <malloc.h> header file. */
  290. $[cdefine HAVE_MALLOC_H]
  291. /* Define if you have the <sys/malloc.h> header file. */
  292. $[cdefine HAVE_SYS_MALLOC_H]
  293. /* Define if you have the <alloca.h> header file. */
  294. $[cdefine HAVE_ALLOCA_H]
  295. /* Define if you have the <locale.h> header file. */
  296. $[cdefine HAVE_LOCALE_H]
  297. /* Define if you have the <minmax.h> header file. */
  298. $[cdefine HAVE_MINMAX_H]
  299. /* Define if you have the <sstream> header file. */
  300. $[cdefine HAVE_SSTREAM]
  301. /* Define if you have the <new> header file. */
  302. $[cdefine HAVE_NEW]
  303. /* Define if you have the <sys/types.h> header file. */
  304. $[cdefine HAVE_SYS_TYPES_H]
  305. /* Define if you have the <sys/time.h> header file. */
  306. $[cdefine HAVE_SYS_TIME_H]
  307. /* Define if you have the <unistd.h> header file. */
  308. $[cdefine HAVE_UNISTD_H]
  309. /* Define if you have the <utime.h> header file. */
  310. $[cdefine HAVE_UTIME_H]
  311. /* Define if you have the <glob.h> header file. */
  312. $[cdefine HAVE_GLOB_H]
  313. /* Define if you have the <dirent.h> header file. */
  314. $[cdefine HAVE_DIRENT_H]
  315. /* Do we have <sys/soundcard.h> (and presumably a Linux-style audio
  316. interface)? */
  317. $[cdefine HAVE_SYS_SOUNDCARD_H]
  318. /* Do we have RTTI (and <typeinfo>)? */
  319. $[cdefine HAVE_RTTI]
  320. /* Must global operator new and delete functions throw exceptions? */
  321. $[cdefine GLOBAL_OPERATOR_NEW_EXCEPTIONS]
  322. /* What style STL allocator should we declare? */
  323. #define OLD_STYLE_ALLOCATOR
  324. #define GNU_STYLE_ALLOCATOR
  325. #define VC6_STYLE_ALLOCATOR
  326. #define MODERN_STYLE_ALLOCATOR
  327. #define NO_STYLE_ALLOCATOR
  328. #if $[eq $[OPTIMIZE], 4]
  329. // In optimize level 4, we never try to use custom allocators.
  330. #set NO_STYLE_ALLOCATOR 1
  331. #elif $[eq $[STL_ALLOCATOR], OLD]
  332. // "OLD": Irix 6.2-era STL.
  333. #set OLD_STYLE_ALLOCATOR 1
  334. #elif $[eq $[STL_ALLOCATOR], GNU]
  335. // "GNU": gcc 2.95-era.
  336. #set GNU_STYLE_ALLOCATOR 1
  337. #elif $[eq $[STL_ALLOCATOR], VC6]
  338. // "VC6": Microsoft Visual C++ 6.
  339. #set VC6_STYLE_ALLOCATOR 1
  340. #elif $[eq $[STL_ALLOCATOR], MODERN]
  341. // "MODERN": Have we finally come to a standard?
  342. #set MODERN_STYLE_ALLOCATOR 1
  343. #else
  344. // Anything else is "unknown". We won't try to define allocators at
  345. // all.
  346. #set NO_STYLE_ALLOCATOR 1
  347. #endif
  348. $[cdefine OLD_STYLE_ALLOCATOR]
  349. $[cdefine GNU_STYLE_ALLOCATOR]
  350. $[cdefine VC6_STYLE_ALLOCATOR]
  351. $[cdefine MODERN_STYLE_ALLOCATOR]
  352. $[cdefine NO_STYLE_ALLOCATOR]
  353. #end dtool_config.h