Merge CV, ver=5.1; ops/methods from HV, and interface from CV where possible
[goodguy/history.git] / cinelerra-5.1 / libzmpeg3 / Makefile.orig
diff --git a/cinelerra-5.1/libzmpeg3/Makefile.orig b/cinelerra-5.1/libzmpeg3/Makefile.orig
new file mode 100644 (file)
index 0000000..0c6a12c
--- /dev/null
@@ -0,0 +1,260 @@
+CC = gcc
+NASM = nasm
+USE_MMX = 0
+USE_CSS = 1
+A52DIR := $(shell expr a52dec* )
+
+
+ifeq ("$(DST)", "")
+DST=/usr/bin
+endif
+
+ifeq ($(origin CFLAGS), environment)
+HAVE_CFLAGS := y
+else
+HAVE_CFLAGS := n
+endif
+
+
+OBJDIR := $(shell uname --machine)
+
+
+
+
+ifeq ($(OBJDIR), alpha)
+  USE_MMX = 0
+  ifneq ($(HAVE_CFLAGS), y)
+    CFLAGS := -O4 -arch ev67 -ieee -accept c99_keywords -gcc_messages
+  endif
+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
+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
+
+
+endif
+
+
+
+ifeq ($(USE_CSS), 1)
+  CFLAGS += -DHAVE_CSS
+endif
+
+ifeq ($(USE_MMX), 1)
+  CFLAGS += -DHAVE_MMX
+  ASMOBJS = $(OBJDIR)/video/mmxidct.o
+  NASMOBJS = $(OBJDIR)/video/reconmmx.o
+endif
+
+
+
+
+
+
+CFLAGS += \
+       -I. \
+       -I$(A52DIR)/include \
+       -I$(A52DIR)/liba52
+
+
+
+CFLAGS += -g
+
+
+
+
+
+
+
+
+
+
+OBJS = \
+       $(OBJDIR)/audio/ac3.o \
+       $(OBJDIR)/audio/dct.o \
+       $(OBJDIR)/audio/huffman.o \
+       $(OBJDIR)/audio/layer2.o \
+       $(OBJDIR)/audio/layer3.o \
+       $(OBJDIR)/audio/mpeg3audio.o \
+       $(OBJDIR)/audio/pcm.o \
+       $(OBJDIR)/audio/synthesizers.o \
+       $(OBJDIR)/audio/tables.o \
+       $(OBJDIR)/libmpeg3.o \
+       $(OBJDIR)/mpeg3atrack.o \
+       $(OBJDIR)/mpeg3bits.o \
+       $(OBJDIR)/mpeg3css.o \
+       $(OBJDIR)/mpeg3demux.o \
+       $(OBJDIR)/mpeg3ifo.o \
+       $(OBJDIR)/mpeg3io.o \
+       $(OBJDIR)/mpeg3strack.o \
+       $(OBJDIR)/mpeg3title.o \
+       $(OBJDIR)/mpeg3tocutil.o \
+       $(OBJDIR)/mpeg3vtrack.o \
+       $(OBJDIR)/video/getpicture.o \
+       $(OBJDIR)/video/headers.o \
+       $(OBJDIR)/video/idct.o \
+       $(OBJDIR)/video/macroblocks.o \
+       $(OBJDIR)/video/mmxtest.o \
+       $(OBJDIR)/video/motion.o \
+       $(OBJDIR)/video/mpeg3cache.o \
+       $(OBJDIR)/video/mpeg3video.o \
+       $(OBJDIR)/video/output.o \
+       $(OBJDIR)/video/reconstruct.o \
+       $(OBJDIR)/video/seek.o \
+       $(OBJDIR)/video/slice.o \
+       $(OBJDIR)/video/subtitle.o \
+       $(OBJDIR)/video/vlc.o \
+       $(OBJDIR)/workarounds.o
+
+#OBJS = \
+#      $(OBJDIR)/audio/ac3.o \
+#      $(OBJDIR)/audio/bit_allocation.o \
+#      $(OBJDIR)/audio/exponents.o \
+#      $(OBJDIR)/audio/header.o \
+#      $(OBJDIR)/audio/huffman.o \
+#      $(OBJDIR)/audio/layer2.o \
+#      $(OBJDIR)/audio/layer3.o \
+#      $(OBJDIR)/audio/mantissa.o \
+#      $(OBJDIR)/audio/pcm.o \
+#      $(OBJDIR)/audio/tables.o \
+
+
+
+
+DIRS := \
+       $(OBJDIR)/audio \
+       $(OBJDIR)/video
+
+include Makefile.a52
+
+DIRS += $(A52DIRS)
+
+
+OUTPUT = $(OBJDIR)/libmpeg3.a
+UTILS = $(OBJDIR)/mpeg3dump $(OBJDIR)/mpeg3peek $(OBJDIR)/mpeg3toc  $(OBJDIR)/mpeg3cat
+
+#$(OBJDIR)/mpeg3split
+
+
+LIBS = -lm -lpthread
+
+$(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)
+
+
+$(OUTPUT): $(OBJS) $(ASMOBJS) $(NASMOBJS) $(A52OBJS)
+       ar rcs $(OUTPUT) `cat $(OBJDIR)/objs`
+
+
+
+$(OBJDIR)/mpeg3dump: $(OUTPUT) mpeg3dump.c
+       $(CC) `cat $(OBJDIR)/c_flags` -o $(OBJDIR)/mpeg3dump mpeg3dump.c $(OUTPUT) $(LIBS)
+
+$(OBJDIR)/mpeg3peek: $(OUTPUT) mpeg3peek.c
+       $(CC) `cat $(OBJDIR)/c_flags` -o $(OBJDIR)/mpeg3peek mpeg3peek.c $(OUTPUT) $(LIBS)
+
+$(OBJDIR)/mpeg3toc: $(OUTPUT) mpeg3toc.c
+       $(CC) `cat $(OBJDIR)/c_flags` -o $(OBJDIR)/mpeg3toc mpeg3toc.c $(OUTPUT) $(LIBS)
+
+$(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 \
+               $(OUTPUT) \
+               $(LIBS) \
+               -I. \
+               -I../quicktime \
+               ../quicktime/$(OBJDIR)/libquicktime.a \
+               -lpng \
+               -lz \
+               -ldl
+
+install: 
+       cp $(UTILS) $(DST)
+
+clean:
+       rm -rf $(OBJDIR)
+
+backup: clean
+       cd .. && \
+       tar zcf libmpeg3.tar.gz libmpeg3
+
+wc:
+       cat *.c *.h audio/*.c audio/*.h video/*.c video/*.h | wc
+
+$(OBJS): 
+       $(CC) -c `cat $(OBJDIR)/c_flags` $(subst $(OBJDIR)/,, $*.c) -o $*.o
+$(ASMOBJS): 
+       $(CC) -c `cat $(OBJDIR)/c_flags` $(subst $(OBJDIR)/,, $*.S) -o $*.o
+$(NASMOBJS): 
+       $(NASM) -f elf $(subst $(OBJDIR)/,, $*.s) -o $*.o
+$(A52OBJS):
+       $(CC) -c `cat $(OBJDIR)/a52_flags` $(subst $(OBJDIR)/,, $*.c) -o $*.o
+
+$(OBJDIR)/libmpeg3.o:                              libmpeg3.c
+$(OBJDIR)/mpeg3atrack.o:                           mpeg3atrack.c
+$(OBJDIR)/mpeg3bits.o:                             mpeg3bits.c
+$(OBJDIR)/mpeg3css.o:                              mpeg3css.c
+$(OBJDIR)/mpeg3demux.o:                            mpeg3demux.c
+$(OBJDIR)/mpeg3dump.o:                                     mpeg3dump.c
+$(OBJDIR)/mpeg3ifo.o:                              mpeg3ifo.c
+$(OBJDIR)/mpeg3io.o:                               mpeg3io.c
+$(OBJDIR)/mpeg3strack.o:                            mpeg3strack.c
+$(OBJDIR)/mpeg3title.o:                            mpeg3title.c
+$(OBJDIR)/mpeg3toc3.o:                             mpeg3toc3.c
+$(OBJDIR)/mpeg3toc.o:                              mpeg3toc.c
+$(OBJDIR)/mpeg3tocutil.o:                           mpeg3tocutil.c
+$(OBJDIR)/mpeg3vtrack.o:                           mpeg3vtrack.c
+$(OBJDIR)/audio/ac3.o:                             audio/ac3.c
+$(OBJDIR)/audio/bit_allocation.o:                  audio/bit_allocation.c
+$(OBJDIR)/audio/dct.o:                             audio/dct.c
+$(OBJDIR)/audio/exponents.o:                       audio/exponents.c
+$(OBJDIR)/audio/header.o:                          audio/header.c
+$(OBJDIR)/audio/huffman.o:                         audio/huffman.c
+$(OBJDIR)/audio/layer2.o:                          audio/layer2.c
+$(OBJDIR)/audio/layer3.o:                          audio/layer3.c
+$(OBJDIR)/audio/mantissa.o:                        audio/mantissa.c
+$(OBJDIR)/audio/mpeg3audio.o:                      audio/mpeg3audio.c
+$(OBJDIR)/audio/pcm.o:                             audio/pcm.c
+$(OBJDIR)/audio/synthesizers.o:                    audio/synthesizers.c
+$(OBJDIR)/audio/tables.o:                          audio/tables.c
+$(OBJDIR)/video/getpicture.o:                      video/getpicture.c
+$(OBJDIR)/video/headers.o:                         video/headers.c
+$(OBJDIR)/video/idct.o:                            video/idct.c
+$(OBJDIR)/video/macroblocks.o:                     video/macroblocks.c
+$(OBJDIR)/video/mmxtest.o:                         video/mmxtest.c
+$(OBJDIR)/video/motion.o:                          video/motion.c
+$(OBJDIR)/video/mpeg3cache.o:                      video/mpeg3cache.c
+$(OBJDIR)/video/mpeg3video.o:                      video/mpeg3video.c
+$(OBJDIR)/video/output.o:                          video/output.c
+$(OBJDIR)/video/reconstruct.o:                     video/reconstruct.c
+$(OBJDIR)/video/seek.o:                            video/seek.c
+$(OBJDIR)/video/slice.o:                           video/slice.c
+$(OBJDIR)/video/subtitle.o:                         video/subtitle.c
+$(OBJDIR)/video/vlc.o:                             video/vlc.c
+$(OBJDIR)/workarounds.o:                           workarounds.c
+
+
+
+include depend.a52