aboutsummaryrefslogtreecommitdiff
path: root/gcc/d
diff options
context:
space:
mode:
authorIain Buclaw <ibuclaw@gdcproject.org>2019-04-16 21:16:43 +0000
committerIain Buclaw <ibuclaw@gcc.gnu.org>2019-04-16 21:16:43 +0000
commit460ad044bc85574e9acea9dade6ce7dda56ac742 (patch)
tree43ad6de2475846920fc86a4b89a75cf081c4e21a /gcc/d
parent0382a41d63c0a99ac2f92d831f31af8b6203b2f3 (diff)
downloadgcc-460ad044bc85574e9acea9dade6ce7dda56ac742.zip
gcc-460ad044bc85574e9acea9dade6ce7dda56ac742.tar.gz
gcc-460ad044bc85574e9acea9dade6ce7dda56ac742.tar.bz2
d: Use build_exeext suffix for D generator programs.
Updated build and invocation of idgen and impcnvgen, ensuring that they are removed when cleaning the build directory. Added BUILD_LIBDEPS on the link command for the generator programs as well, which is necessary when the system installed compiler is not GCC. gcc/d/ChangeLog: 2019-04-16 Iain Buclaw <ibuclaw@gdcproject.org> * Make-lang.in (d.mostyclean): Clean idgen and impcnvgen. (d/idgen): Rename to d/idgen$(build_exeext), add BUILD_LIBDEPS. (d/impcnvgen): Rename to d/impcnvgen$(build_exeext), add BUILD_LIBDEPS. (d/id.c): Call idgen$(build_exeext). (d/impcnvtab.c): Call impcnvgen$(build_exeext). From-SVN: r270397
Diffstat (limited to 'gcc/d')
-rw-r--r--gcc/d/ChangeLog8
-rw-r--r--gcc/d/Make-lang.in21
2 files changed, 20 insertions, 9 deletions
diff --git a/gcc/d/ChangeLog b/gcc/d/ChangeLog
index 425ce25..d0210ff 100644
--- a/gcc/d/ChangeLog
+++ b/gcc/d/ChangeLog
@@ -1,3 +1,11 @@
+2019-04-16 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * Make-lang.in (d.mostyclean): Clean idgen and impcvgen.
+ (d/idgen): Rename to d/idgen$(build_exeext), add BUILD_LIBDEPS.
+ (d/impcvgen): Rename to d/impcvgen$(build_exeext), add BUILD_LIBDEPS.
+ (d/id.c): Call idgen$(build_exeext).
+ (d/impcnvtab.c): Call impcvgen$(build_exeext).
+
2019-04-14 Johannes Pfau <johannespfau@gmail.com>
PR d/87799
* d-system.h (_mkdir): Forward _mkdir on MinGW to mkdir in system.h.
diff --git a/gcc/d/Make-lang.in b/gcc/d/Make-lang.in
index 4e5b4a6..13b785e 100644
--- a/gcc/d/Make-lang.in
+++ b/gcc/d/Make-lang.in
@@ -279,7 +279,8 @@ d.mostlyclean:
-rm -f d/*$(objext)
-rm -f d/*$(coverageexts)
-rm -f $(D_GENERATED_SRCS)
- -rm -f d/gdc$(exeext) gdc-cross$(exeext) d/d21$(exeext)
+ -rm -f d/idgen$(build_exeext) d/impcnvgen$(build_exeext)
+ -rm -f gdc$(exeext) gdc-cross$(exeext) d21$(exeext)
d.clean:
d.distclean:
d.maintainer-clean:
@@ -316,21 +317,23 @@ d/%.o: d/dmd/root/%.c $(D_GENERATED_SRCS)
$(POSTCOMPILE)
# Generated programs.
-d/idgen: d/idgen.dmdgen.o
- +$(LINKER_FOR_BUILD) $(BUILD_LINKERFLAGS) $(BUILD_LDFLAGS) -o $@ $^
+d/idgen$(build_exeext): d/idgen.dmdgen.o $(BUILD_LIBDEPS)
+ +$(LINKER_FOR_BUILD) $(BUILD_LINKERFLAGS) $(BUILD_LDFLAGS) -o $@ \
+ $(filter-out $(BUILD_LIBDEPS), $^) $(BUILD_LIBS)
-d/impcvgen: d/impcnvgen.dmdgen.o
- +$(LINKER_FOR_BUILD) $(BUILD_LINKERFLAGS) $(BUILD_LDFLAGS) -o $@ $^
+d/impcnvgen$(build_exeext): d/impcnvgen.dmdgen.o $(BUILD_LIBDEPS)
+ +$(LINKER_FOR_BUILD) $(BUILD_LINKERFLAGS) $(BUILD_LDFLAGS) -o $@ \
+ $(filter-out $(BUILD_LIBDEPS), $^) $(BUILD_LIBS)
# Generated sources.
-d/id.c: d/idgen
- cd d && ./idgen
+d/id.c: d/idgen$(build_exeext)
+ cd d && ./idgen$(build_exeext)
# idgen also generates id.h; just verify it exists.
d/id.h: d/id.c
-d/impcnvtab.c: d/impcvgen
- cd d && ./impcvgen
+d/impcnvtab.c: d/impcnvgen$(build_exeext)
+ cd d && ./impcnvgen$(build_exeext)
d/%.dmdgen.o: $(srcdir)/d/dmd/%.c
$(DMDGEN_COMPILE) $(D_INCLUDES) $<