[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 1412, Mon Apr 5 20:36:37 2004 UTC revision 1694, Sun Mar 5 04:01:07 2006 UTC
# Line 2  Line 2 
2  dnl  dnl
3  dnl Autoconf script for XviD  dnl Autoconf script for XviD
4  dnl  dnl
5  dnl Copyright(C) 2003 Edouard Gomez <ed.gomez@free.fr>  dnl Copyright(C) 2003-2004 Edouard Gomez <ed.gomez@free.fr>
6  dnl  dnl
7  dnl ==========================================================================  dnl ==========================================================================
8    
9  AC_INIT([XviD], [1.0.0 rc4], [xvid-devel@xvid.org])  AC_PREREQ([2.50])
10    
11    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 160  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 258  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 323  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 343  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 502  Line 537 
537  AC_CHECK_HEADERS(  AC_CHECK_HEADERS(
538          stdio.h \          stdio.h \
539          signal.h \          signal.h \
540            stdlib.h \
541            string.h \
542            assert.h \
543            math.h \
544          , , AC_MSG_ERROR(Missing header file))          , , AC_MSG_ERROR(Missing header file))
545    
546  dnl ==========================================================================  dnl ==========================================================================
547  dnl  dnl
548    dnl Check for pthread
549    dnl
550    dnl ==========================================================================
551    
552    AC_CHECK_HEADER(
553            pthread.h,
554            AC_CHECK_LIB(
555                    pthread,
556                    pthread_create,
557                    AC_CHECK_LIB(
558                            pthread,
559                            pthread_join,
560                            SPECIFIC_CFLAGS="$SPECIFIC_CFLAGS -DHAVE_PTHREAD"
561                            SPECIFIC_LDFLAGS="$SPECIFIC_LDFLAGS -lpthread",
562                            AC_MSG_WARN(Pthread not supported. No SMP support)),
563                    AC_MSG_WARN(Pthread not supported. No SMP support)),
564            AC_MSG_WARN(Pthread not supported. No SMP support))
565    
566    dnl ==========================================================================
567    dnl
568  dnl Now we can set CFLAGS if needed  dnl Now we can set CFLAGS if needed
569  dnl  dnl
570  dnl ==========================================================================  dnl ==========================================================================
# Line 530  Line 589 
589  fi  fi
590    
591  dnl ==========================================================================  dnl ==========================================================================
592    dnl Some gcc flags can't be used for gcc >= 3.4.0
593    dnl ==========================================================================
594    
595    if test "$GCC" = "yes" ; then
596    cat << EOF > test.c
597    #include <stdio.h>
598    int main(int argc, char **argv)
599    {
600            if (*argv[[1]] == 'M') {
601                    printf("%d", __GNUC__);
602            }
603            if (*argv[[1]] == 'm') {
604                    printf("%d", __GNUC_MINOR__);
605            }
606            return 0;
607    }
608    EOF
609            $CC -o gcc-ver test.c
610    
611            GCC_MAJOR=`./gcc-ver M`
612            GCC_MINOR=`./gcc-ver m`
613    
614            rm -f test.c
615            rm -f gcc-ver
616    
617            # GCC 4.x
618            if test "${GCC_MAJOR}" -gt 3 ; then
619                    CFLAGS=`echo $CFLAGS | sed s,"-mcpu","-mtune",g`
620                    CFLAGS=`echo $CFLAGS | sed s,'-freduce-all-givs','',g`
621                    CFLAGS=`echo $CFLAGS | sed s,'-fmove-all-movables','',g`
622                    CFLAGS=`echo $CFLAGS | sed s,'-fnew-ra','',g`
623                    CFLAGS=`echo $CFLAGS | sed s,'-fwritable-strings','',g`
624            fi
625    
626            # GCC 3.4.x
627            if test "${GCC_MAJOR}" -eq 3 && test "${GCC_MINOR}" -gt 3 ; then
628                    CFLAGS=`echo $CFLAGS | sed s,"-mcpu","-mtune",g`
629            fi
630    fi
631    
632    
633    dnl ==========================================================================
634  dnl  dnl
635  dnl Substitions  dnl Substitions
636  dnl  dnl

Legend:
Removed from v.1412  
changed lines
  Added in v.1694

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