| 245 | staticfn |
| 246 | #endif |
| 247 | void |
| 248 | make_version(void) |
| 249 | { |
| 250 | int i; |
| 251 | |
| 252 | /* |
| 253 | * integer version number |
| 254 | */ |
| 255 | version.incarnation = ((unsigned long) VERSION_MAJOR << 24) |
| 256 | | ((unsigned long) VERSION_MINOR << 16) |
| 257 | | ((unsigned long) PATCHLEVEL << 8) |
| 258 | | ((unsigned long) EDITLEVEL); |
| 259 | /* |
| 260 | * encoded feature list |
| 261 | * Note: if any of these magic numbers are changed or reassigned, |
| 262 | * EDITLEVEL in patchlevel.h should be incremented at the same time. |
| 263 | * The actual values have no special meaning, and the category |
| 264 | * groupings are just for convenience. |
| 265 | */ |
| 266 | version.feature_set = (unsigned long) (0L |
| 267 | /* levels and/or topology (0..4) */ |
| 268 | /* monsters (5..9) */ |
| 269 | #ifdef MAIL_STRUCTURES |
| 270 | | (1L << 6) |
| 271 | #endif |
| 272 | /* objects (10..14) */ |
| 273 | /* flag bits and/or other global variables (15..26) */ |
| 274 | /* color support always*/ | (1L << 17) |
| 275 | #ifdef INSURANCE |
| 276 | | (1L << 18) |
| 277 | #endif |
| 278 | #ifdef SCORE_ON_BOTL |
| 279 | | (1L << 19) |
| 280 | #endif |
| 281 | ); |
| 282 | /* |
| 283 | * Value used for object & monster sanity check. |
| 284 | * (NROFARTIFACTS<<24) | (NUM_OBJECTS<<12) | (NUMMONS<<0) |
| 285 | */ |
| 286 | for (i = 1; artifact_names[i]; i++) |
| 287 | continue; |
| 288 | version.entity_count = (unsigned long) (i - 1); |
| 289 | i = NUM_OBJECTS; |
| 290 | version.entity_count = (version.entity_count << 12) | (unsigned long) i; |
| 291 | i = NUMMONS; |
| 292 | version.entity_count = (version.entity_count << 12) | (unsigned long) i; |
| 293 | /* free bits in here */ |
| 294 | return; |
| 295 | } |
| 296 | |
| 297 | #if defined(MAKEDEFS_C) || defined(FOR_RUNTIME) |
| 298 |
no outgoing calls
no test coverage detected