aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2025-03-11 11:08:27 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2025-03-11 11:08:27 +0100
commit8e8546d1260fca932b0bfaaa7e200ecaeae46c48 (patch)
treeadbaaf9010a3b05cb9b199f038c7d481e09cfb48
parent3f717f9565c5c40bcaa1e0b5419fe5bf65ad7f1c (diff)
downloadgcc-8e8546d1260fca932b0bfaaa7e200ecaeae46c48.zip
gcc-8e8546d1260fca932b0bfaaa7e200ecaeae46c48.tar.gz
gcc-8e8546d1260fca932b0bfaaa7e200ecaeae46c48.tar.bz2
cobol: Fix --enable-link-serialization build
--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. 2025-03-11 Jakub Jelinek <jakub@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.
-rw-r--r--gcc/cobol/Make-lang.in15
1 files changed, 9 insertions, 6 deletions
diff --git a/gcc/cobol/Make-lang.in b/gcc/cobol/Make-lang.in
index 1d98c25..a4e005a 100644
--- a/gcc/cobol/Make-lang.in
+++ b/gcc/cobol/Make-lang.in
@@ -38,6 +38,7 @@ gcobol_INSTALL_NAME := $(shell echo gcobol|sed '$(program_transform_name)')
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-yacc \
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 $(LIB_SOURCE_H)
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.cc cobol/scan.cc
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: