mirror of
https://github.com/Mercury-Language/mercury.git
synced 2025-12-06 16:08:32 +00:00
The extra targets that this diff puts into .dep files are not yet used,
though they can be (and have been) tested manually.
compiler/generate_mmakefile_fragments.m:
Generate three new mmake rules to do library installs:
- one to install non-grade-specific files
- one to install grade-specific files, and
- one to
- invoke the ngs target once for the current grade, and
- invoke the gs target for each to-be-installed grade.
The code in this last rule that saves and restores the working files
of the current directory is an adapted version of the lib%.install_grades
target in scripts/Mmake.rules.
Add some code to prepare for storing .int and .int2 files in separate
directories.
scripts/Mmake.rules:
scripts/Mmake.vars.in:
Delete code whose job was to install .s and .pic_s files.
Such files were never meant to be installed; their only purpose
was debugging.
Add a conditional definition to shut up a useless warning by gmake.
scripts/mmake_grade_test:
This new script tests whether a given grade targets C, Java or C#,
and if it targets C, whether it is an MLDS or LLDS grade.
It is intended for use by the new make actions generated
by generate_mmakefile_fragments.m.
scripts/mmake_grade_test_test:
This new script tests the operation of mmake_grade_test.
scripts/Mmakefile:
Install mmake_grade_test (but not mmake_grade_test_test) along with
the other scripts.
scripts/ml.in:
Fix the vim modeline.
scripts/mmake.in:
Fix indentation.
27 lines
774 B
Bash
Executable File
27 lines
774 B
Bash
Executable File
#!/bin/sh
|
|
#---------------------------------------------------------------------------#
|
|
# vim: sw=4 ts=4 expandtab ft=sh
|
|
#---------------------------------------------------------------------------#
|
|
# Copyright (C) 2024 The Mercury team.
|
|
# This file may only be copied under the terms of the GNU General
|
|
# Public License - see the file COPYING in the Mercury distribution.
|
|
#---------------------------------------------------------------------------#
|
|
|
|
for t in llc hlc c java csharp
|
|
do
|
|
echo
|
|
echo === test ${t} ===
|
|
echo
|
|
|
|
for g in asm_fast.gc none.gc hlc.gc hlc.gc.tr java csharp
|
|
do
|
|
if mmake_grade_test $t $g
|
|
then
|
|
result="success"
|
|
else
|
|
result=""
|
|
fi
|
|
echo "grade ${g}: ${result}"
|
|
done
|
|
done
|