60 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| dnl slurp-ffmpeg.m4 0.1.1
 | |
| dnl a macro to slurp in ffmpeg's cvs source inside a project tree
 | |
| dnl taken from Autostar Sandbox, http://autostars.sourceforge.net/
 | |
| 
 | |
| dnl Usage:
 | |
| dnl AS_SLURP_FFMPEG(DIRECTORY, DATE, [ACTION-IF-WORKED [, ACTION-IF-NOT-WORKED]]])
 | |
| dnl
 | |
| dnl Example:
 | |
| dnl AM_PATH_FFMPEG(lib/ffmpeg, 2002-12-14 12:00 GMT)
 | |
| dnl
 | |
| dnl make sure you have a Tag file in the dir where you check out that
 | |
| dnl is the Tag of CVS you want to have checked out
 | |
| dnl it should correspond to the DATE argument you supply, ie resolve to
 | |
| dnl the same date
 | |
| dnl (in an ideal world, cvs would understand it's own Tag file format as
 | |
| dnl a date spec)
 | |
| 
 | |
| AC_DEFUN([AS_SLURP_FFMPEG],
 | |
| [
 | |
|   # save original dir
 | |
|   FAILED=""
 | |
|   DIRECTORY=`pwd`
 | |
|   # get/update cvs
 | |
|   if test ! -d $1; then mkdir -p $1; fi
 | |
|   dnl we need to check $srcdir/$1 or it will always checkout ffmpeg even if it is there
 | |
|   dnl at least when top_srcdir != top_builddir.
 | |
|   dnl FIXME: unfortunately this makes the checkout go into top_srcdir
 | |
|   cd $srcdir/$1
 | |
| 
 | |
|   if test ! -e ffmpeg/README; then
 | |
|     # check out cvs code
 | |
|     AC_MSG_NOTICE(checking out ffmpeg cvs code from $2 into $1)
 | |
|     cvs -Q -z4 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg co -D '$2' ffmpeg || FAILED=yes
 | |
|   else
 | |
|     # compare against Tag file and see if it needs updating
 | |
|     if test "`cat Tag`" == "$2"; then
 | |
|       AC_MSG_NOTICE(ffmpeg cvs code in sync)
 | |
|     else
 | |
|       cd ffmpeg 
 | |
|       AC_MSG_NOTICE(updating ffmpeg cvs code to $2)
 | |
|       cvs -Q -z4 update -dP -D '$2' || FAILED=yes
 | |
|       cd ..
 | |
|     fi
 | |
|   fi
 | |
|   if test "x$FAILED" != "xyes"; then
 | |
|     echo "$2" > Tag 
 | |
|   fi
 | |
|   
 | |
|   # now go back
 | |
|   cd $DIRECTORY
 | |
| 
 | |
|   if test "x$FAILED" == "xyes"; then
 | |
|     [$4]
 | |
|     false
 | |
|   else
 | |
|     [$3]
 | |
|     true
 | |
|   fi
 | |
| ])
 |