[svn] / trunk / xvidcore / build / generic / configure.in Repository:
ViewVC logotype

Diff of /trunk/xvidcore/build/generic/configure.in

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1472, Sat Jun 12 13:02:12 2004 UTC revision 1617, Mon May 23 09:29:43 2005 UTC
# Line 8  Line 8 
8    
9  AC_PREREQ([2.50])  AC_PREREQ([2.50])
10    
11  AC_INIT([XviD], [1.0.1], [xvid-devel@xvid.org])  AC_INIT([XviD], [1.1.0-beta2], [xvid-devel@xvid.org])
12  AC_CONFIG_SRCDIR(configure.in)  AC_CONFIG_SRCDIR(configure.in)
13    
14  dnl Do not forget to increase that when needed.  dnl Do not forget to increase that when needed.
15  API_MAJOR="4"  API_MAJOR="4"
16  API_MINOR="0"  API_MINOR="1"
17    
18  dnl NASM version requirement  dnl NASM version requirement
19  minimum_nasm_patch_version=34  minimum_nasm_patch_version=34
20  nasm_prog="nasm"  nasm_prog="nasm"
21    yasm_prog="yasm"
22    
23  dnl Default CFLAGS -- Big impact on overall speed  dnl Default CFLAGS -- Big impact on overall speed
24  our_cflags_defaults="-Wall"  our_cflags_defaults="-Wall"
# Line 162  Line 163 
163            AC_MSG_RESULT(ia32)            AC_MSG_RESULT(ia32)
164                  ARCHITECTURE="IA32"                  ARCHITECTURE="IA32"
165                  ;;                  ;;
166              x86_64)
167                    AC_MSG_RESULT(x86_64)
168                    ARCHITECTURE="X86_64"
169                    ;;
170                  powerpc)                  powerpc)
171                  AC_MSG_RESULT(PowerPC)                  AC_MSG_RESULT(PowerPC)
172                  ARCHITECTURE="PPC"                  ARCHITECTURE="PPC"
# Line 260  Line 265 
265  SPECIFIC_CFLAGS=""  SPECIFIC_CFLAGS=""
266  PRE_SHARED_LIB=""  PRE_SHARED_LIB=""
267  case "$target_os" in  case "$target_os" in
268       *bsd*|linux*|irix*|solaris*)       linux*|solaris*)
269            AC_MSG_RESULT([ok])
270            STATIC_LIB="libxvidcore.\$(STATIC_EXTENSION)"
271            SHARED_LIB="libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR).\$(API_MINOR)"
272            SPECIFIC_LDFLAGS="-Wl,-soname,libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR) -shared -Wl,--version-script=libxvidcore.ld -lc -lm"
273            SPECIFIC_CFLAGS="-fPIC"
274            ;;
275         *bsd*|irix*)
276          AC_MSG_RESULT([ok])          AC_MSG_RESULT([ok])
277          STATIC_LIB="libxvidcore.\$(STATIC_EXTENSION)"          STATIC_LIB="libxvidcore.\$(STATIC_EXTENSION)"
278          SHARED_LIB="libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR).\$(API_MINOR)"          SHARED_LIB="libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR).\$(API_MINOR)"
# Line 325  Line 337 
337  dnl IA32  dnl IA32
338  dnl  dnl
339    
340  if test "$ARCHITECTURE" = "IA32" ; then  if test "$ARCHITECTURE" = "IA32" -o "$ARCHITECTURE" = "X86_64" ; then
341    
342     dnl     dnl
343     dnl Checking nasm existence     dnl Checking for nasm compatible programs
344       dnl yasm is preferred over nasm, because... i can use it
345       dnl to profile assembly code ;-)
346     dnl     dnl
347    
348       found_nasm_comp_prog="no"
349       chosen_asm_prog=""
350    
351       dnl Check for yasm first
352       AC_CHECK_PROG([ac_yasm], [$yasm_prog], [yes], [no], , [yes])
353       if test "$ac_yasm" = "yes" ; then
354         found_nasm_comp_prog="yes"
355         chosen_asm_prog="$yasm_prog"
356       fi
357    
358       dnl if yasm hasn't been found, then check for nasm (not buggy version)
359       if test "$found_nasm_comp_prog" = "no" -a "$ARCHITECTURE" != "X86_64" ; then
360     AC_CHECK_PROG([ac_nasm], [$nasm_prog], [yes], [no], , [yes])     AC_CHECK_PROG([ac_nasm], [$nasm_prog], [yes], [no], , [yes])
361     if test "$ac_nasm" = "yes" ; then     if test "$ac_nasm" = "yes" ; then
   
