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

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

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

trunk/xvidcore/build/generic/configure.in revision 824, Sun Feb 9 19:32:52 2003 UTC branches/release-1_0-branch/xvidcore/build/generic/configure.in revision 1408, Sun Apr 4 15:11:42 2004 UTC
# Line 6  Line 6 
6  dnl  dnl
7  dnl ==========================================================================  dnl ==========================================================================
8    
9  AC_INIT([XviD], [0.9.1 (wip)], [xvid-devel@xvid.org])  AC_INIT([XviD], [1.0.0 rc4], [xvid-devel@xvid.org])
10  AC_CONFIG_SRCDIR(configure.in)  AC_CONFIG_SRCDIR(configure.in)
11    
12    dnl Do not forget to increase that when needed.
13    API_MAJOR="4"
14    API_MINOR="0"
15    
16  dnl NASM version requirement  dnl NASM version requirement
17  minimum_nasm_patch_version=34  minimum_nasm_patch_version=34
18  nasm_prog="nasm"  nasm_prog="nasm"
# Line 16  Line 20 
20  dnl Default CFLAGS -- Big impact on overall speed  dnl Default CFLAGS -- Big impact on overall speed
21  our_cflags_defaults="-Wall"  our_cflags_defaults="-Wall"
22  our_cflags_defaults="$our_cflags_defaults -O2"  our_cflags_defaults="$our_cflags_defaults -O2"
23  our_cflags_defaults="$our_cflags_defaults -fPIC"  our_cflags_defaults="$our_cflags_defaults -fstrength-reduce"
24  our_cflags_defaults="$our_cflags_defaults -fomit-frame-pointer"  our_cflags_defaults="$our_cflags_defaults -finline-functions"
25    our_cflags_defaults="$our_cflags_defaults -freduce-all-givs"
26  our_cflags_defaults="$our_cflags_defaults -ffast-math"  our_cflags_defaults="$our_cflags_defaults -ffast-math"
27  our_cflags_defaults="$our_cflags_defaults -funroll-loops"  our_cflags_defaults="$our_cflags_defaults -fomit-frame-pointer"
 our_cflags_defaults="$our_cflags_defaults -fschedule-insns"  
 our_cflags_defaults="$our_cflags_defaults -fschedule-insns2"  
28    
29  dnl ==========================================================================  dnl ==========================================================================
30  dnl Features - configure options  dnl Features - configure options
31  dnl ==========================================================================  dnl ==========================================================================
32    
33  FEATURES=""  FEATURES=""
 DIVX4COMPAT_SOURCES=""  
   
 dnl BIGLUT aka old VLC code  
 AC_ARG_ENABLE(oldvlc,  
                 AC_HELP_STRING([--enable-oldvlc],  
                                  [Enable old VLC code (Needs much more memory ~10MB)]),  
                 [if test "$enable_oldvlc" = "yes" ; then  
                     FEATURES="$FEATURES -DBIGLUT"  
                  fi])  
