Hello! Please cc me on replies, because I'm no longer subscribed to ffmpeg-devel.
While trying to build an uncastrated Debian ffmpeg package I stubled upon a problem when building ffmpeg outside the source tree: 1. The Makefile doesn't properly change to the libavcodex/libpostproc/ directory in the build tree, but changes to the directory in the source tree. This is fixed by removing the '$(PATH)/' Prefix in libavcode/Makefile. 2. Building the manual pages in a separate build tree also doesn't work, since the doc/ directory isn't symlinked to the build tree. The converted manual pages are also explicitely referenced in the source tree, where they don't exist. 3. The quotation of "SRC_PATH='$source_path'" with single quotes is wrong in a Makefile, since the single quotes are used verbatim and are not shell meta characters. I would appreciate it if somebody could please double check the patch below and apply it to the repository. BYtE Philipp --- ffmpeg-0.cvs20050108.orig/doc/Makefile +++ ffmpeg-0.cvs20050108/doc/Makefile @@ -1,3 +1,7 @@ +-include ../config.mak + +VPATH=$(SRC_PATH)/doc + all: ffmpeg-doc.html faq.html ffserver-doc.html ffplay-doc.html hooks.html \ ffmpeg.1 ffserver.1 ffplay.1 --- ffmpeg-0.cvs20050108.orig/configure +++ ffmpeg-0.cvs20050108/configure @@ -1453,9 +1453,9 @@ # build tree in object directory if source path is different from current one if test "$source_path_used" = "yes" ; then - DIRS="libavformat libavcodec libavcodec/alpha libavcodec/armv4l libavcodec/i386 \ + DIRS="libavformat libavcodec libavcodec/alpha libavcodec/armv4l libavcodec/i386 doc \ libavcodec/ppc libavcodec/liba52 libavcodec/mlib libavcodec/libpostproc tests vhook" - FILES="Makefile libavformat/Makefile libavcodec/Makefile libavcodec/libpostproc/Makefile tests/Makefile vhook/Makefile" + FILES="Makefile libavformat/Makefile libavcodec/Makefile libavcodec/libpostproc/Makefile tests/Makefile vhook/Makefile doc/Makefile doc/texi2pod.pl" for dir in $DIRS ; do mkdir -p $dir done @@ -1463,7 +1463,7 @@ ln -sf "$source_path/$f" $f done fi -echo "SRC_PATH='$source_path'" >> config.mak +echo "SRC_PATH=$source_path" >> config.mak if test "$amr_wb" = "yes" ; then echo "#define AMR_WB 1" >> $TMPH --- ffmpeg-0.cvs20050108.orig/libavcodec/Makefile +++ ffmpeg-0.cvs20050108/libavcodec/Makefile @@ -216,7 +216,7 @@ $(SLIB): $(OBJS) ifeq ($(CONFIG_PP),yes) - $(MAKE) -C $(VPATH)/libpostproc + $(MAKE) -C libpostproc endif ifeq ($(CONFIG_WIN32),yes) $(CC) $(SHFLAGS) -Wl,--output-def,$(@:.dll=.def) -o $@ $(OBJS) $(EXTRALIBS) $(AMREXTRALIBS) @@ -299,7 +299,7 @@ ldconfig || true endif ifeq ($(CONFIG_PP),yes) - $(MAKE) -C $(VPATH)/libpostproc $@ + $(MAKE) -C libpostproc $@ endif else install: --- ffmpeg-0.cvs20050108.orig/Makefile +++ ffmpeg-0.cvs20050108/Makefile @@ -14,18 +14,18 @@ LDFLAGS+=-p endif -MANPAGE=$(SRC_PATH)/doc/ffmpeg.1 +MANPAGE=doc/ffmpeg.1 PROG=ffmpeg$(EXESUF) PROGTEST=output_example$(EXESUF) QTFASTSTART=qt-faststart$(EXESUF) ifeq ($(CONFIG_FFSERVER),yes) -MANPAGE+=$(SRC_PATH)/doc/ffserver.1 +MANPAGE+=doc/ffserver.1 PROG+=ffserver$(EXESUF) endif ifeq ($(CONFIG_FFPLAY),yes) -MANPAGE+=$(SRC_PATH)/doc/ffplay.1 +MANPAGE+=doc/ffplay.1 PROG+=ffplay$(EXESUF) FFPLAY_O=ffplay.o endif @@ -146,7 +146,7 @@ # install man from source dir if available install-man: ifneq ($(CONFIG_WIN32),yes) - if [ -f $(SRC_PATH)/doc/ffmpeg.1 ] ; then \ + if [ -f doc/ffmpeg.1 ] ; then \ install -d "$(mandir)/man1" ; \ install -m 644 $(MANPAGE) "$(mandir)/man1" ; \ fi -- / / (_)__ __ ____ __ Philipp Hahn / /__/ / _ \/ // /\ \/ / /____/_/_//_/\_,_/ /_/\_\ [EMAIL PROTECTED] -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]