From aaa277648305ff90ca11aafcd0802a480e3b6e33 Mon Sep 17 00:00:00 2001 From: Pierre Pronchery Date: Sat, 22 Sep 2012 18:44:08 +0000 Subject: [PATCH] Fixed object targets with filenames not matching the source --- src/makefile.c | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/src/makefile.c b/src/makefile.c index 9283668..a770375 100644 --- a/src/makefile.c +++ b/src/makefile.c @@ -1369,10 +1369,13 @@ static int _target_source(Configure * configure, FILE * fp, case OT_ASM_SOURCE: if(configure->prefs->flags & PREFS_n) break; - fprintf(fp, "\n%s.o", source); + if(tt == TT_OBJECT) + fprintf(fp, "\n%s", target); + else + fprintf(fp, "\n%s%s", source, ".o"); if(tt == TT_LIBTOOL) fprintf(fp, " %s.lo", source); - fprintf(fp, ": %s.%s", source, extension); + fprintf(fp, "%s%s%s%s", ": ", source, ".", extension); source[len] = '.'; /* FIXME ugly */ _source_depends(configure->config, fp, source); source[len] = '\0'; @@ -1387,10 +1390,13 @@ static int _target_source(Configure * configure, FILE * fp, case OT_C_SOURCE: if(configure->prefs->flags & PREFS_n) break; - fprintf(fp, "\n%s%s", source, ".o"); + if(tt == TT_OBJECT) + fprintf(fp, "\n%s", target); + else + fprintf(fp, "\n%s%s", source, ".o"); if(tt == TT_LIBTOOL) fprintf(fp, " %s%s", source, ".lo"); - fprintf(fp, ": %s.%s", source, extension); + fprintf(fp, "%s%s%s%s", ": ", source, ".", extension); source[len] = '.'; /* FIXME ugly */ _source_depends(configure->config, fp, source); /* FIXME do both wherever also relevant */ @@ -1419,8 +1425,11 @@ static int _target_source(Configure * configure, FILE * fp, case OT_CXX_SOURCE: if(configure->prefs->flags & PREFS_n) break; - fprintf(fp, "%s%s%s%s%s%s", "\n", source, ".o: ", - source, ".", extension); + if(tt == TT_OBJECT) + fprintf(fp, "\n%s", target); + else + fprintf(fp, "\n%s%s", source, ".o"); + fprintf(fp, "%s%s%s%s", ": ", source, ".", extension); source[len] = '.'; /* FIXME ugly */ _source_depends(configure->config, fp, source); p = config_get(configure->config, source, "cxxflags");