diff -Naur libmpeg3-1.8.old/Makefile libmpeg3-1.8.new/Makefile --- libmpeg3-1.8.old/Makefile 2008-08-07 04:33:09.000000000 +0100 +++ libmpeg3-1.8.new/Makefile 2008-09-28 03:28:17.000000000 +0100 @@ -1,8 +1,11 @@ CC = gcc NASM = nasm USE_MMX = 0 -USE_CSS = 1 -A52DIR := $(shell expr a52dec* ) +USE_CSS = 0 +A52DIR := /usr/include/a52dec +LIBDIR = lib +MAJOR = 1 +MINOR = 8 ifeq ("$(DST)", "") @@ -16,36 +19,46 @@ endif -OBJDIR := $(shell uname --machine) +ifeq ("$(ARCH)", "") +OBJDIR := $(shell arch) +else +OBJDIR := $(ARCH) +endif +ifeq ($(strip $(prefix)),) +PREFIX=/usr +else +PREFIX=$(prefix) +endif +ifeq ($(OBJDIR), i386) + USE_MMX = 0 + ADD_CFLAGS := -O2 -fomit-frame-pointer -falign-loops=2 -falign-jumps=2 -falign-functions=2 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE +endif -ifeq ($(OBJDIR), alpha) +ifeq ($(OBJDIR), i586) USE_MMX = 0 - ifneq ($(HAVE_CFLAGS), y) - CFLAGS := -O4 -arch ev67 -ieee -accept c99_keywords -gcc_messages - endif + ADD_CFLAGS := -O2 -fomit-frame-pointer -falign-loops=2 -falign-jumps=2 -falign-functions=2 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE endif ifeq ($(OBJDIR), i686) - USE_MMX = 1 - ifneq ($(HAVE_CFLAGS), y) - CFLAGS := -O2 -fomit-frame-pointer -falign-loops=2 -falign-jumps=2 -falign-functions=2 -I/usr/local/include - endif - CFLAGS += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE + USE_MMX = 0 + ADD_CFLAGS := -O2 -fomit-frame-pointer -falign-loops=2 -falign-jumps=2 -falign-functions=2 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE endif + ifeq ($(OBJDIR), x86_64) - ifneq ($(HAVE_CFLAGS), y) - CFLAGS := -O2 -fomit-frame-pointer -I/usr/local/include - endif - CFLAGS += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE + ADD_CFLAGS := -O2 -fPIC -fomit-frame-pointer -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE +endif +ifndef ADD_CFLAGS + # This is not a "supported" architecture. Fall on defaults. + ADD_CFLAGS := -O2 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE endif - +CFLAGS += $(ADD_CFLAGS) ifeq ($(USE_CSS), 1) CFLAGS += -DHAVE_CSS @@ -64,8 +77,7 @@ CFLAGS += \ -I. \ - -I$(A52DIR)/include \ - -I$(A52DIR)/liba52 + -I$(A52DIR) @@ -77,7 +89,8 @@ - +SOBJS = $(OBJS:.o=.lo) +.SUFFIXES: .lo OBJS = \ @@ -136,51 +149,45 @@ $(OBJDIR)/audio \ $(OBJDIR)/video -include Makefile.a52 - -DIRS += $(A52DIRS) - - +SHARED = $(OBJDIR)/libmpeg3.so OUTPUT = $(OBJDIR)/libmpeg3.a UTILS = $(OBJDIR)/mpeg3dump $(OBJDIR)/mpeg3peek $(OBJDIR)/mpeg3toc $(OBJDIR)/mpeg3cat +SONAME = libmpeg3.so #$(OBJDIR)/mpeg3split -LIBS = -lm -lpthread +LIBS = -lm -lpthread -la52 $(shell mkdir -p $(OBJDIR) ) -$(shell echo $(CFLAGS) > $(OBJDIR)/c_flags) -$(shell echo $(A52CFLAGS) > $(OBJDIR)/a52_flags) -$(shell echo $(OBJS) $(ASMOBJS) $(A52OBJS) $(NASMOBJS) > $(OBJDIR)/objs) $(shell mkdir -p $(DIRS) ) -all: $(OUTPUT) $(UTILS) +all: $(SHARED) $(UTILS) -$(OUTPUT): $(OBJS) $(ASMOBJS) $(NASMOBJS) $(A52OBJS) - ar rcs $(OUTPUT) `cat $(OBJDIR)/objs` +$(SHARED): $(OBJS) $(ASMOBJS) $(NASMOBJS) $(A52OBJS) + $(CC) $(CFLAGS) $(LIBS) -shared -o $(SHARED) $(OBJS) $(ASMOBJS) $(NASMOBJS) -Wl,-soname -Wl,$(SONAME) + ( cd $(OBJDIR); \ + ln -sf $(SONAME) $(SONAME).$(MAJOR) ; \ + ln -sf $(SONAME) $(SONAME).$(MAJOR).$(MINOR) ; \ + ) +$(OBJDIR)/mpeg3dump: $(SHARED) mpeg3dump.c + $(CC) $(CFLAGS) $(LIBS) -o $(OBJDIR)/mpeg3dump mpeg3dump.c $(SHARED) -$(OBJDIR)/mpeg3dump: $(OUTPUT) mpeg3dump.c - $(CC) `cat $(OBJDIR)/c_flags` -o $(OBJDIR)/mpeg3dump mpeg3dump.c $(OUTPUT) $(LIBS) +$(OBJDIR)/mpeg3peek: $(SHARED) mpeg3peek.c + $(CC) $(CFLAGS) $(LIBS) -o $(OBJDIR)/mpeg3peek mpeg3peek.c $(SHARED) -$(OBJDIR)/mpeg3peek: $(OUTPUT) mpeg3peek.c - $(CC) `cat $(OBJDIR)/c_flags` -o $(OBJDIR)/mpeg3peek mpeg3peek.c $(OUTPUT) $(LIBS) +$(OBJDIR)/mpeg3toc: $(SHARED) mpeg3toc.c + $(CC) $(CFLAGS) $(LIBS) -o $(OBJDIR)/mpeg3toc mpeg3toc.c $(SHARED) -$(OBJDIR)/mpeg3toc: $(OUTPUT) mpeg3toc.c - $(CC) `cat $(OBJDIR)/c_flags` -o $(OBJDIR)/mpeg3toc mpeg3toc.c $(OUTPUT) $(LIBS) +$(OBJDIR)/mpeg3cat: $(SHARED) mpeg3cat.c + $(CC) $(CFLAGS) $(LIBS) -o $(OBJDIR)/mpeg3cat mpeg3cat.c $(SHARED) -$(OBJDIR)/mpeg3cat: $(OUTPUT) mpeg3cat.c - $(CC) `cat $(OBJDIR)/c_flags` -o $(OBJDIR)/mpeg3cat mpeg3cat.c $(OUTPUT) $(LIBS) - -#$(OBJDIR)/mpeg3split: $(OUTPUT) -# $(CC) `cat $(OBJDIR)/c_flags` -o $(OBJDIR)/mpeg3split mpeg3split.c $(OUTPUT) $(LIBS) - -$(OBJDIR)/mpeg2qt: $(OUTPUT) - $(CC) `cat $(OBJDIR)/c_flags` -o $(OBJDIR)/mpeg2qt mpeg2qt.c \ +$(OBJDIR)/mpeg2qt: $(SHARED) + $(CC) $(CFLAGS) $(LIBS) -o $(OBJDIR)/mpeg2qt mpeg2qt.c \ $(OUTPUT) \ $(LIBS) \ -I. \ @@ -191,7 +198,18 @@ -ldl install: - cp $(UTILS) $(DST) + install -d $(DESTDIR)$(PREFIX)/bin + install -m 755 $(UTILS) $(DESTDIR)$(PREFIX)/bin + install -d $(DESTDIR)$(PREFIX)/$(LIBDIR) + install $(SHARED) $(DESTDIR)$(PREFIX)/$(LIBDIR) + ( cd $(DESTDIR)$(PREFIX)/$(LIBDIR) ; \ + ln -sf $(SONAME) $(SONAME).$(MAJOR) ; \ + ln -sf $(SONAME) $(SONAME).$(MAJOR).$(MINOR) ; ) + install -d $(DESTDIR)$(PREFIX)/include/audio + install -d $(DESTDIR)$(PREFIX)/include/video + install -m 644 *.h $(DESTDIR)$(PREFIX)/include + install -m 644 audio/*.h $(DESTDIR)$(PREFIX)/include/audio + install -m 644 video/*.h $(DESTDIR)$(PREFIX)/include/video clean: rm -rf $(OBJDIR) @@ -204,7 +222,7 @@ cat *.c *.h audio/*.c audio/*.h video/*.c video/*.h | wc $(OBJS): - $(CC) -c `cat $(OBJDIR)/c_flags` $(subst $(OBJDIR)/,, $*.c) -o $*.o + $(CC) -c -D_REENTRANT $(CFLAGS) $(subst $(OBJDIR)/,, $*.c) -o $*.o $(ASMOBJS): $(CC) -c `cat $(OBJDIR)/c_flags` $(subst $(OBJDIR)/,, $*.S) -o $*.o $(NASMOBJS): @@ -255,6 +273,3 @@ $(OBJDIR)/video/vlc.o: video/vlc.c $(OBJDIR)/workarounds.o: workarounds.c - - -include depend.a52 diff -Naur libmpeg3-1.8.old/audio/Makefile libmpeg3-1.8.new/audio/Makefile --- libmpeg3-1.8.old/audio/Makefile 2007-01-09 07:09:51.000000000 +0000 +++ libmpeg3-1.8.new/audio/Makefile 2008-09-28 02:32:54.000000000 +0100 @@ -18,7 +18,7 @@ all: $(OBJS) .c.o: - $(CC) -c `./c_flags` $*.c + $(CC) -c -fPIC `./c_flags` $*.c .s.o: $(CC) -f elf $*.s