Hi!

--enable-link-serialization relies on each FE participating properly,
setting <lang>.serial, depending on $(<lang>.prev) and printing progress.
The configure option is mainly for LTO bootstraps when we don't want to link
all the FEs at once because that can consume too much memory.

The comment changes are unrelated, just something I've spotted while
working on this.  .exe is a Windows suffix, so either we shouldn't
talk about suffixes in the comments or use there $(exeext) as well
to make it clear that it is dependent on the host/build.

Tested on x86_64-linux with --enable-languages=c,c++,cobol \
--enable-link-serialization, ok for trunk?

2025-03-11  Jakub Jelinek  <ja...@redhat.com>

        * Make-lang.in: Remove .exe extension from comments.
        (cobol.serial): Set to cobol1$(exeext).
        (cobol1$(exeext)): Depend on $(cobol.prev).  Add
        LINK_PROGRESS calls before/after the link command.

--- gcc/Make-lang.in.jj 2025-03-11 09:57:19.026823436 +0100
+++ gcc/Make-lang.in    2025-03-11 10:02:07.984835720 +0100
@@ -38,6 +38,7 @@ gcobol_INSTALL_NAME := $(shell echo gcob
 gcobol_TARGET_INSTALL_NAME := $(target_noncanonical)-$(shell echo gcobol|sed 
'$(program_transform_name)')
 
 cobol: cobol1$(exeext)
+cobol.serial = cobol1$(exeext)
 .PHONY: cobol
 
 BINCLUDE ?= ./gcc
@@ -67,7 +68,7 @@ YFLAGS = -Werror -Wmidrule-values -Wno-y
 LFLAGS = -d -Ca
 
 #
-# These are the object files for creating the cobol1.exe compiler:
+# These are the object files for creating the cobol1 compiler:
 #
 cobol1_OBJS =    \
  cobol/cdf.o        \
@@ -112,7 +113,7 @@ cobol/charmaps.o: cobol/charmaps.cc $(LI
 cobol/valconv.o: cobol/valconv.cc $(LIB_SOURCE_H)
 
 #
-# These are the object files for creating the gcobol.exe "driver"
+# These are the object files for creating the gcobol "driver"
 #
 GCOBOL_D_OBJS = $(GCC_OBJS) cobol/gcobolspec.o
 
@@ -133,7 +134,7 @@ cobol_OBJS = \
 CFLAGS-cobol/gcobolspec.o += $(DRIVER_DEFINES)
 
 #
-# This controls the build of the gcobol.exe "driver"
+# This controls the build of the gcobol "driver"
 #
 gcobol$(exeext): \
         $(GCOBOL_D_OBJS) \
@@ -145,7 +146,7 @@ gcobol$(exeext): \
         $(EXTRA_GCC_LIBS) $(LIBS)
 
 #
-# These control the build of the cobol1.exe source-to-GENERIC converter
+# These control the build of the cobol1 source-to-GENERIC converter
 #
 
 # First, files needed for parsing:
@@ -264,11 +265,13 @@ cobol.srcextra: cobol/parse.cc cobol/cdf
        ln -f $^ cobol/parse.h cobol/cdf.h $(srcdir)/cobol/
 
 
-# And the cobol1.exe front end
+# And the cobol1 front end
 
-cobol1$(exeext): $(cobol1_OBJS)        $(BACKEND) $(LIBDEPS) attribs.o
+cobol1$(exeext): $(cobol1_OBJS) $(BACKEND) $(LIBDEPS) attribs.o $(cobol.prev)
+       @$(call LINK_PROGRESS,$(INDEX.cobol),start)
        +$(LLINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) attribs.o -o $@       \
              $(cobol1_OBJS) $(BACKEND) $(LIBS) $(BACKENDLIBS)
+       @$(call LINK_PROGRESS,$(INDEX.cobol),end)
 
 # FIXME
 cobol.all.cross:

        Jakub

Reply via email to