[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Circular dependency
From: |
Guillaume Rousse |
Subject: |
Re: Circular dependency |
Date: |
Mon, 27 Nov 2006 17:10:46 +0100 |
User-agent: |
Thunderbird 1.5.0.8 (X11/20061109) |
Ralf Wildenhues wrote:
> Hello Guillaume,
>
> * Guillaume Rousse wrote on Thu, Nov 23, 2006 at 04:46:50PM CET:
>> I'm using this rule to substitute values in a sourcefile:
>> corelib/camlimages.ml: Makefile corelib/camlimages.ml.in
> [...]
>
>> As detailed in autoconf documentation
>> http://www.gnu.org/software/autoconf/manual/autoconf-2.57/html_mono/autoconf.html#SEC24
>
> FWIW, 2.57 is an old version, 2.61 is current. The version to the
> current manual should be found here:
> http://www.gnu.org/software/autoconf/manual/autoconf.html#Installation-Directory-Variables
> (We still have to update it, as it's showing 2.60. But that's where the
> new one will end up as well, so please update your bookmarks.)
Done, thanks.
>> However, make keep complaining about a circular dependency issue:
>> make[1]: Circular corelib/camlimages.ml <- Makefile dependency dropped.
>>
>> I guess it's because generated makefile has itself a rule triggering
>> configure again, but I can't find where it's related to
>> corelib/camlimages.ml, neither how to break the loop.
>
> You're providing too little information for me to be able to deduce the
> loop. Can you post the whole Makefile.am (and whatever changes you made
> to Automake, if any)?
Here it is. I did no special modification tu automake.
#*********************************************************************#
# #
# Caml Images #
# #
# François Pessaux, projet Cristal, INRIA Rocquencourt #
# Pierre Weis, projet Cristal, INRIA Rocquencourt #
# Jun Furuse, projet Cristal, INRIA Rocquencourt #
# #
# Copyright 1999-2004, #
# Institut National de Recherche en Informatique et en Automatique. #
# Distributed only by permission. #
# #
#*********************************************************************#
#(* $Id: Makefile,v 1.84 2006/11/16 13:02:23 rousse Exp $ *)
#SUBDIRS = examples
ocamlsitelibdir = $(OCAMLLIB)/site-lib/camlimages
ocamlsitelib_DATA = camlimages.cma \
camlimages.cmxa \
camlimages.a \
libcamlimages.a \
$(OCAMLINTERFACES) \
META
ocamlstublibdir = $(OCAMLLIB)/stublibs
ocamlstublib_DATA = dllcamlimages.so
BUILT_SOURCES = corelib/camlimages.ml
COMPFLAGS = -warn-error A
LINKFLAGS =
LOCAL_COMPFLAGS = -I corelib -I graphics -I bmp -I ppm -I xvthumb
LOCAL_CFLAGS =
OCAMLSOURCES = corelib/camlimages.ml \
corelib/mstring.ml \
corelib/color.ml \
corelib/region.ml \
corelib/tmpfile.ml \
corelib/bitmap.ml \
corelib/genimage.ml \
corelib/rgba32.ml \
corelib/rgb24.ml \
corelib/index8.ml \
corelib/index16.ml \
corelib/cmyk32.ml \
corelib/images.ml \
corelib/oColor.ml \
corelib/oImages.ml \
corelib/reduce.ml \
corelib/geometry.ml \
corelib/colorhist.ml \
corelib/blend.ml \
graphics/graphic_image.ml \
graphics/oGraphic.ml \
bmp/bmp.ml \
bmp/oBmp.ml \
ppm/ppm.ml \
ppm/oPpm.ml \
xvthumb/xvthumb.ml \
xvthumb/oXvthumb.ml
OCAMLINTERFACES = corelib/mstring.mli \
corelib/color.mli \
corelib/region.mli \
corelib/tmpfile.mli \
corelib/bitmap.mli \
corelib/genimage.mli \
corelib/rgba32.mli \
corelib/rgb24.mli \
corelib/index8.mli \
corelib/index16.mli \
corelib/cmyk32.mli \
corelib/images.mli \
corelib/oColor.mli \
corelib/oImages.mli \
corelib/reduce.mli \
corelib/blend.mli \
graphics/graphic_image.mli \
bmp/bmp.mli \
ppm/ppm.mli \
xvthumb/xvthumb.mli \
xvthumb/oXvthumb.mli
CSOURCES =
if HAVE_LABLGTK
OCAMLSOURCES += lablgtk/ximage.ml \
lablgtk/oXimage.ml
OCAMLINTERFACES += lablgtk/ximage.mli \
lablgtk/oXimage.mli
LOCAL_COMPFLAGS += -I lablgtk -I $(LABLGTKDIR)
endif
if HAVE_LABLGTK2
OCAMLSOURCES += lablgtk2/ximage2.ml \
lablgtk2/oXimage2.ml
OCAMLINTERFACES += lablgtk2/ximage2.mli \
lablgtk2/oXimage2.mli
LOCAL_COMPFLAGS += -I lablgtk2 -I $(LABLGTK2DIR)
endif
if HAVE_GIF
OCAMLSOURCES += gif/gif.ml \
gif/oGif.ml
OCAMLINTERFACES += gif/gif.mli
LOCAL_COMPFLAGS += -I gif
CSOURCES += gif/gifread.c \
gif/gifwrite.c
endif
if HAVE_PNG
OCAMLSOURCES += png/png.ml \
png/oPng.ml
OCAMLINTERFACES += png/png.mli
LOCAL_COMPFLAGS += -I png
CSOURCES += png/pngread.c \
png/pngwrite.c
endif
if HAVE_JPEG
OCAMLSOURCES += jpeg/jpeg.ml \
jpeg/oJpeg.ml
OCAMLINTERFACES += jpeg/jpeg.mli
LOCAL_COMPFLAGS += -I jpeg
CSOURCES += jpeg/jpegread.c \
jpeg/jpegwrite.c
endif
if HAVE_TIFF
OCAMLSOURCES += tiff/tiff.ml \
tiff/oTiff.ml
OCAMLINTERFACES += tiff/tiff.mli
LOCAL_COMPFLAGS += -I tiff
CSOURCES += tiff/tiffread.c \
tiff/tiffwrite.c
endif
if HAVE_XPM
OCAMLSOURCES += xpm/xpm.ml \
xpm/oXpm.ml
OCAMLINTERFACES += xpm/xpm.mli
LOCAL_COMPFLAGS += -I xpm
CSOURCES += xpm/xpmread.c \
xpm/xpmwrite.c
LOCAL_CFLAGS += $(INCXPM)
endif
if HAVE_FREETYPE
OCAMLSOURCES += freetype/ftlow.ml \
freetype/freetype.ml \
freetype/jis_table.ml \
freetype/jis_unicode.ml \
freetype/fttext.ml \
freetype/oFreetype.ml
OCAMLINTERFACES += freetype/ftlow.mli \
freetype/freetype.mli \
freetype/jis_unicode.mli \
freetype/fttext.mli
CSOURCES += freetype/ftintf.c
LOCAL_COMPFLAGS += -I freetype
LOCAL_CFLAGS += $(INCFREETYPE)
endif
if HAVE_PS
OCAMLSOURCES += ps/ps.ml \
ps/oPs.ml
OCAMLINTERFACES += ps/ps.mli
LOCAL_COMPFLAGS += -I ps
endif
CLEANFILES = $(OCAMLBYTOBJS) \
$(OCAMLOPTOBJS) \
$(OCAMLOPTOBJS:.cmx=.o) \
$(COBJS) \
libcamlimages.a \
dllcamlimages.so \
camlimages.a \
camlimages.cma \
camlimages.cmxa \
corelib/camlimages.ml
OCAMLBYTOBJS = $(OCAMLSOURCES:.ml=.cmo)
OCAMLOPTOBJS = $(OCAMLSOURCES:.ml=.cmx)
COBJS = $(CSOURCES:.c=.o)
#EXTCLIB = $(LIBFREETYPE) $(LIBXPM) $(LIBTIFF) \
# $(LIBPNG) $(LIBJPEG) $(LIBGIF)
all: byt opt
byt: camlimages.cma
opt: camlimages.cmxa
clib: $(COBJS)
$(OCAMLMKLIB) -o camlimages $(EXTCLIB) $(LDFLAGS) $(COBJS)
camlimages.cma: $(OCAMLBYTOBJS) clib
$(OCAMLMKLIB) -linkall -o camlimages $(EXTCLIB) $(LDFLAGS)
$(OCAMLBYTOBJS)
camlimages.cmxa: $(OCAMLOPTOBJS) clib
$(OCAMLMKLIB) -linkall -o camlimages $(EXTCLIB) $(LDFLAGS)
$(OCAMLOPTOBJS)
corelib/camlimages.ml: Makefile corelib/camlimages.ml.in
rm -f corelib/camlimages.ml corelib/camlimages.ml.tmp
sed \
-e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
-e 's,@SUPPORT_GIF\@,$(SUPPORT_GIF),g' \
-e 's,@SUPPORT_PNG\@,$(SUPPORT_PNG),g' \
-e 's,@SUPPORT_JPEG\@,$(SUPPORT_JPEG),g' \
-e 's,@SUPPORT_TIFF\@,$(SUPPORT_TIFF),g' \
-e 's,@SUPPORT_FREETYPE\@,$(SUPPORT_FREETYPE),g' \
-e 's,@SUPPORT_PS\@,$(SUPPORT_PS),g' \
-e 's,@SUPPORT_XPM\@,$(SUPPORT_XPM),g' \
-e 's,@PATH_RGB_TXT\@,$(PATH_RGB_TXT),g' \
-e 's,@PATH_GS\@,$(PATH_GS),g' \
-e 's,@WORD_SIZE\@,$(WORD_SIZE),g' \
corelib/camlimages.ml.in > corelib/camlimages.ml.tmp
mv corelib/camlimages.ml.tmp corelib/camlimages.ml
top: all
$(OCAMLMKTOP) -custom -o customtop -ccopt "-L." \
$(WITH_UNIX) \
$(WITH_CAMLIMAGES)
test:
cd test && $(MAKE)
examples:
cd examples && $(MAKE)
doc:
cd doc && $(MAKE)
SUFFIXES = .ml .mli .cmo .cmi .cmx .c .o
.ml.cmo:
$(OCAMLC) $(COMPFLAGS) $(LOCAL_COMPFLAGS) -c $<
.mli.cmi:
$(OCAMLC) $(COMPFLAGS) $(LOCAL_COMPFLAGS) -c $<
.ml.cmx:
$(OCAMLOPT) $(COMPFLAGS) $(LOCAL_COMPFLAGS) -c $<
.c.o: config.h
$(OCAMLC) -ccopt "-o $@ $(CFLAGS) $(LOCAL_CFLAGS)" -c $<
.depend: $(OCAMLSOURCES) $(OCAMLINTERFACES)
$(OCAMLDEP) $(OCAMLSOURCES) $(OCAMLINTERFACES) > .depend
include .depend
- Circular dependency, Guillaume Rousse, 2006/11/24
- Re: Circular dependency, Ralf Wildenhues, 2006/11/25
- Re: Circular dependency,
Guillaume Rousse <=
- Re: Circular dependency, Stepan Kasal, 2006/11/27
- Re: Circular dependency, Ralf Wildenhues, 2006/11/27
- Re: Circular dependency, Guillaume Rousse, 2006/11/28
- Re: Circular dependency, Ralf Wildenhues, 2006/11/28
- Re: Circular dependency, Stepan Kasal, 2006/11/28
- Re: Circular dependency, Guillaume Rousse, 2006/11/30
- Re: Circular dependency, Stepan Kasal, 2006/11/30
- Re: Circular dependency, Guillaume Rousse, 2006/11/30
- Re: Circular dependency, Stepan Kasal, 2006/11/30