b.liu | e958203 | 2025-04-17 19:18:16 +0800 | [diff] [blame] | 1 | --- a/src/main.c |
| 2 | +++ b/src/main.c |
| 3 | @@ -213,6 +213,8 @@ int main (int argc, char *argv[]) |
| 4 | |
| 5 | void check_options (void) |
| 6 | { |
| 7 | + const char * staging_dir = NULL; |
| 8 | + char * m4_staging = NULL; |
| 9 | int i; |
| 10 | const char * m4 = NULL; |
| 11 | |
| 12 | @@ -341,7 +343,10 @@ void check_options (void) |
| 13 | |
| 14 | /* Setup the filter chain. */ |
| 15 | output_chain = filter_create_int(NULL, filter_tee_header, headerfilename); |
| 16 | - if ( !(m4 = getenv("M4"))) { |
| 17 | + if ( (staging_dir = getenv("STAGING_DIR_HOST"))) { |
| 18 | + asprintf(&m4_staging, "%s/bin/m4", staging_dir); |
| 19 | + m4 = m4_staging; |
| 20 | + } else if ( !(m4 = getenv("M4"))) { |
| 21 | char *slash; |
| 22 | m4 = M4; |
| 23 | if ((slash = strrchr(M4, '/')) != NULL) { |