[svn] / branches / release-1_3-branch / xvidcore / build / generic / configure.in Repository:
ViewVC logotype

Diff of /branches/release-1_3-branch/xvidcore/build/generic/configure.in

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

revision 1535, Sun Aug 22 11:46:10 2004 UTC revision 1821, Fri Nov 28 18:16:42 2008 UTC
# Line 1  Line 1 
1  dnl ==========================================================================  dnl ==========================================================================
2  dnl  dnl
3  dnl Autoconf script for XviD  dnl Autoconf script for Xvid
4  dnl  dnl
5  dnl Copyright(C) 2003-2004 Edouard Gomez <ed.gomez@free.fr>  dnl Copyright(C) 2003-2004 Edouard Gomez <ed.gomez@free.fr>
6  dnl  dnl
# 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.3.0], [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_minor_version=0
20    minimum_nasm_major_version=2
21  nasm_prog="nasm"  nasm_prog="nasm"
 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"
25  our_cflags_defaults="$our_cflags_defaults -O2"  our_cflags_defaults="$our_cflags_defaults -O2"
26  our_cflags_defaults="$our_cflags_defaults -fstrength-reduce"  our_cflags_defaults="$our_cflags_defaults -fstrength-reduce"
27  our_cflags_defaults="$our_cflags_defaults -finline-functions"  our_cflags_defaults="$our_cflags_defaults -finline-functions"
 our_cflags_defaults="$our_cflags_defaults -freduce-all-givs"  
28  our_cflags_defaults="$our_cflags_defaults -ffast-math"  our_cflags_defaults="$our_cflags_defaults -ffast-math"
29  our_cflags_defaults="$our_cflags_defaults -fomit-frame-pointer"  our_cflags_defaults="$our_cflags_defaults -fomit-frame-pointer"
30    
# Line 163  Line 162 
162            AC_MSG_RESULT(ia32)            AC_MSG_RESULT(ia32)
163                  ARCHITECTURE="IA32"                  ARCHITECTURE="IA32"
164                  ;;                  ;;
165              x86_64)
166                    AC_MSG_RESULT(x86_64)
167                    ARCHITECTURE="X86_64"
168                    ;;
169                  powerpc)                  powerpc)
170                  AC_MSG_RESULT(PowerPC)                  AC_MSG_RESULT(PowerPC)
171                  ARCHITECTURE="PPC"                  ARCHITECTURE="PPC"
# Line 195  Line 198 
198          BUS="64BIT"          BUS="64BIT"
199          ;;          ;;
200       *)       *)
201          AC_MSG_ERROR([XviD supports only 32/64 bit architectures])          AC_MSG_ERROR([Xvid supports only 32/64 bit architectures])
202          ;;          ;;
203  esac  esac
204    
# Line 261  Line 264 
264  SPECIFIC_CFLAGS=""  SPECIFIC_CFLAGS=""
265  PRE_SHARED_LIB=""  PRE_SHARED_LIB=""
266  case "$target_os" in  case "$target_os" in
267       *bsd*|linux*|irix*|solaris*)       linux*|solaris*)
268            AC_MSG_RESULT([ok])
269            STATIC_LIB="libxvidcore.\$(STATIC_EXTENSION)"
270            SHARED_LIB="libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR).\$(API_MINOR)"
271            SPECIFIC_LDFLAGS="-Wl,-soname,libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR) -shared -Wl,--version-script=libxvidcore.ld -lc -lm"
272            SPECIFIC_CFLAGS="-fPIC"
273            ;;
274         *bsd*|irix*)
275          AC_MSG_RESULT([ok])          AC_MSG_RESULT([ok])
276          STATIC_LIB="libxvidcore.\$(STATIC_EXTENSION)"          STATIC_LIB="libxvidcore.\$(STATIC_EXTENSION)"
277          SHARED_LIB="libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR).\$(API_MINOR)"          SHARED_LIB="libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR).\$(API_MINOR)"
# Line 326  Line 336 
336  dnl IA32  dnl IA32
337  dnl  dnl
338    
339  if test "$ARCHITECTURE" = "IA32" ; then  if test "$ARCHITECTURE" = "IA32" -o "$ARCHITECTURE" = "X86_64" ; then
340    
341     dnl     dnl
342     dnl Checking for nasm compatible programs     dnl Checking for nasm compatible programs
    dnl yasm is preferred over nasm, because... i can use it  
    dnl to profile assembly code ;-)  
