Hash :
282b016e
Author :
Date :
2025-04-24T15:07:41
automake: algol68: rename A68 to A68C and AM_PROG_A68 to AM_PROG_A68C. From https://bugs.gnu.org/78033 (automake-patches). While upstreaming the Algol 68 autoconf support it was pointed out that the shell variable A68 should be renamed to A68C and that the macro AC_PROG_A68 should be renamed to AC_PROG_A68C. This is to be more consistent to the support for other languages like Go. This patch updates the Automake side. The Algol 68 code snippets are also updated to use modern stropping, which is the stropping regime now used by default by ga68. * bin/automake.in (a68): change config_vars, libtool_tags et al. * lib/Automake/Variable.pm: likewise rename. * doc/automake.texi: likewise rename. * t/a68-demo.sh: likewise modify.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
#! /bin/sh
# Copyright (C) 2025 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
# Basic check for Algol 68 support.
required=ga68
am_create_testdir=empty
. test-init.sh
cat > configure.ac << 'END'
AC_INIT([GNU Algol 68 Demo], [1.0], [bug-automake@gnu.org])
AC_CONFIG_SRCDIR([play.a68])
AC_CONFIG_AUX_DIR([build-aux])
AM_INIT_AUTOMAKE
AC_PROG_A68C
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
END
cat > Makefile.am << 'END'
AUTOMAKE_OPTIONS = subdir-objects
bin_PROGRAMS = work play
play_SOURCES = play.a68
work_SOURCES = work.a68
.PHONY: test-objs
check-local: test-objs
test-objs:
test -f play.$(OBJEXT)
test -f work.$(OBJEXT)
END
mkdir sub build-aux
$ACLOCAL
$AUTOCONF
$AUTOMAKE --add-missing
cat > work.a68 << 'END'
(puts ("We are working :-('n"))
END
cat > play.a68 << 'END'
(puts ("We are playing :-)'n"))
END
./configure
$MAKE
$MAKE test-objs
if ! cross_compiling; then
unindent > exp.play << 'END'
We are playing :-)
END
unindent > exp.work << 'END'
We are working :-(
END
for p in play work; do
# The program must run correctly (exit status = 0).
./$p
# And it must have the expected output. Note that we strip extra
# CR characters (if any), to cater to MinGW programs on MSYS.
# See automake bug#14493.
./$p | tr -d '\015' > got.$p || { cat got.$p; exit 1; }
cat exp.$p
cat got.$p
diff exp.$p got.$p
done
fi
$MAKE distcheck
: