mirror of
https://review.haiku-os.org/buildtools
synced 2025-02-15 10:17:40 +01:00
* these are dependencies for gcc 4 Graphite engine build. * CLooG 0.18.0 includes ISL 0.11.1 which is the backend that the build script enables. * PPL is needed by GCC build even if it isn't the chosen backend.
346 lines
9.0 KiB
Makefile
346 lines
9.0 KiB
Makefile
#
|
|
# /**-------------------------------------------------------------------**
|
|
# ** CLooG **
|
|
# **-------------------------------------------------------------------**
|
|
# ** makefile **
|
|
# **-------------------------------------------------------------------**
|
|
# ** First version: march 6th 2003 **
|
|
# **-------------------------------------------------------------------**/
|
|
#
|
|
# makefile for checking.
|
|
|
|
#/*****************************************************************************
|
|
# * CLooG : the Chunky Loop Generator (experimental) *
|
|
# *****************************************************************************
|
|
# * *
|
|
# * Copyright (C) 2003 Cedric Bastoul *
|
|
# * *
|
|
# * This library is free software; you can redistribute it and/or *
|
|
# * modify it under the terms of the GNU Lesser General Public *
|
|
# * License as published by the Free Software Foundation; either *
|
|
# * version 2.1 of the License, or (at your option) any later version. *
|
|
# * *
|
|
# * This library 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 *
|
|
# * Lesser General Public License for more details. *
|
|
# * *
|
|
# * You should have received a copy of the GNU Lesser General Public *
|
|
# * License along with this library; if not, write to the Free Software *
|
|
# * Foundation, Inc., 51 Franklin Street, Fifth Floor, *
|
|
# * Boston, MA 02110-1301 USA *
|
|
# * *
|
|
# * CLooG, the Chunky Loop Generator *
|
|
# * Written by Cedric Bastoul, Cedric.Bastoul@inria.fr *
|
|
# * This file has been written with the help of the Bart Kienhuis's checking *
|
|
# * makefile for PipLib. *
|
|
# * *
|
|
# *****************************************************************************/
|
|
|
|
if NO_ISL
|
|
GENERATE_TEST =
|
|
else
|
|
GENERATE_TEST = generate_test
|
|
endif
|
|
noinst_PROGRAMS = $(GENERATE_TEST)
|
|
INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include
|
|
LDADD = ../libcloog-isl.la
|
|
generate_test_SOURCES = generate_test.c
|
|
|
|
FORCE:
|
|
../libcloog-isl.la: FORCE
|
|
cd ..; $(MAKE) $(AM_MAKEFLAGS) libcloog-isl.la
|
|
|
|
ROOT = ..
|
|
|
|
FINITE_CLOOGTEST_C = \
|
|
0D-1 \
|
|
0D-2 \
|
|
0D-3 \
|
|
1point-1 \
|
|
1point-2 \
|
|
4-param \
|
|
basic-bounds-1 \
|
|
basic-bounds-2 \
|
|
basic-bounds-3 \
|
|
basic-bounds-4 \
|
|
basic-bounds-5 \
|
|
basic-bounds-6 \
|
|
block \
|
|
block2 \
|
|
block3 \
|
|
byu98-1-2-3 \
|
|
cholesky \
|
|
cholesky2 \
|
|
christian \
|
|
classen \
|
|
classen2 \
|
|
constant \
|
|
constbound \
|
|
darte \
|
|
dealII \
|
|
donotsimp \
|
|
dot \
|
|
dot2 \
|
|
double \
|
|
durbin_e_s \
|
|
emploi \
|
|
esced \
|
|
ex1 \
|
|
forwardsub-1-1-2 \
|
|
forwardsub-2-1-2-3 \
|
|
forwardsub-3-1-2 \
|
|
gauss \
|
|
gesced \
|
|
gesced2 \
|
|
gesced3 \
|
|
guide \
|
|
iftest \
|
|
iftest2 \
|
|
largeur \
|
|
levenshtein-1-2-3 \
|
|
lex \
|
|
lineality-1-2 \
|
|
lineality-2-1-2 \
|
|
logo \
|
|
logopar \
|
|
lu \
|
|
lu2 \
|
|
lub \
|
|
lux \
|
|
min-1-1 \
|
|
min-2-1 \
|
|
min-3-1 \
|
|
min-4-1 \
|
|
mode \
|
|
multi-mm-1 \
|
|
no_lindep \
|
|
orc \
|
|
rectangle \
|
|
singleton \
|
|
square+triangle-1-1-2-3 \
|
|
swim \
|
|
test \
|
|
thomasset \
|
|
tiling \
|
|
uday_scalars \
|
|
union \
|
|
vivien \
|
|
vivien2 \
|
|
walters \
|
|
walters2 \
|
|
walters3 \
|
|
wavefront \
|
|
yosr \
|
|
yosr2 \
|
|
non_optimal/nul_complex1 \
|
|
non_optimal/usvd_e_t \
|
|
non_optimal/youcef \
|
|
reservoir/cholesky2 \
|
|
reservoir/fusion1 \
|
|
reservoir/fusion2 \
|
|
reservoir/jacobi2 \
|
|
reservoir/jacobi3 \
|
|
reservoir/lim-lam1 \
|
|
reservoir/lim-lam2 \
|
|
reservoir/lim-lam3 \
|
|
reservoir/lim-lam4 \
|
|
reservoir/lim-lam5 \
|
|
reservoir/lim-lam6 \
|
|
reservoir/liu-zhuge1 \
|
|
reservoir/loechner3 \
|
|
reservoir/loechner4 \
|
|
reservoir/loechner5 \
|
|
reservoir/mg-interp2 \
|
|
reservoir/mg-interp \
|
|
reservoir/mg-psinv \
|
|
reservoir/mg-resid \
|
|
reservoir/mg-rprj3 \
|
|
reservoir/pingali1 \
|
|
reservoir/pingali2 \
|
|
reservoir/pingali3 \
|
|
reservoir/pingali4 \
|
|
reservoir/pingali5 \
|
|
reservoir/pingali6 \
|
|
reservoir/QR \
|
|
reservoir/tang-xue1 \
|
|
reservoir/two
|
|
|
|
CLOOG_ISL_TEST_C = \
|
|
isl/mod \
|
|
isl/mod2 \
|
|
isl/mod3 \
|
|
isl/mod4
|
|
|
|
CLOOGTEST_C = \
|
|
infinite \
|
|
infinite2 \
|
|
infinite3 \
|
|
infinite4 \
|
|
$(FINITE_CLOOGTEST_C) \
|
|
$(CLOOG_ISL_TEST_C)
|
|
|
|
CLOOGTEST_FORTRAN = \
|
|
dartef \
|
|
iftestf \
|
|
levenshtein-1-2-3f \
|
|
yosrf
|
|
|
|
CLOOG_ISL_TEST_STRIDED = \
|
|
isl/mxm-shared
|
|
|
|
CLOOGTEST_STRIDED = \
|
|
basic-bounds-2 \
|
|
mod4 \
|
|
nul_basic1 \
|
|
nul_basic2 \
|
|
nul_lcpc \
|
|
multi-stride \
|
|
multi-stride2 \
|
|
stride3 \
|
|
stride4 \
|
|
reservoir/bastoul3 \
|
|
reservoir/stride \
|
|
reservoir/stride2 \
|
|
$(CLOOG_ISL_TEST_STRIDED)
|
|
|
|
if NO_OSL
|
|
CLOOGTEST_OPENSCOP =
|
|
else
|
|
CLOOGTEST_OPENSCOP = \
|
|
openscop/matmult \
|
|
openscop/empty \
|
|
openscop/union
|
|
endif
|
|
|
|
SPECIAL_TESTS = \
|
|
isl/unroll \
|
|
isl/jacobi-shared \
|
|
isl/unroll2 \
|
|
backtrack \
|
|
vasilache \
|
|
merge \
|
|
equality \
|
|
equality2 \
|
|
otl \
|
|
param-split \
|
|
pouchet \
|
|
stride \
|
|
stride2 \
|
|
sor1d
|
|
|
|
SPECIAL_OPTIONS = \
|
|
'isl/unroll -first-unroll 1' \
|
|
'isl/jacobi-shared -f 4 -l -1 -override -strides 1 -sh 1' \
|
|
'isl/unroll2 -first-unroll 1' \
|
|
'backtrack -f 1 -backtrack' \
|
|
'vasilache -f 8 -l 9' \
|
|
'merge -f -1' \
|
|
'equality -f -1 -l 2 -override' \
|
|
'equality2 -f -1 -l 4 -esp 1 -override' \
|
|
'otl -block 1 -esp 0 -otl 0' \
|
|
'param-split -f -1' \
|
|
'pouchet -f 3 -l 7' \
|
|
'stride -f -1 -strides 1' \
|
|
'stride2 -f -1 -strides 1' \
|
|
'sor1d -f -1'
|
|
|
|
generate:
|
|
@echo " /*-----------------------------------------------*"
|
|
@echo " * Generate files *"
|
|
@echo " *-----------------------------------------------*/"
|
|
@for x in $(CLOOGTEST_C) ; do \
|
|
echo "Generate $$x.c" ; \
|
|
$(top_builddir)/cloog $(srcdir)/$$x.cloog -o $(srcdir)/$$x.c ; \
|
|
done ; \
|
|
for x in $(CLOOGTEST_FORTRAN) ; do \
|
|
echo "Generate $$x.f" ; \
|
|
$(top_builddir)/cloog $(srcdir)/$$x.cloog -o $(srcdir)/$$x.f ; \
|
|
done ; \
|
|
for x in $(CLOOGTEST_STRIDED) ; do \
|
|
echo "Generate $$x.c" ; \
|
|
$(top_builddir)/cloog $(srcdir)/$$x.cloog \
|
|
-strides 1 -o $(srcdir)/$$x.c ; \
|
|
done ; \
|
|
for x in $(CLOOGTEST_OPENSCOP) ; do \
|
|
echo "Generate $$x.c" ; \
|
|
$(top_builddir)/cloog $(srcdir)/$$x.scop \
|
|
-openscop -o $(srcdir)/$$x.c ; \
|
|
done ; \
|
|
for line in $(SPECIAL_OPTIONS); do \
|
|
options=`echo $$line | sed -e 's/^[^ ]* //'`; \
|
|
x=`echo $$line | sed -e 's/ .*//'`; \
|
|
echo "Generate file $$x ($$options)" ; \
|
|
$(top_builddir)/cloog$(EXEEXT) $(srcdir)/$$x.cloog \
|
|
$$options > $(srcdir)/$$x.c ; \
|
|
done
|
|
|
|
generate_good:
|
|
@for x in $(FINITE_CLOOGTEST_C) ; do \
|
|
echo "Generate $$x.good.c" ; \
|
|
$(top_builddir)/cloog$(EXEEXT) -callable 1 $(srcdir)/$$x.cloog -o $(srcdir)/$$x.good.c ; \
|
|
done; \
|
|
for line in $(SPECIAL_OPTIONS); do echo $$line | while read x options; do \
|
|
echo "Generate $$x.good.c ($$options)" ; \
|
|
$(top_builddir)/cloog$(EXEEXT) -callable 1 $$options $(srcdir)/$$x.cloog -o $(srcdir)/$$x.good.c ; \
|
|
done; done
|
|
|
|
valgrind:
|
|
@echo " /*-----------------------------------------------*"
|
|
@echo " * Checking files by Valgrind *"
|
|
@echo " *-----------------------------------------------*/"
|
|
for x in $(CLOOGTEST_C) ; do \
|
|
echo "Valgrinding $$x.c" ; \
|
|
valgrind $(top_builddir)/cloog$(EXEEXT) $(srcdir)/$$x.cloog ; \
|
|
done ; \
|
|
for x in $(CLOOGTEST_FORTRAN) ; do \
|
|
echo "Valgrinding $$x.f" ; \
|
|
valgrind $(top_builddir)/cloog$(EXEEXT) $(srcdir)/$$x.cloog ; \
|
|
done
|
|
|
|
CHECKER := "$(srcdir)/checker.sh"
|
|
|
|
TESTS_ENVIRONMENT = \
|
|
top_builddir=$(top_builddir) \
|
|
srcdir=$(srcdir) \
|
|
EXEXT=$(EXEEXT) \
|
|
CHECKER=$(CHECKER) \
|
|
COMPILE="$(COMPILE)" \
|
|
LINK="$(LINK)" \
|
|
FINITE_CLOOGTEST_C="$(FINITE_CLOOGTEST_C)" \
|
|
CLOOGTEST_C="$(CLOOGTEST_C)" \
|
|
CLOOGTEST_FORTRAN="$(CLOOGTEST_FORTRAN)" \
|
|
CLOOGTEST_STRIDED="$(CLOOGTEST_STRIDED)" \
|
|
CLOOGTEST_OPENSCOP="$(CLOOGTEST_OPENSCOP)" \
|
|
SPECIAL_OPTIONS="$(SPECIAL_OPTIONS)"
|
|
|
|
test_run: generate_test$(EXEEXT)
|
|
$(TESTS_ENVIRONMENT) \
|
|
$(srcdir)/check_run.sh
|
|
|
|
check_SCRIPTS = \
|
|
$(srcdir)/check_c.sh \
|
|
$(srcdir)/check_fortran.sh \
|
|
$(srcdir)/check_strided.sh \
|
|
$(srcdir)/check_openscop.sh \
|
|
$(srcdir)/check_special.sh
|
|
|
|
TESTS = $(check_SCRIPTS)
|
|
|
|
EXTRA_DIST = \
|
|
$(check_SCRIPTS) \
|
|
$(srcdir)/checker.sh \
|
|
$(srcdir)/check_run.sh \
|
|
$(CLOOGTEST_C:%=%.cloog) \
|
|
$(CLOOGTEST_C:%=%.c) \
|
|
$(FINITE_CLOOGTEST_C:%=%.good.c) \
|
|
$(CLOOGTEST_FORTRAN:%=%.cloog) \
|
|
$(CLOOGTEST_FORTRAN:%=%.f) \
|
|
$(CLOOGTEST_STRIDED:%=%.cloog) \
|
|
$(CLOOGTEST_STRIDED:%=%.c) \
|
|
$(CLOOGTEST_OPENSCOP:%=%.scop) \
|
|
$(CLOOGTEST_OPENSCOP:%=%.c) \
|
|
$(SPECIAL_TESTS:%=%.cloog) \
|
|
$(SPECIAL_TESTS:%=%.c) \
|
|
$(SPECIAL_TESTS:%=%.good.c)
|