343     dnl     dnl
344    
345     found_nasm_comp_prog="no"     found_nasm_comp_prog="no"
346     chosen_asm_prog=""     chosen_asm_prog=""
347    
348     dnl Check for yasm first     dnl Check for nasm (not buggy version)
    AC_CHECK_PROG([ac_yasm], [$yasm_prog], [yes], [no], , [yes])  
    if test "$ac_yasm" = "yes" ; then  
      found_nasm_comp_prog="yes"  
      chosen_asm_prog="$yasm_prog"  
    fi  
   
    dnl if yasm hasn't been found, then check for nasm (not buggy version)  
349     if test "$found_nasm_comp_prog" = "no" ; then     if test "$found_nasm_comp_prog" = "no" ; then
350         AC_CHECK_PROG([ac_nasm], [$nasm_prog], [yes], [no], , [yes])         AC_CHECK_PROG([ac_nasm], [$nasm_prog], [yes], [no], , [yes])
351         if test "$ac_nasm" = "yes" ; then         if test "$ac_nasm" = "yes" ; then
352             dnl             dnl
353             dnl Checking nasm patch version             dnl Checking nasm version
354             dnl             dnl
355             AC_MSG_CHECKING([for nasm patch version])             AC_MSG_CHECKING([for nasm version])
356             nasm_patch=`$nasm_prog -r | cut -d '.' -f 3 | cut -d ' ' -f 1`             nasm_minor=`$nasm_prog -v | cut -d '.' -f 2 | cut -d ' ' -f 1`
357             if test -z $nasm_patch ; then             nasm_major=`$nasm_prog -v | cut -d '.' -f 1 | cut -d ' ' -f 3`
358                nasm_patch=-1             if test -z $nasm_minor ; then
359             fi                nasm_minor=-1
360             AC_MSG_RESULT([$nasm_patch])             fi
361               if test -z $nasm_major ; then
362                  nasm_major=-1
363             if test "$nasm_patch" -lt "$minimum_nasm_patch_version" ; then             fi
364                 AC_MSG_WARN([nasm patch version is too old])             AC_MSG_RESULT([$nasm_major])
365    
366               dnl need nasm 2.x for SSE3/4 and X86_64
367               if test "$nasm_major" -lt "$minimum_nasm_major_version" ; then
368                 AC_MSG_WARN([nasm version is too old])
369             else             else
370                 found_nasm_comp_prog="yes"                 found_nasm_comp_prog="yes"
371                         chosen_asm_prog="$nasm_prog"                         chosen_asm_prog="$nasm_prog"
# Line 375  Line 380 
380         AC_MSG_CHECKING([for asm object format])         AC_MSG_CHECKING([for asm object format])
381         case "$target_os" in         case "$target_os" in
382             *bsd*|linux*|beos|irix*|solaris*)             *bsd*|linux*|beos|irix*|solaris*)
383                   if test "$ARCHITECTURE" = "X86_64" ; then
384                       AC_MSG_RESULT([elf64])
385                       NASM_FORMAT="elf64"
386                   else
387                 AC_MSG_RESULT([elf])                 AC_MSG_RESULT([elf])
388                 NASM_FORMAT="elf"                 NASM_FORMAT="elf"
389                   fi
390                 MARK_FUNCS="-DMARK_FUNCS"                 MARK_FUNCS="-DMARK_FUNCS"
391                     PREFIX=""                     PREFIX=""
392                 ;;                 ;;
393             [[cC]][[yY]][[gG]][[wW]][[iI]][[nN]]*|mingw32*|mks*)             [[cC]][[yY]][[gG]][[wW]][[iI]][[nN]]*|mingw32*|mks*)
394                   if test "$ARCHITECTURE" = "X86_64" ; then
395                       AC_MSG_RESULT([win64])
396                       NASM_FORMAT="win64"
397                   else
398                 AC_MSG_RESULT([win32])                 AC_MSG_RESULT([win32])
399                 NASM_FORMAT="win32"                 NASM_FORMAT="win32"
400                   fi
401                   PREFIX="-DWINDOWS"
402                   MARK_FUNCS=""
403                   ;;
404               *darwin*)
405                   AC_MSG_RESULT([macho])
406                   NASM_FORMAT="macho"
407                 PREFIX="-DPREFIX"                 PREFIX="-DPREFIX"
408                 MARK_FUNCS=""                 MARK_FUNCS=""
409                 ;;                 ;;
410         esac         esac
411    
412         AS="$chosen_asm_prog"         AS="$chosen_asm_prog"
        AFLAGS="-I\$(<D)/ -f $NASM_FORMAT $PREFIX $MARK_FUNCS"  
