diff -Nur libmpeg3.orig/Makefile libmpeg3/Makefile --- libmpeg3.orig/Makefile Sat Apr 6 00:16:49 2002 +++ libmpeg3/Makefile Sat Apr 6 00:45:24 2002 @@ -65,6 +65,7 @@ ifeq ($(USE_MMX), 1) CFLAGS += -DHAVE_MMX ASMOBJS = $(OBJDIR)/video/mmxidct.o + SHAREDASMOBJS = $(OBJDIR)/video/mmxidct_pic.o NASMOBJS = $(OBJDIR)/video/reconmmx.o endif @@ -81,7 +82,10 @@ - +MAJOR = 1 +MINOR = 5 +MICRO = 0 +LDFLAGSSHARE = -shared -Wl,-soname,libmpeg3.so.$(MAJOR) UTILOBJS = \ $(OBJDIR)/mpeg3cat.o \ @@ -126,8 +130,44 @@ $(OBJDIR)/video/vlc.o \ $(OBJDIR)/workarounds.o +SHAREDOBJS = \ + $(OBJDIR)/bitstream_pic.o \ + $(OBJDIR)/libmpeg3_pic.o \ + $(OBJDIR)/mpeg3atrack_pic.o \ + $(OBJDIR)/mpeg3css_pic.o \ + $(OBJDIR)/mpeg3demux_pic.o \ + $(OBJDIR)/mpeg3ifo_pic.o \ + $(OBJDIR)/mpeg3io_pic.o \ + $(OBJDIR)/mpeg3title_pic.o \ + $(OBJDIR)/mpeg3vtrack_pic.o \ + $(OBJDIR)/audio/ac3_pic.o \ + $(OBJDIR)/audio/bit_allocation_pic.o \ + $(OBJDIR)/audio/dct_pic.o \ + $(OBJDIR)/audio/exponents_pic.o \ + $(OBJDIR)/audio/header_pic.o \ + $(OBJDIR)/audio/layer2_pic.o \ + $(OBJDIR)/audio/layer3_pic.o \ + $(OBJDIR)/audio/mantissa_pic.o \ + $(OBJDIR)/audio/mpeg3audio_pic.o \ + $(OBJDIR)/audio/pcm_pic.o \ + $(OBJDIR)/audio/synthesizers_pic.o \ + $(OBJDIR)/audio/tables_pic.o \ + $(OBJDIR)/video/getpicture_pic.o \ + $(OBJDIR)/video/headers_pic.o \ + $(OBJDIR)/video/idct_pic.o \ + $(OBJDIR)/video/macroblocks_pic.o \ + $(OBJDIR)/video/mmxtest_pic.o \ + $(OBJDIR)/video/motion_pic.o \ + $(OBJDIR)/video/mpeg3video_pic.o \ + $(OBJDIR)/video/output_pic.o \ + $(OBJDIR)/video/reconstruct_pic.o \ + $(OBJDIR)/video/seek_pic.o \ + $(OBJDIR)/video/slice_pic.o \ + $(OBJDIR)/video/vlc_pic.o \ + $(OBJDIR)/workarounds_pic.o + OUTPUT = $(OBJDIR)/libmpeg3.a -SHAREDOUTPUT = $(OBJDIR)/libmpeg3.so +SHAREDOUTPUT = $(OBJDIR)/libmpeg3.so.$(MAJOR).$(MINOR).$(MICRO) UTILS = $(OBJDIR)/mpeg3dump $(OBJDIR)/mpeg3cat $(OBJDIR)/mpeg3toc $(OBJDIR)/mpeg3split LIBS = -lm -lpthread @@ -140,20 +180,21 @@ $(OUTPUT): $(OBJS) $(ASMOBJS) $(NASMOBJS) $(UTILOBJS) ar rcs $(OUTPUT) $(OBJS) $(ASMOBJS) $(NASMOBJS) -$(SHAREDOUTPUT): $(OBJS) $(ASMOBJS) $(NASMOBJS) - gcc -shared -o $(SHAREDOUTPUT) $(OBJS) $(ASMOBJS) $(NASMOBJS) +$(SHAREDOUTPUT): $(SHAREDOBJS) $(SHAREDASMOBJS) $(NASMOBJS) + $(CC) $(LDFLAGSSHARE) -o $(SHAREDOUTPUT) $(SHAREDOBJS) $(SHAREDASMOBJS) $(NASMOBJS) + ln -sf $(SHAREDOUTPUT) libmpeg3.so $(OBJDIR)/mpeg3dump: $(OUTPUT) - $(CC) -o $(OBJDIR)/mpeg3dump mpeg3dump.c $(OUTPUT) $(LIBS) + $(CC) -o $(OBJDIR)/mpeg3dump mpeg3dump.c -L. -lmpeg3 $(LIBS) $(OBJDIR)/mpeg3cat: $(OUTPUT) - $(CC) -o $(OBJDIR)/mpeg3cat mpeg3cat.c $(OUTPUT) $(LIBS) + $(CC) -o $(OBJDIR)/mpeg3cat mpeg3cat.c -L. -lmpeg3 $(LIBS) $(OBJDIR)/mpeg3toc: $(OUTPUT) - $(CC) -o $(OBJDIR)/mpeg3toc mpeg3toc.c $(OUTPUT) $(LIBS) + $(CC) -o $(OBJDIR)/mpeg3toc mpeg3toc.c -L. -lmpeg3 $(LIBS) $(OBJDIR)/mpeg3split: $(OUTPUT) - $(CC) -o $(OBJDIR)/mpeg3split mpeg3split.c $(OUTPUT) $(LIBS) + $(CC) -o $(OBJDIR)/mpeg3split mpeg3split.c -L. -lmpeg3 $(LIBS) $(OBJDIR)/mpeg2qt: $(OUTPUT) $(CC) -o $(OBJDIR)/mpeg2qt mpeg2qt.c \ @@ -181,6 +222,8 @@ install -m 644 $(INSTALL_VHEADERS) $(DESTDIR)/usr/include/libmpeg3/video install -m 644 $(OUTPUT) $(DESTDIR)/usr/lib install $(SHAREDOUTPUT) $(DESTDIR)/usr/lib + ln -sf libmpeg3.so.$(MAJOR).$(MINOR).$(MICRO) $(DESTDIR)/usr/lib/libmpeg3.so.$(MAJOR) + ln -sf libmpeg3.so.$(MAJOR).$(MINOR).$(MICRO) $(DESTDIR)/usr/lib/libmpeg3.so @@ -201,6 +244,12 @@ $(NASMOBJS): $(NASM) -f elf $(subst $(OBJDIR)/,, $*.s) -o $*.o +$(OBJDIR)/%_pic.o : %.c + $(CC) -c -fPIC -DPIC `cat $(OBJDIR)/c_flags` $< -o $@ + +$(OBJDIR)/%_pic.o : %.S + $(CC) -c -fPIC -DPIC `cat $(OBJDIR)/c_flags` $< -o $@ + $(OBJDIR)/bitstream.o: bitstream.c $(OBJDIR)/mpeg3dump.o: mpeg3dump.c $(OBJDIR)/libmpeg3.o: libmpeg3.c diff -Nur libmpeg3.orig/video/slice.c libmpeg3/video/slice.c --- libmpeg3.orig/video/slice.c Mon Oct 1 05:18:31 2001 +++ libmpeg3/video/slice.c Sat Apr 6 00:44:12 2002 @@ -230,7 +230,7 @@ "movq %%mm0, (%%eax)\n" "movq %%mm0, (%%eax, %1)\n" : - : "D" (rfp), "c" (iincr), "b" (bp) + : "D" (rfp), "c" (iincr), "r" (bp) : "eax"); } else