362        dnl        dnl
363        dnl Checking nasm patch version        dnl Checking nasm patch version
364        dnl        dnl
365        AC_MSG_CHECKING([for nasm patch version])        AC_MSG_CHECKING([for nasm patch version])
366        nasm_patch=`nasm -r | cut -d '.' -f 3 | cut -d ' ' -f 1`             nasm_patch=`$nasm_prog -r | cut -d '.' -f 3 | cut -d ' ' -f 1`
367        if test -z $nasm_patch ; then        if test -z $nasm_patch ; then
368          nasm_patch=-1          nasm_patch=-1
369        fi        fi
# Line 345  Line 371 
371    
372    
373        if test "$nasm_patch" -lt "$minimum_nasm_patch_version" ; then        if test "$nasm_patch" -lt "$minimum_nasm_patch_version" ; then
374          AC_MSG_WARN([nasm patch version too old - Compiling generic sources only])                 AC_MSG_WARN([nasm patch version is too old])
         ARCHITECTURE="GENERIC"  
375        else        else
376                   found_nasm_comp_prog="yes"
377                           chosen_asm_prog="$nasm_prog"
378               fi
379           fi
380       fi
381    
382           dnl           dnl
383           dnl Checking nasm format - win32 or elf     dnl Ok now sort what object format we must use
384           dnl           dnl
385           AC_MSG_CHECKING([for nasm object format])     if test "$found_nasm_comp_prog" = "yes" ; then
386           AC_MSG_CHECKING([for asm object format])
387           case "$target_os" in           case "$target_os" in
388                *bsd*|linux*|beos|irix*|solaris*)                *bsd*|linux*|beos|irix*|solaris*)
389                    AC_MSG_RESULT([elf])                    AC_MSG_RESULT([elf])
390                    NASM_FORMAT="elf"                    NASM_FORMAT="elf"
391                   MARK_FUNCS="-DMARK_FUNCS"
392                    PREFIX=""                    PREFIX=""
393                    ;;                    ;;
394                [[cC]][[yY]][[gG]][[wW]][[iI]][[nN]]*|mingw32*|mks*)                [[cC]][[yY]][[gG]][[wW]][[iI]][[nN]]*|mingw32*|mks*)
395                    AC_MSG_RESULT([win32])                    AC_MSG_RESULT([win32])
396                    NASM_FORMAT="win32"                    NASM_FORMAT="win32"
397                    PREFIX="-DPREFIX"                    PREFIX="-DPREFIX"
398                   MARK_FUNCS=""
399                    ;;                    ;;
400            esac            esac
401    
402            AS=nasm         AS="$chosen_asm_prog"
           AFLAGS="-I\$(<D)/ -f $NASM_FORMAT $PREFIX"  
403            ASSEMBLY_EXTENSION="asm"            ASSEMBLY_EXTENSION="asm"
404            ASSEMBLY_SOURCES="SRC_IA32"         AFLAGS="-I\$(<D)/ -f $NASM_FORMAT $PREFIX $MARK_FUNCS"
405           ASSEMBLY_SOURCES="SRC_${ARCHITECTURE}"
406           if test "$ARCHITECTURE" = "X86_64" ; then
407                   AFLAGS=${AFLAGS}" -m amd64"
408         fi         fi
   
409     else     else
410          AC_MSG_WARN([nasm not found - Compiling generic sources only])         AC_MSG_WARN([no correct assembler was found - Compiling generic sources only])
411          ARCHITECTURE="GENERIC"          ARCHITECTURE="GENERIC"
412     fi     fi
   
413  fi  fi
414    
415  dnl  dnl
# Line 536  Line 569 
569  fi  fi
570    
571  dnl ==========================================================================  dnl ==========================================================================
572    dnl Some gcc flags can't be used for gcc >= 3.4.0
573    dnl ==========================================================================
574    
575    if test "$GCC" = "yes" ; then
576    cat << EOF > test.c
577    #include <stdio.h>
578    int main(int argc, char **argv)
579    {
580            if (*argv[[1]] == 'M') {
581                    printf("%d", __GNUC__);
582            }
583            if (*argv[[1]] == 'm') {
584                    printf("%d", __GNUC_MINOR__);
585            }
586            return 0;
587    }
588    EOF
589            $CC -o gcc-ver test.c
590    
591            GCC_MAJOR=`./gcc-ver M`
592            GCC_MINOR=`./gcc-ver m`
593    
594            rm -f test.c
595            rm -f gcc-ver
596    
597            # GCC 4.x
598            if test "${GCC_MAJOR}" -gt 3 ; then
599                    CFLAGS=`echo $CFLAGS | sed s,"-mcpu","-mtune",g`
600                    CFLAGS=`echo $CFLAGS | sed s,'-freduce-all-givs','',g`
601                    CFLAGS=`echo $CFLAGS | sed s,'-fmove-all-movables','',g`
602                    CFLAGS=`echo $CFLAGS | sed s,'-fnew-ra','',g`
603                    CFLAGS=`echo $CFLAGS | sed s,'-fwritable-strings','',g`
604            fi
605    
606            # GCC 3.4.x
607            if test "${GCC_MAJOR}" -eq 3 && test "${GCC_MINOR}" -gt 3 ; then
608                    CFLAGS=`echo $CFLAGS | sed s,"-mcpu","-mtune",g`
609            fi
610    fi
611    
612    
613    dnl ==========================================================================
614  dnl  dnl
615  dnl Substitions  dnl Substitions
616  dnl  dnl

Legend:
Removed from v.1472  
changed lines
  Added in v.1617

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4