413         ASSEMBLY_EXTENSION="asm"         ASSEMBLY_EXTENSION="asm"
414         ASSEMBLY_SOURCES="SRC_IA32"         AFLAGS="-I\$(<D)/ -I../../src/ -f $NASM_FORMAT $PREFIX $MARK_FUNCS"
415           ASSEMBLY_SOURCES="SRC_${ARCHITECTURE}"
416           if test "$ARCHITECTURE" = "X86_64" ; then
417                   AFLAGS=${AFLAGS}" -DARCH_IS_X86_64"
418           fi
419     else     else
420         AC_MSG_WARN([no correct assembler was found - Compiling generic sources only])         AC_MSG_WARN([no correct assembler was found - Compiling generic sources only])
421         ARCHITECTURE="GENERIC"         ARCHITECTURE="GENERIC"
# Line 531  Line 555 
555    
556  dnl ==========================================================================  dnl ==========================================================================
557  dnl  dnl
558    dnl Check for pthread
559    dnl
560    dnl ==========================================================================
561    
562    AC_CHECK_HEADER(
563            pthread.h,
564            AC_CHECK_LIB(
565                    pthread,
566                    pthread_create,
567                    AC_CHECK_LIB(
568                            pthread,
569                            pthread_join,
570                            SPECIFIC_CFLAGS="$SPECIFIC_CFLAGS -DHAVE_PTHREAD"
571                            SPECIFIC_LDFLAGS="$SPECIFIC_LDFLAGS -lpthread",
572                            AC_MSG_WARN(Pthread not supported. No SMP support)),
573                    AC_MSG_WARN(Pthread not supported. No SMP support)),
574            AC_MSG_WARN(Pthread not supported. No SMP support))
575    
576    dnl ==========================================================================
577    dnl
578  dnl Now we can set CFLAGS if needed  dnl Now we can set CFLAGS if needed
579  dnl  dnl
580  dnl ==========================================================================  dnl ==========================================================================
# Line 555  Line 599 
599  fi  fi
600    
601  dnl ==========================================================================  dnl ==========================================================================
602    dnl Some gcc flags can't be used for gcc >= 3.4.0
603    dnl ==========================================================================
604    
605    if test "$GCC" = "yes" ; then
606    cat << EOF > test.c
607    #include <stdio.h>
608    int main(int argc, char **argv)
609    {
610            if (*argv[[1]] == 'M') {
611                    printf("%d", __GNUC__);
612            }
613            if (*argv[[1]] == 'm') {
614                    printf("%d", __GNUC_MINOR__);
615            }
616            return 0;
617    }
618    EOF
619            $CC -o gcc-ver test.c
620    
621            GCC_MAJOR=`./gcc-ver M`
622            GCC_MINOR=`./gcc-ver m`
623    
624            rm -f test.c
625            rm -f gcc-ver
626    
627            # GCC 4.x
628            if test "${GCC_MAJOR}" -gt 3 ; then
629                    CFLAGS=`echo $CFLAGS | sed s,"-mcpu","-mtune",g`
630                    CFLAGS=`echo $CFLAGS | sed s,'-freduce-all-givs','',g`
631                    CFLAGS=`echo $CFLAGS | sed s,'-fmove-all-movables','',g`
632                    CFLAGS=`echo $CFLAGS | sed s,'-fnew-ra','',g`
633                    CFLAGS=`echo $CFLAGS | sed s,'-fwritable-strings','',g`
634            fi
635    
636            # GCC 3.4.x
637            if test "${GCC_MAJOR}" -eq 3 && test "${GCC_MINOR}" -gt 3 ; then
638                    CFLAGS=`echo $CFLAGS | sed s,"-mcpu","-mtune",g`
639            fi
640    fi
641    
642    
643    dnl ==========================================================================
644  dnl  dnl
645  dnl Substitions  dnl Substitions
646  dnl  dnl

Legend:
Removed from v.1535  
changed lines
  Added in v.1821

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