| handles the libexecdir for as and other fixes |
| |
| --- cctools-698/as/driver.c |
| +++ cctools-698/as/driver.c |
| @@ -27,6 +27,9 @@ |
| char **envp) |
| { |
| const char *LIB = |
| +#ifdef ASLIBEXECDIR |
| + ASLIBEXECDIR; |
| +#else |
| #if defined(__OPENSTEP__) || defined(__HERA__) || \ |
| defined(__GONZO_BUNSEN_BEAKER__) || defined(__KODIAK__) |
| "/usr/libexec/"; |
| @@ -40,6 +42,7 @@ |
| #else |
| "/usr/local/libexec/gcc/darwin/"; |
| #endif |
| +#endif |
| const char *AS = "/as"; |
| |
| int i; |
| @@ -170,7 +170,11 @@ |
| } |
| |
| } |
| +#ifndef ASLIBEXECDIR |
| as = makestr(prefix, LIB, arch_name, AS, NULL); |
| +#else |
| + as = makestr(LIB, arch_name, AS, NULL); |
| +#endif |
| |
| /* |
| * If this assembler exist try to run it else print an error message. |
| @@ -182,6 +182,9 @@ |
| else |
| exit(1); |
| } |
| +#ifdef ASLIBEXECDIR |
| + as_local = ""; |
| +#else |
| as_local = makestr(prefix, LOCALLIB, arch_name, AS, NULL); |
| if(access(as_local, F_OK) == 0){ |
| argv[0] = as_local; |
| @@ -193,6 +198,8 @@ |
| exit(1); |
| } |
| else{ |
| +#endif |
| + { |
| printf("%s: assembler (%s or %s) for architecture %s not " |
| "installed\n", progname, as, as_local, arch_name); |
| arch_flags = get_arch_flags(); |
| @@ -183,6 +190,7 @@ |
| printf("%s for architecture %s\n", as, arch_flags[i].name); |
| count++; |
| } |
| +#ifndef ASLIBEXECDIR |
| else{ |
| as_local = makestr(LOCALLIB, arch_flags[i].name, AS, NULL); |
| if(access(as_local, F_OK) == 0){ |
| @@ -193,6 +201,7 @@ |
| count++; |
| } |
| } |
| +#endif |
| } |
| if(count == 0) |
| printf("%s: no assemblers installed\n", progname); |