--- branches/release-1_3-branch/xvidcore/build/generic/configure.in 2011/07/28 07:48:49 2026 +++ branches/release-1_3-branch/xvidcore/build/generic/configure.in 2011/09/19 09:32:53 2043 @@ -144,6 +144,18 @@ AC_CHECK_TOOL([AR], [ar], [ar-not-found]) dnl ========================================================================== +dnl Check for the egrep program +dnl ========================================================================== + +AC_PROG_EGREP + +dnl ========================================================================== +dnl Check how the system supports symlinks. +dnl ========================================================================== + +AC_PROG_LN_S + +dnl ========================================================================== dnl dnl This part looks for: dnl @@ -249,7 +261,7 @@ SHARED_EXTENSION="dll" OBJECT_EXTENSION="obj" ;; - darwin*|raphsody*) + darwin*) if test x"$macosx_module" = x"yes"; then AC_MSG_RESULT([.so .a .o]) SHARED_EXTENSION="so" @@ -280,11 +292,15 @@ SPECIFIC_CFLAGS="" ALTIVEC_CFLAGS="" PRE_SHARED_LIB="" +SO_API_MAJOR_LINK="" +SO_LINK="" case "$target_os" in linux*|solaris*|gnu*) AC_MSG_RESULT([ok]) STATIC_LIB="libxvidcore.\$(STATIC_EXTENSION)" SHARED_LIB="libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR).\$(API_MINOR)" + SO_API_MAJOR_LINK="libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR)" + SO_LINK="libxvidcore.\$(SHARED_EXTENSION)" SPECIFIC_LDFLAGS="-Wl,-soname,libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR) -shared -Wl,--version-script=libxvidcore.ld -lc -lm" SPECIFIC_CFLAGS="-fPIC" ;; @@ -292,6 +308,8 @@ AC_MSG_RESULT([ok]) STATIC_LIB="libxvidcore.\$(STATIC_EXTENSION)" SHARED_LIB="libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR).\$(API_MINOR)" + SO_API_MAJOR_LINK="libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR)" + SO_LINK="libxvidcore.\$(SHARED_EXTENSION)" SPECIFIC_LDFLAGS="-Wl,-soname,libxvidcore.\$(SHARED_EXTENSION).\$(API_MAJOR) -shared -lc -lm" SPECIFIC_CFLAGS="-fPIC" ;; @@ -299,10 +317,10 @@ AC_MSG_RESULT([ok]) STATIC_LIB="xvidcore.\$(STATIC_EXTENSION)" SHARED_LIB="xvidcore.\$(SHARED_EXTENSION)" - SPECIFIC_LDFLAGS="-mno-cygwin -shared -Wl,--dll,--out-implib,\$@.a libxvidcore.def" - SPECIFIC_CFLAGS="-mno-cygwin" + SPECIFIC_LDFLAGS="-shared -Wl,--dll,--out-implib,\$@.a libxvidcore.def" + SPECIFIC_CFLAGS="" ;; - darwin*|raphsody*) + darwin*) STATIC_LIB="libxvidcore.\$(STATIC_EXTENSION)" SPECIFIC_CFLAGS="-fPIC -fno-common -no-cpp-precomp" if test x"$macosx_module" = x"no"; then @@ -438,8 +456,16 @@ AC_MSG_RESULT([win32]) NASM_FORMAT="win32" fi - PREFIX="-DWINDOWS" - MARK_FUNCS="" + PREFIX="-DWINDOWS" + if test "$GCC" = "yes" ; then + echo 'int main(void) {return 0;}' > conftest.c + $CC -S -o conftest conftest.c + if test `$EGREP -c '_main:' conftest` -eq 0 ; then + PREFIX="$PREFIX -DNO_PREFIX" + fi + rm -f conftest* + fi + MARK_FUNCS="" ;; *darwin*) if test "$ARCHITECTURE" = "X86_64" ; then @@ -606,15 +632,35 @@ dnl ========================================================================== if test x"$pthread" = x"yes" ; then - AC_CHECK_HEADER( - [pthread.h], - [AC_CHECK_LIB( - [pthread], - [pthread_create], - [SPECIFIC_CFLAGS="$SPECIFIC_CFLAGS -DHAVE_PTHREAD" - SPECIFIC_LDFLAGS="$SPECIFIC_LDFLAGS -lpthread"], - AC_MSG_WARN(Pthread not supported. No SMP support))], - AC_MSG_WARN(Pthread not supported. No SMP support)) + case "$target_os" in + mingw32*) + AC_CHECK_HEADER( + [pthread.h], + [AC_CHECK_LIB( + [pthreadGC2], + [pthread_create], + [SPECIFIC_CFLAGS="$SPECIFIC_CFLAGS -DHAVE_PTHREAD" + SPECIFIC_LDFLAGS="$SPECIFIC_LDFLAGS -lpthreadGC2"], + [AC_CHECK_LIB( + [pthread], + [pthread_create], + [SPECIFIC_CFLAGS="$SPECIFIC_CFLAGS -DHAVE_PTHREAD" + SPECIFIC_LDFLAGS="$SPECIFIC_LDFLAGS -lpthread"], + AC_MSG_WARN(Pthread not supported. No SMP support))])], + AC_MSG_WARN(Pthread not supported. No SMP support)) + ;; + *) + AC_CHECK_HEADER( + [pthread.h], + [AC_CHECK_LIB( + [pthread], + [pthread_create], + [SPECIFIC_CFLAGS="$SPECIFIC_CFLAGS -DHAVE_PTHREAD" + SPECIFIC_LDFLAGS="$SPECIFIC_LDFLAGS -lpthread"], + AC_MSG_WARN(Pthread not supported. No SMP support))], + AC_MSG_WARN(Pthread not supported. No SMP support)) + ;; + esac else AC_MSG_WARN(Pthread support disabled. No SMP support) fi @@ -649,26 +695,9 @@ dnl ========================================================================== if test "$GCC" = "yes" ; then -cat << EOF > test.c -#include -int main(int argc, char **argv) -{ - if (*argv[[1]] == 'M') { - printf("%d", __GNUC__); - } - if (*argv[[1]] == 'm') { - printf("%d", __GNUC_MINOR__); - } - return 0; -} -EOF - $CC -o gcc-ver test.c - - GCC_MAJOR=`./gcc-ver M` - GCC_MINOR=`./gcc-ver m` - rm -f test.c - rm -f gcc-ver + GCC_MAJOR=`$CC -dumpversion | cut -d . -f 1` + GCC_MINOR=`$CC -dumpversion | cut -d . -f 2` # GCC 4.x if test "${GCC_MAJOR}" -gt 3 ; then @@ -707,16 +736,20 @@ AC_SUBST(ASSEMBLY_SOURCES) AC_SUBST(CC) AC_SUBST(CFLAGS) +AC_SUBST(LDFLAGS) AC_SUBST(SPECIFIC_LDFLAGS) AC_SUBST(SPECIFIC_CFLAGS) AC_SUBST(DCT_IA64_SOURCES) AC_SUBST(PPC_ALTIVEC_SOURCES) +AC_SUBST(LN_S) AC_SUBST(RANLIB) AC_SUBST(AR) AC_SUBST(API_MAJOR) AC_SUBST(API_MINOR) AC_SUBST(STATIC_LIB) AC_SUBST(PRE_SHARED_LIB) +AC_SUBST(SO_API_MAJOR_LINK) +AC_SUBST(SO_LINK) AC_SUBST(SHARED_LIB) AC_SUBST(ALTIVEC_CFLAGS)