2 # /**-------------------------------------------------------------------**
4 # **-------------------------------------------------------------------**
6 # **-------------------------------------------------------------------**
7 # ** First version: october 25th 2001 **
8 # **-------------------------------------------------------------------**/
10 # makefile.in (or makefile if generated) of CLooG, the Chunky LOOp Generator.
11 # makefile.in is not a makefile, you must run the 'configure' shellscript to
12 # generate the makefile thanks to this file.
14 #/*****************************************************************************
15 # * CLooG : the Chunky Loop Generator (experimental) *
16 # *****************************************************************************
18 # * Copyright (C) 2001 Cedric Bastoul *
20 # * This is free software; you can redistribute it and/or modify it under the *
21 # * terms of the GNU General Public License as published by the Free Software *
22 # * Foundation; either version 2 of the License, or (at your option) any *
25 # * This software is distributed in the hope that it will be useful, but *
26 # * WITHOUT ANY WARRANTY; without even the implied warranty of *
27 # * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General *
28 # * Public License for more details. *
30 # * You should have received a copy of the GNU General Public License along *
31 # * with software; if not, write to the Free Software Foundation, Inc., *
32 # * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
34 # * CLooG, the Chunky Loop Generator *
35 # * Written by Cedric Bastoul, Cedric.Bastoul@inria.fr *
37 # *****************************************************************************/
40 #/*****************************************************************************
41 # * Variables substituted with configure *
42 # *****************************************************************************/
47 # Target architecture and system
53 # Tool to create symbolic links.
55 # Tool to provide speed access to archives.
57 # Shared library extension
60 EXEC_SUFFIX
= @EXEC_SUFFIX@
62 EXTRA_FLAGS
= @EXTRA_FLAGS@
66 EXTRA_LIBS
= @EXTRA_LIBS@
67 # PolyLib library directory.
68 POLYLIB_LIB
= @POLYLIB_LIB@
69 # Architecture-independent installation directory.
71 # Architecture-dependent installation directory.
72 exec_prefix = @
exec_prefix@
73 # Installation software.
77 # Packages to install.
78 all_install
: @INSTALL_PACKAGES@
81 #/*****************************************************************************
82 # * CLooG's variables *
83 # *****************************************************************************/
86 # Directory of CLooG's sources (.c).
88 # Directory of CLooG's include (.h).
90 # Directory for object files and software and library before installation, its
91 # name depends on architecture and on operating system.
92 CLOOG_OBJ
= .
/obj_
$(TARGET
)
93 # CLooG's installation subdirectories.
94 CLOOG_INS_BIN
= $(exec_prefix)/bin
95 CLOOG_INS_LIB
= $(exec_prefix)/lib
96 CLOOG_INS_INC
= $(prefix)/include
99 #/*****************************************************************************
100 # * Compiler and linker options *
101 # *****************************************************************************/
104 INCFLAGS
= -I
$(CLOOG_INC
)
105 LDFLAGS
= @LDFLAGS@
$(LIBS
) $(EXTRA_LIBS
) # -static
106 CFLAGS
= -c
-Wall
$(INCFLAGS
) $(CPPFLAGS
) \
107 -fomit-frame-pointer
-O2
$(EXTRA_FLAGS
)
110 #/*****************************************************************************
112 # *****************************************************************************/
115 OBJ
= $(CLOOG_OBJ
)/cloog.o
$(CLOOG_OBJ
)/program.o
$(CLOOG_OBJ
)/loop.o \
116 $(CLOOG_OBJ
)/pprint.o
$(CLOOG_OBJ
)/names.o
$(CLOOG_OBJ
)/statement.o \
117 $(CLOOG_OBJ
)/domain.o
$(CLOOG_OBJ
)/matrix.o
$(CLOOG_OBJ
)/block.o \
118 $(CLOOG_OBJ
)/options.o
120 cloog
: $(CLOOG_OBJ
) $(OBJ
)
121 @echo
" /*-----------------------------------------------*"
122 @echo
" * MAKING CLooG (soft) *"
123 @echo
" *-----------------------------------------------*/"
124 $(CC
) $(OBJ
) -o
$(CLOOG_OBJ
)/cloog
$(EXEC_SUFFIX
) $(LDFLAGS
)
126 cloogsharedlib
: $(CLOOG_OBJ
) $(OBJ
)
127 @echo
" /*-----------------------------------------------*"
128 @echo
" * MAKING ClooG (shared lib) *"
129 @echo
" *-----------------------------------------------*/"
130 $(LD
) $(OBJ
) -o
$(CLOOG_OBJ
)/libcloog.
$(SHEXT
).
$(RELEASE
) \
131 -lc
-shared
-fPIC
$(LDFLAGS
)
134 cloogstaticlib
: $(CLOOG_OBJ
) $(OBJ
)
135 @echo
" /*-----------------------------------------------*"
136 @echo
" * MAKING ClooG (static lib) *"
137 @echo
" *-----------------------------------------------*/"
138 cp
$(POLYLIB_LIB
)/lib@cl_cv_polylib@.a \
139 $(CLOOG_OBJ
)/libcloog.a.
$(RELEASE
)
140 $(AR
) q
$(CLOOG_OBJ
)/libcloog.a.
$(RELEASE
) $(OBJ
)
141 $(RANLIB
) $(CLOOG_OBJ
)/libcloog.a.
$(RELEASE
)
143 # /-------statement------\
149 # options | | /--+---domain |
150 # | | | | | | | | | |
151 # | | | | | | | | | |
152 # | | | \--+--+--+--/ | | |
156 # | | \--+--/ | | | |
158 # | | pprint | | | | names
160 # | \----+------+------+-----+----+-----/
164 # \-------+-------/ /*-------------------------*
165 # | * CLooG's dependence tree *
166 # cloog *-------------------------*/
168 $(CLOOG_OBJ
)/cloog.o
: $(CLOOG_SRC
)/cloog.c
$(CLOOG_INC
)/cloog
/cloog.h \
169 $(CLOOG_INC
)/cloog
/options.h
$(CLOOG_INC
)/cloog
/program.h
170 $(CC
) $(CFLAGS
) $(CLOOG_SRC
)/cloog.c
-o
$(CLOOG_OBJ
)/cloog.o
172 $(CLOOG_OBJ
)/options.o
: $(CLOOG_SRC
)/options.c
$(CLOOG_INC
)/cloog
/options.h
173 $(CC
) $(CFLAGS
) $(CLOOG_SRC
)/options.c
-o
$(CLOOG_OBJ
)/options.o
175 $(CLOOG_OBJ
)/program.o
: $(CLOOG_SRC
)/program.c
$(CLOOG_INC
)/cloog
/program.h \
176 $(CLOOG_INC
)/cloog
/options.h
$(CLOOG_INC
)/cloog
/pprint.h \
177 $(CLOOG_INC
)/cloog
/loop.h
$(CLOOG_INC
)/cloog
/domain.h \
178 $(CLOOG_INC
)/cloog
/names.h
$(CLOOG_INC
)/cloog
/statement.h \
179 $(CLOOG_INC
)/cloog
/matrix.h
$(CLOOG_INC
)/cloog
/block.h
180 $(CC
) $(CFLAGS
) $(CLOOG_SRC
)/program.c
-o
$(CLOOG_OBJ
)/program.o
182 $(CLOOG_OBJ
)/loop.o
: $(CLOOG_SRC
)/loop.c
$(CLOOG_INC
)/cloog
/loop.h \
183 $(CLOOG_INC
)/cloog
/options.h
$(CLOOG_INC
)/cloog
/domain.h \
184 $(CLOOG_INC
)/cloog
/statement.h
$(CLOOG_INC
)/cloog
/block.h
185 $(CC
) $(CFLAGS
) $(CLOOG_SRC
)/loop.c
-o
$(CLOOG_OBJ
)/loop.o
187 $(CLOOG_OBJ
)/pprint.o
: $(CLOOG_SRC
)/pprint.c
$(CLOOG_INC
)/cloog
/pprint.h \
188 $(CLOOG_INC
)/cloog
/options.h
$(CLOOG_INC
)/cloog
/loop.h
189 $(CC
) $(CFLAGS
) $(CLOOG_SRC
)/pprint.c
-o
$(CLOOG_OBJ
)/pprint.o
191 $(CLOOG_OBJ
)/names.o
: $(CLOOG_SRC
)/names.c
$(CLOOG_INC
)/cloog
/names.h
192 $(CC
) $(CFLAGS
) $(CLOOG_SRC
)/names.c
-o
$(CLOOG_OBJ
)/names.o
194 $(CLOOG_OBJ
)/domain.o
: $(CLOOG_SRC
)/domain.c
$(CLOOG_INC
)/cloog
/domain.h \
195 $(CLOOG_INC
)/cloog
/matrix.h
196 $(CC
) $(CFLAGS
) $(CLOOG_SRC
)/domain.c
-o
$(CLOOG_OBJ
)/domain.o
198 $(CLOOG_OBJ
)/matrix.o
: $(CLOOG_SRC
)/matrix.c
$(CLOOG_INC
)/cloog
/matrix.h
199 $(CC
) $(CFLAGS
) $(CLOOG_SRC
)/matrix.c
-o
$(CLOOG_OBJ
)/matrix.o
201 $(CLOOG_OBJ
)/statement.o
: $(CLOOG_SRC
)/statement.c \
202 $(CLOOG_INC
)/cloog
/statement.h
203 $(CC
) $(CFLAGS
) $(CLOOG_SRC
)/statement.c
-o
$(CLOOG_OBJ
)/statement.o
205 $(CLOOG_OBJ
)/block.o
: $(CLOOG_SRC
)/block.c \
206 $(CLOOG_INC
)/cloog
/block.h
$(CLOOG_INC
)/cloog
/matrix.h \
207 $(CLOOG_INC
)/cloog
/statement.h
208 $(CC
) $(CFLAGS
) $(CLOOG_SRC
)/block.c
-o
$(CLOOG_OBJ
)/block.o
211 $(INSTALL
) -d
$(CLOOG_OBJ
)
214 @echo
" /*-----------------------------------------------*"
215 @echo
" * CLEANING CLooG *"
216 @echo
" *-----------------------------------------------*/"
221 @echo
" /*-----------------------------------------------*"
222 @echo
" * DISTCLEANING CLooG *"
223 @echo
" *-----------------------------------------------*/"
224 rm -f config.cache config.log config.status makefile autoconf
/Doxyfile
225 rm -rf autom4te.cache .
/include/cloog
/cloog.h
230 @echo
" /*-----------------------------------------------*"
231 @echo
" * INSTALLING CLooG (soft) *"
232 @echo
" *-----------------------------------------------*/"
233 ($(INSTALL
) -d
$(CLOOG_INS_BIN
) && \
234 $(INSTALL
) $(CLOOG_OBJ
)/cloog
$(EXEC_SUFFIX
) $(CLOOG_INS_BIN
))
237 ($(INSTALL
) -d
$(CLOOG_INS_INC
) && \
238 $(INSTALL
) -d
$(CLOOG_INS_INC
)/cloog
&& \
239 $(INSTALL
) $(CLOOG_INC
)/cloog
/*.h
$(CLOOG_INS_INC
)/cloog
)
241 install_cloogsharedlib
: install_preparation
242 @echo
" /*-----------------------------------------------*"
243 @echo
" * INSTALLING CLooG (shared lib) *"
244 @echo
" *-----------------------------------------------*/"
245 rm -f
$(CLOOG_INS_LIB
)/libcloog.
$(SHEXT
)
246 ($(INSTALL
) -d
$(CLOOG_INS_LIB
) && \
247 $(INSTALL
) $(CLOOG_OBJ
)/libcloog.
$(SHEXT
).
$(RELEASE
) \
248 $(CLOOG_INS_LIB
) && \
249 $(LN_S
) $(CLOOG_INS_LIB
)/libcloog.
$(SHEXT
).
$(RELEASE
) \
250 $(CLOOG_INS_LIB
)/libcloog.
$(SHEXT
))
252 install_cloogstaticlib
: install_preparation
253 @echo
" /*-----------------------------------------------*"
254 @echo
" * INSTALLING CLooG (static lib) *"
255 @echo
" *-----------------------------------------------*/"
256 rm -f
$(CLOOG_INS_LIB
)/libcloog.a
257 ($(INSTALL
) -d
$(CLOOG_INS_LIB
) && \
258 $(INSTALL
) $(CLOOG_OBJ
)/libcloog.a.
$(RELEASE
) \
259 $(CLOOG_INS_LIB
) && \
260 $(LN_S
) $(CLOOG_INS_LIB
)/libcloog.a.
$(RELEASE
) \
261 $(CLOOG_INS_LIB
)/libcloog.a
)
267 $(MAKE
) valgrind
-C
test
270 @echo
" /*-----------------------------------------------*"
271 @echo
" * UNINSTALLING CLooG *"
272 @echo
" *-----------------------------------------------*/"
273 rm -f
$(CLOOG_INS_LIB
)/libcloog
*
274 rm -rf
$(CLOOG_INS_INC
)/cloog
275 rm -f
$(CLOOG_INS_BIN
)/cloog
278 @echo
" /*-----------------------------------------------*"
280 @echo
" *-----------------------------------------------*/"
287 @echo
" /*-----------------------------------------------*"
288 @echo
" * Generating CLooG's documentation *"
289 @echo
" *-----------------------------------------------*/"
290 doxygen .
/autoconf
/Doxyfile
294 tar cvf cloog-
$(RELEASE
).
tar cloog-
$(RELEASE
) && \
295 gzip cloog-
$(RELEASE
).
tar)