34    
35  dnl Internal Debug  dnl Internal Debug
36  AC_ARG_ENABLE(idebug,  AC_ARG_ENABLE(idebug,
# Line 54  Line 48 
48                       FEATURES="$FEATURES -D_PROFILING_"                       FEATURES="$FEATURES -D_PROFILING_"
49                    fi])                    fi])
50    
51    dnl GNU Profiling options
52    AC_ARG_ENABLE(gnuprofile,
53                    AC_HELP_STRING([--enable-gnuprofile],
54                                     [Enable profiling informations for gprof]),
55                     [if test "$enable_gnuprofile" = "yes" ; then
56                         GNU_PROF_CFLAGS="-pg -fprofile-arcs -ftest-coverage"
57                         GNU_PROF_LDFLAGS="-pg"
58                      fi])
59    
60  dnl Assembly code  dnl Assembly code
61  AC_ARG_ENABLE(assembly,  AC_ARG_ENABLE(assembly,
62                  AC_HELP_STRING([--disable-assembly],                  AC_HELP_STRING([--disable-assembly],
# Line 67  Line 70 
70                    fi],                    fi],
71                   [assembly="yes"])                   [assembly="yes"])
72    
73  dnl Internal Debug  dnl Build as a module not a shared lib on darwin
74  AC_ARG_ENABLE(divx4compat,  AC_ARG_ENABLE(macosx_module,
75                  AC_HELP_STRING([--enable-divx4compat],                  AC_HELP_STRING([--enable-macosx_module],
76                                   [Enable DivX4 compatibility API]),                                   [Build as a module on MacOS X]),
77                   [if test "$enable_divx4compat" = "yes" ; then                   [if test "$enable_macosx_module" = "yes" ; then
78                       DIVX4COMPAT_SOURCES="SRC_DIVX4COMPAT"                       macosx_module="yes"
79                    fi])                    else
80                         macosx_module="no"
81                      fi],
82                      [macosx_module="no"])
83    
84  dnl ==========================================================================  dnl ==========================================================================
85  dnl Default install prefix and checks build type  dnl Default install prefix and checks build type
# Line 99  Line 104 
104  AC_MSG_CHECKING(whether to use default CFLAGS)  AC_MSG_CHECKING(whether to use default CFLAGS)
105  if test  x"$CFLAGS" = x"" ; then  if test  x"$CFLAGS" = x"" ; then
106     force_default_cc_options="yes"     force_default_cc_options="yes"
    CFLAGS="$our_cflags_defaults"  
107     AC_MSG_RESULT([yes])     AC_MSG_RESULT([yes])
108  else  else
109     force_default_cc_options="no"     force_default_cc_options="no"
# Line 116  Line 120 
120  AC_PROG_INSTALL  AC_PROG_INSTALL
121    
122  dnl ==========================================================================  dnl ==========================================================================
123    dnl Check for the ranlib program to generate static library index
124    dnl ==========================================================================
125    
126    AC_PROG_RANLIB
127    
128    dnl ==========================================================================
129  dnl  dnl
130  dnl This part looks for:  dnl This part looks for:
131  dnl  dnl
# Line 152  Line 162 
162                  ;;                  ;;
163                  powerpc)                  powerpc)
164                  AC_MSG_RESULT(PowerPC)                  AC_MSG_RESULT(PowerPC)
165                  ARCHITECTURE="PPC"                  dnl ATM the ppc port is out of date
166                    dnl ARCHITECTURE="PPC"
167                    ARCHITECTURE="GENERIC"
168                  ;;                  ;;
169                  ia64)                  ia64)
170                  AC_MSG_RESULT(ia64)                  AC_MSG_RESULT(ia64)
# Line 211  Line 223 
223          SHARED_EXTENSION="so"          SHARED_EXTENSION="so"
224          OBJECT_EXTENSION="o"          OBJECT_EXTENSION="o"
225          ;;          ;;
226       [[cC]][[yY]][[gG]][[wW]][[iI]][[nN]]|mingw32|mks)       [[cC]][[yY]][[gG]][[wW]][[iI]][[nN]]*|mingw32*|mks*)
227          AC_MSG_RESULT([.dll .lib .obj])          AC_MSG_RESULT([.dll .a .obj])
228          STATIC_EXTENSION="lib"          STATIC_EXTENSION="a"
229          SHARED_EXTENSION="dll"          SHARED_EXTENSION="dll"
230          OBJECT_EXTENSION="obj"          OBJECT_EXTENSION="obj"
231          ;;          ;;
232       darwin*|raphsody*)       darwin*|raphsody*)
233            if test x"$macosx_module" = x"yes"; then
234               AC_MSG_RESULT([.so .a .o])
235               SHARED_EXTENSION="so"
236            else
237          AC_MSG_RESULT([.dynlib .a .o])          AC_MSG_RESULT([.dynlib .a .o])
         STATIC_EXTENSION="a"  
