[MPlayer-cvslog] CVS: main configure, 1.1137, 1.1138 Makefile, 1.342, 1.343

Diego Biurrun diego at biurrun.de
Mon Mar 6 10:01:12 CET 2006


On Mon, Mar 06, 2006 at 08:06:14AM +0100, Jindrich Makovicka wrote:
> Diego Biurrun wrote:
> > On Sun, Mar 05, 2006 at 11:03:55AM +0100, Jindrich Makovicka CVS wrote:
> > 
> >>Modified Files:
> >>	configure Makefile 
> >>Log Message:
> >>use relative paths for libav* build
> >>
> >>absolute path in the command line can confuse ccache
> > 
> > What were the problems with ccache?
> 
> when compiling the same (or almost the same) revision, but in different
> directories, ccache sees it as different compilations, because the
> command line has changed. so libav* gets compiled all the time.

I'm not sure I understand entirely, please elaborate.  This sounds like
a problem with ccache...

> > This commit has problems, here is what I get when I do distclean:
> > 
> > make[1]: Entering directory `/home/diego/src/mplayer/main/libavcodec/libpostproc'
> > Makefile:22: ../common.mak: No such file or directory
> > make[1]: *** No rule to make target `../common.mak'.  Stop.
> > make[1]: Leaving directory `/home/diego/src/mplayer/main/libavcodec/libpostproc'
> 
> stupid /me. please try the attachment.
> 
> > I get failures in all libav* dirs on another box...
> 
> also in distclean, or when building?

Also in distclean, but I think libav was not being built at all, at
least not correctly.  I stumbled over this while trying to test the gcc
2.95 patch posted by Loren to ffmpeg-cvslog.  I was tripping over
previous bugs fixed in earlier revisions because somehow libavcodec was
not compiled or miscompiled.  Maybe it was just a ccache problem, dunno,
I'm away from that machine right now.

> --- Makefile	5 Mar 2006 10:03:53 -0000	1.343
> +++ Makefile	6 Mar 2006 06:58:29 -0000
> @@ -161,9 +161,6 @@
>  PARTS = libmpdemux \
>          libmpcodecs \
> -        libavutil \
> -        libavcodec \
> -        libavformat \
>          libao2 \
> @@ -529,6 +526,10 @@
>  	@for a in $(PARTS); do $(MAKE) -C $$a distclean; done
> +	$(MAKE) -C libavutil distclean SRC_PATH=.. 
> +	$(MAKE) -C libavcodec distclean SRC_PATH=.. 
> +	$(MAKE) -C libavcodec/libpostproc distclean SRC_PATH=../..
> +	$(MAKE) -C libavformat distclean SRC_PATH=..
>  
> @@ -539,6 +540,9 @@
>  	@for a in $(PARTS); do $(MAKE) -C $$a dep; done
> +	$(MAKE) -C libavutil dep SRC_PATH=..
> +	$(MAKE) -C libavcodec dep SRC_PATH=..
> +	$(MAKE) -C libavformat dep SRC_PATH=..

I don't like this patch.  You're adding 4 lines and complicating the
build system, plus the previous patch that also added complications.

IMO this is a problem in ccache and should be fixed there.

Please revert your commit unless you can come up with good arguments
that make me change my mind.

Diego




More information about the MPlayer-cvslog mailing list