| | 1 | /* |
| | 2 | * Copyright (c) 1991, 2002 Michael J. Roberts. All Rights Reserved. |
| | 3 | * |
| | 4 | * Please see the accompanying license file, LICENSE.TXT, for information |
| | 5 | * on using and copying this software. |
| | 6 | */ |
| | 7 | /* |
| | 8 | Name |
| | 9 | t3_os.h - miscellaneous system-specific definitions for T3 |
| | 10 | Function |
| | 11 | Various standard definitions |
| | 12 | Notes |
| | 13 | None |
| | 14 | Modified |
| | 15 | 05/31/03 MJRoberts - creation |
| | 16 | */ |
| | 17 | |
| | 18 | /* ------------------------------------------------------------------------ */ |
| | 19 | /* |
| | 20 | * Generic definitions. We'll start with a set of default macro |
| | 21 | * definitions that should be usable on most platforms. System-specific |
| | 22 | * versions can override these by #undefing and re-#defining them later, |
| | 23 | * in #ifdef-protected sections for those specific platforms. |
| | 24 | */ |
| | 25 | |
| | 26 | /* |
| | 27 | * The name of the default project makefile. The t3make program will look |
| | 28 | * for a file with this name if no makefile is specifically identified |
| | 29 | * (with the t3make -f option) and no source files are specified on the |
| | 30 | * command line. |
| | 31 | * |
| | 32 | * Note that if this is overridden, it should NOT specify a directory |
| | 33 | * prefix; the default makefile should always be sought in the current |
| | 34 | * working directory. Also, note that gratuitous changes to the name are |
| | 35 | * discouraged; ports should only change the name as needed to conform to |
| | 36 | * local conventions, and then should only change it as much as needed, |
| | 37 | * and ideally in such a way that people accustomed to working with the |
| | 38 | * local system would typically map "makefile.t3m" to local conventions. |
| | 39 | * |
| | 40 | * For example, one good reason to change the name would be that the |
| | 41 | * platform only allows six-character filenames; in these cases we'd want |
| | 42 | * to choose a reasonable abbreviation, such as "mkfile". Another good |
| | 43 | * reason would be that periods are not valid filename characters. |
| | 44 | * Period-delimited suffixes are such a widespread convention that it's |
| | 45 | * likely that users of such a platform would have adopted a standard (or |
| | 46 | * at least typical) mapping for these suffixes; so that mapping should be |
| | 47 | * applied. A third good reason would be local upper/lower-case |
| | 48 | * conventions. |
| | 49 | */ |
| | 50 | #define T3_DEFAULT_PROJ_FILE "makefile.t3m" |
| | 51 | |
| | 52 | |
| | 53 | /* ------------------------------------------------------------------------ */ |
| | 54 | /* |
| | 55 | * Unix-specific definitions |
| | 56 | */ |
| | 57 | #ifdef UNIX |
| | 58 | |
| | 59 | /* |
| | 60 | * Redefine the default project makefile to conform to Unix conventions. |
| | 61 | * Unix makefiles are conventionally called "Makefile" - the "M" is |
| | 62 | * capitalized to take advantage of (1) ASCII sorting order and (2) the |
| | 63 | * fact that source files conventionally use all-lower-case names, so that |
| | 64 | * the makefile sorts ahead of its related source files in directory |
| | 65 | * listings. Cheesy but effective. We'll follow the convention by |
| | 66 | * looking for "Makefile.t3m" by default. |
| | 67 | */ |
| | 68 | #undef T3_DEFAULT_PROJ_FILE |
| | 69 | #define T3_DEFAULT_PROJ_FILE "Makefile.t3m" |
| | 70 | |
| | 71 | #endif /* UNIX */ |
| | 72 | |