238          SHARED_EXTENSION="dylib"          SHARED_EXTENSION="dylib"
239            fi
240            STATIC_EXTENSION="a"
241          OBJECT_EXTENSION="o"          OBJECT_EXTENSION="o"
242          ;;          ;;
243       *)       *)
# Line 231  Line 248 
248          ;;          ;;
249  esac  esac
250    
251    dnl ==========================================================================
252    dnl
253    dnl Determines best options for CC and LD
254    dnl  - STATIC_LIB, SHARED_LIB, SPECIFIC_CFLAGS, SPECIFIC_LDLAGS
255    dnl
256    dnl ==========================================================================
257    
258  AC_MSG_CHECKING(for platform specific LDFLAGS/CFLAGS)  AC_MSG_CHECKING(for platform specific LDFLAGS/CFLAGS)
259  OS_LDFLAGS=""  SPECIFIC_LDFLAGS=""
260    SPECIFIC_CFLAGS=""
261    PRE_SHARED_LIB=""
262  case "$target_os" in  case "$target_os" in
263       *bsd*|linux*|irix*|solaris*)       *bsd*|linux*|irix*|solaris*)
264          AC_MSG_RESULT([-shared -lc -lm])          AC_MSG_RESULT([ok])
265          OS_LDFLAGS="-shared -lc -lm"          STATIC_LIB="libxvidcore.\$(STATIC_EXTENSION)"
266          ;;          SHARED_LIB="libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR).\$(API_MINOR)"
267       [[cC]][[yY]][[gG]][[wW]][[iI]][[nN]]|mingw32|mks)          SPECIFIC_LDFLAGS="-Wl,-soname,libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR) -shared -lc -lm"
268          AC_MSG_RESULT([-shared -Wl,--dll,--out-implib,\$@.a])          SPECIFIC_CFLAGS="-fPIC"
269          OS_LDFLAGS="-shared -Wl,--dll,--out-implib,\$@.a libxvidcore.def"          ;;
270          CFLAGS="$CFLAGS -mno-cygwin"       [[cC]][[yY]][[gG]][[wW]][[iI]][[nN]]*|mingw32*|mks*)
271            AC_MSG_RESULT([ok])
272            STATIC_LIB="xvidcore.\$(STATIC_EXTENSION)"
273            SHARED_LIB="xvidcore.\$(SHARED_EXTENSION)"
274            SPECIFIC_LDFLAGS="-mno-cygwin -shared -Wl,--dll,--out-implib,\$@.a libxvidcore.def"
275            SPECIFIC_CFLAGS="-mno-cygwin"
276          ;;          ;;
277       darwin*|raphsody*)       darwin*|raphsody*)
278          AC_MSG_RESULT([-dynamiclib])          STATIC_LIB="libxvidcore.\$(STATIC_EXTENSION)"
279          OS_LDFLAGS="-dynamiclib"          SPECIFIC_CFLAGS="-fPIC -fno-common -no-cpp-precomp"
280          CFLAGS="$CFLAGS -fno-common"          if test x"$macosx_module" = x"no"; then
281               AC_MSG_RESULT([dylib options])
282               SHARED_LIB="libxvidcore.\$(API_MAJOR).\$(SHARED_EXTENSION)"
283               SPECIFIC_LDFLAGS="-dynamiclib -flat_namespace -compatibility_version \$(API_MAJOR) -current_version \$(API_MAJOR).\$(API_MINOR) -install_name \$(libdir)/\$(SHARED_LIB)"
284            else
285               AC_MSG_RESULT([module options])
286               PRE_SHARED_LIB="libxvidcore.\$(SHARED_EXTENSION)-temp.o"
287               SHARED_LIB="libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR)"
288               SPECIFIC_LDFLAGS="-r -keep_private_externs -nostdlib && \$(CC) \$(LDFLAGS) \$(PRE_SHARED_LIB) -o libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR) -bundle -flat_namespace -undefined suppress"
289            fi
290          ;;          ;;
291       beos)       beos)
292          AC_MSG_RESULT([-nostart])          AC_MSG_RESULT([ok])
293          OS_LDFLAGS="-nostart"          STATIC_LIB="libxvidcore.\$(STATIC_EXTENSION)"
294            SHARED_LIB="libxvidcore.\$(SHARED_EXTENSION)"
295            SPECIFIC_LDFLAGS="-nostart"
296            SPECIFIC_CFLAGS="-fPIC"
297          ;;          ;;
298       *)       *)
299          AC_MSG_RESULT([Unknown OS - -shared -lc -lm])          AC_MSG_RESULT([Unknown Platform (Using default -shared -lc -lm)])
300          OS_LDFLAGS=""          STATIC_LIB="libxvidcore.\$(STATIC_EXTENSION)"
301            SHARED_LIB="libxvidcore.\$(SHARED_EXTENSION)"
302            SPECIFIC_LDFLAGS=""
303            SPECIFIC_CFLAGS=""
304          ;;          ;;
305  esac  esac
306    
307    if test x"$PRE_SHARED_LIB" = x; then
308      PRE_SHARED_LIB=$SHARED_LIB
309    fi
310    
311  dnl ==========================================================================  dnl ==========================================================================
312  dnl  dnl
313  dnl Assembler stuff - AS, AFLAGS, ASSEMBLY_EXTENSION, SOURCES  dnl Assembler stuff
314    dnl  - AS, AFLAGS, ASSEMBLY_EXTENSION, SOURCES
315  dnl  dnl
316  dnl ==========================================================================  dnl ==========================================================================
317    
# Line 287  Line 338 
338        dnl        dnl
339        AC_MSG_CHECKING([for nasm patch version])        AC_MSG_CHECKING([for nasm patch version])
340        nasm_patch=`nasm -r | cut -d '.' -f 3 | cut -d ' ' -f 1`        nasm_patch=`nasm -r | cut -d '.' -f 3 | cut -d ' ' -f 1`
341          if test -z $nasm_patch ; then
342            nasm_patch=-1
343          fi
344        AC_MSG_RESULT([$nasm_patch])        AC_MSG_RESULT([$nasm_patch])
345    
346    
347        if test "$nasm_patch" -lt "$minimum_nasm_patch_version" ; then        if test "$nasm_patch" -lt "$minimum_nasm_patch_version" ; then
348          AC_MSG_WARN([nasm patch version too old - Compiling generic sources only])          AC_MSG_WARN([nasm patch version too old - Compiling generic sources only])
349          ARCHITECTURE="GENERIC"          ARCHITECTURE="GENERIC"
# Line 304  Line 359 
359                    NASM_FORMAT="elf"                    NASM_FORMAT="elf"
360                    PREFIX=""                    PREFIX=""
361                    ;;                    ;;
362                [[cC]][[yY]][[gG]][[wW]][[iI]][[nN]]|mingw32|mks)                [[cC]][[yY]][[gG]][[wW]][[iI]][[nN]]*|mingw32*|mks*)
363                    AC_MSG_RESULT([win32])                    AC_MSG_RESULT([win32])
364                    NASM_FORMAT="win32"                    NASM_FORMAT="win32"
365                    PREFIX="-DPREFIX"                    PREFIX="-DPREFIX"
# Line 312  Line 367 
367            esac            esac
368    
369            AS=nasm            AS=nasm
370            AFLAGS="-I\$(<D) -f $NASM_FORMAT $PREFIX"            AFLAGS="-I\$(<D)/ -f $NASM_FORMAT $PREFIX"
371            ASSEMBLY_EXTENSION="asm"            ASSEMBLY_EXTENSION="asm"
372            ASSEMBLY_SOURCES="SRC_IA32"            ASSEMBLY_SOURCES="SRC_IA32"
373         fi         fi
# Line 340  Line 395 
395  EOF  EOF
396     if $CC -c conftest.S 2>/dev/null 1>/dev/null ; then     if $CC -c conftest.S 2>/dev/null 1>/dev/null ; then
397          AC_MSG_RESULT(yes)          AC_MSG_RESULT(yes)
398          CFLAGS="$CFLAGS -DARCH_IS_PPC_ALTIVEC"          SPECIFIC_CFLAGS="$SPECIFIC_CFLAGS -DARCH_IS_PPC_ALTIVEC"
399          ASSEMBLY_SOURCES="SRC_ALTIVEC"          ASSEMBLY_SOURCES="SRC_ALTIVEC"
400     else     else
401          AC_MSG_RESULT(no)          AC_MSG_RESULT(no)
# Line 357  Line 412 
412     AFLAGS="-c"     AFLAGS="-c"
413     ASSEMBLY_EXTENSION="s"     ASSEMBLY_EXTENSION="s"
414     ASSEMBLY_SOURCES="SRC_IA64"     ASSEMBLY_SOURCES="SRC_IA64"
415    
416       case `basename $CC` in
417            *ecc*)
418                    DCT_IA64_SOURCES="SRC_IA64_IDCT_ECC"
419    
420                    dnl If the compiler is ecc, then i don't know its options
421                    dnl fallback to "no options"
422                    if test "$force_default_cc_options" = "yes" ; then
423                       our_cflags_defaults=""
424                    fi
425                    ;;
426            *)
427                    DCT_IA64_SOURCES="SRC_IA64_IDCT_GCC"
428                    ;;
429       esac
430    
431  fi  fi
432    
433  dnl ==========================================================================  dnl ==========================================================================
# Line 372  Line 443 
443    
444  dnl ==========================================================================  dnl ==========================================================================
445  dnl  dnl
446    dnl Now we can set CFLAGS if needed
447    dnl
448    dnl ==========================================================================
449    
450    if test "$force_default_cc_options" = "yes" ; then
451       CFLAGS="$our_cflags_defaults"
452    fi
453    
454    dnl ==========================================================================
455    dnl
456    dnl Profiling stuff goes here
457    dnl  - adds options to SPECIFIC_CFLAGS, SPECIFIC_LDLAGS
458    dnl  - removes incompatible options from CFLAGS
459    dnl
460    dnl ==========================================================================
461    
462    SPECIFIC_LDFLAGS="$SPECIFIC_LDFLAGS $GNU_PROF_LDFLAGS"
463    SPECIFIC_CFLAGS="$SPECIFIC_CFLAGS $GNU_PROF_CFLAGS"
464    
465    if test "$enable_gnuprofile" = "yes" ; then
466       CFLAGS=`echo $CFLAGS | sed s/'-fomit-frame-pointer'/''/`
467    fi
468    
469    dnl ==========================================================================
470    dnl
471  dnl Substitions  dnl Substitions
472  dnl  dnl
473  dnl ==========================================================================  dnl ==========================================================================
# Line 391  Line 487 
487  AC_SUBST(ASSEMBLY_SOURCES)  AC_SUBST(ASSEMBLY_SOURCES)
488  AC_SUBST(CC)  AC_SUBST(CC)
489  AC_SUBST(CFLAGS)  AC_SUBST(CFLAGS)
490  AC_SUBST(OS_LDFLAGS)  AC_SUBST(SPECIFIC_LDFLAGS)
491  AC_SUBST(DIVX4COMPAT_SOURCES)  AC_SUBST(SPECIFIC_CFLAGS)
492    AC_SUBST(DCT_IA64_SOURCES)
493    AC_SUBST(RANLIB)
494    AC_SUBST(API_MAJOR)
495    AC_SUBST(API_MINOR)
496    AC_SUBST(STATIC_LIB)
497    AC_SUBST(PRE_SHARED_LIB)
498    AC_SUBST(SHARED_LIB)
499    
500  dnl ==========================================================================  dnl ==========================================================================
501  dnl  dnl

Legend:
Removed from v.824  
changed lines
  Added in v.1408

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