patch by Heliodoro Tammaro <helio at interactives dot org>
authorHeliodoro Tammaro <helio@interactives.org>
Fri, 30 Aug 2002 00:05:28 +0000 (00:05 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 30 Aug 2002 00:05:28 +0000 (00:05 +0000)
- configures/builds on all darwin versions
- ffserver builds on darwin (if you have the extra libraries)
- builds correctly (again) on non-darwin ppc (no -faltivec in gcc-3.2)

Originally committed as revision 880 to svn://svn.ffmpeg.org/ffmpeg/trunk

Makefile
configure
libavcodec/dsputil.c
libavcodec/dsputil.h

index 8d2d711..19d81d9 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -9,8 +9,10 @@ VPATH=$(SRC_PATH)
 CFLAGS= $(OPTFLAGS) -Wall -g -I. -I$(SRC_PATH) -I$(SRC_PATH)/libavcodec -I$(SRC_PATH)/libav -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE
 ifeq ($(CONFIG_DARWIN),yes)
 LDFLAGS+= -g -d
+FFSLDFLAGS= -Wl,-bind_at_load
 else
 LDFLAGS+= -g -Wl,--warn-common
+FFSLDFLAGS= -Wl,-E
 endif
 
 ifeq ($(TARGET_GPROF),yes)
@@ -53,7 +55,8 @@ ffmpeg$(EXE): ffmpeg_g$(EXE)
        $(STRIP) -o $@ $<
 
 ffserver$(EXE): ffserver.o $(DEP_LIBS)
-       $(CC) $(LDFLAGS) -Wl,-E -o $@ ffserver.o -L./libavcodec -L./libav \
+       $(CC) $(LDFLAGS) $(FFSLDFLAGS) \
+               -o $@ ffserver.o -L./libavcodec -L./libav \
               -lavformat -lavcodec -ldl $(EXTRALIBS) 
 
 ffplay: ffmpeg$(EXE)
index e782169..41856b6 100755 (executable)
--- a/configure
+++ b/configure
@@ -35,7 +35,7 @@ case "$cpu" in
   alpha)
     cpu="alpha"
   ;;
-  "Power Macintosh")
+  "Power Macintosh"|ppc)
     cpu="powerpc"
   ;;
   *)
@@ -85,12 +85,13 @@ extralibs="-lpoll -lgnugetopt -lm"
 make="gmake"
 ;;
 Darwin)
+cc="cc"
 v4l="no"
 audio_oss="no"
 CFLAGS="-no-cpp-precomp -pipe -O3 -fomit-frame-pointer"
-SHFLAGS=-dynamic
+SHFLAGS="-dynamiclib"
 extralibs=""
-darwin=yes
+darwin="yes"
 ;;
 *) ;;
 esac
index 8ce6bf7..9eae404 100644 (file)
@@ -1340,8 +1340,10 @@ void dsputil_init(void)
     use_permuted_idct = 0;
 #endif
 #ifdef ARCH_POWERPC
+#ifdef CONFIG_DARWIN
     dsputil_init_altivec();
 #endif
+#endif
 
 #ifdef SIMPLE_IDCT
     if (ff_idct == NULL) {
index 616acc2..27f7524 100644 (file)
@@ -167,7 +167,9 @@ void dsputil_init_alpha(void);
 #define emms_c()
 #define __align8 __attribute__ ((aligned (16)))
 
+#ifdef CONFIG_DARWIN
 void dsputil_init_altivec(void);
+#endif
 
 #else