+++ /dev/null
-From 2fe4faa9d8eab6068976c7981bc166f576869b36 Mon Sep 17 00:00:00 2001
-From: Tzu-Jung Lee <tjlee@ambarella.com>
-Date: Sun, 28 Jul 2013 19:40:27 +0800
-Subject: [PATCH 1/1] build: fix parallel build failure
-
-This is back ported from recent upstream commit
-
- 0e8463ea1dc55f566a88bb3df29cf3d5f23cc326
-
-Once the upstream update the download page with more
-recent source tarball, this will no longer be needed.
-
-Signed-off-by: Tzu-Jung Lee <tjlee@ambarella.com>
----
- Makefile | 222 +++++++++++++++++++++++++++++++++------------------------------
- 1 file changed, 115 insertions(+), 107 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index b79a573..ad7f163 100644
---- a/Makefile
-+++ b/Makefile
-@@ -67,67 +67,49 @@ LFS_FLAGS = -D_FILE_OFFSET_BITS=64
- # sort of thing (presumably Linux or BSD)
- ifeq ($(shell uname -s), Darwin)
- SYSTEM = "macosx"
-- ARCH_FLAGS = -arch ppc -arch i386
-+ ARCH_FLAGS =
-+ # If you're still building on a version of Mac OS X that supports powerpc,
-+ # then you may want to uncomment the next line. Obviously, this no longer
-+ # works in Lion, which doesn't support powerpc machines any more.
-+ #ARCH_FLAGS = -arch ppc -arch i386
- else
- SYSTEM = "other"
-- ARCH_FLAGS =
-+ ARCH_FLAGS = -fPIC
- endif
-
- CFLAGS = $(WARNING_FLAGS) $(OPTIMISE_FLAGS) $(LFS_FLAGS) -I. $(PROFILE_FLAGS) $(ARCH_FLAGS)
--LDFLAGS = -g -lm $(PROFILE_FLAGS) $(ARCH_FLAGS)
-+LDFLAGS = -g $(PROFILE_FLAGS) $(ARCH_FLAGS) -lm
-
- # Target directories
- OBJDIR = obj
- LIBDIR = lib
- BINDIR = bin
-
--# All of our non-program source files
--SRCS = \
-- accessunit.c \
-- ac3.c \
-- adts.c \
-- avs.c \
-- bitdata.c \
-- es.c \
-- fmtx.c \
-- h222.c \
-- h262.c \
-- audio.c \
-- l2audio.c \
-- misc.c \
-- nalunit.c \
-- ps.c \
-- pes.c \
-- pidint.c \
-- ts.c \
-- tswrite.c \
-- pcap.c
--
- # All of our non-program object modules
- OBJS = \
-- accessunit.o \
-- avs.o \
-- ac3.o \
-- adts.o \
-- bitdata.o \
-- es.o \
-- filter.o \
-- fmtx.o \
-- h222.o \
-- h262.o \
-- audio.o \
-- l2audio.o \
-- misc.o \
-- nalunit.o \
-- ps.o \
-- pes.o \
-- pidint.o \
-- reverse.o \
-- ts.o \
-- tswrite.o \
-- pcap.o \
-- ethernet.o \
-- ipv4.o
-+ $(OBJDIR)/accessunit.o \
-+ $(OBJDIR)/avs.o \
-+ $(OBJDIR)/ac3.o \
-+ $(OBJDIR)/adts.o \
-+ $(OBJDIR)/bitdata.o \
-+ $(OBJDIR)/es.o \
-+ $(OBJDIR)/filter.o \
-+ $(OBJDIR)/fmtx.o \
-+ $(OBJDIR)/h222.o \
-+ $(OBJDIR)/h262.o \
-+ $(OBJDIR)/audio.o \
-+ $(OBJDIR)/l2audio.o \
-+ $(OBJDIR)/misc.o \
-+ $(OBJDIR)/nalunit.o \
-+ $(OBJDIR)/ps.o \
-+ $(OBJDIR)/pes.o \
-+ $(OBJDIR)/pidint.o \
-+ $(OBJDIR)/reverse.o \
-+ $(OBJDIR)/ts.o \
-+ $(OBJDIR)/tswrite.o \
-+ $(OBJDIR)/pcap.o \
-+ $(OBJDIR)/ethernet.o \
-+ $(OBJDIR)/ipv4.o
-
- # Our program object modules
- PROG_OBJS = \
-@@ -161,9 +143,14 @@ TEST_OBJS = \
- $(OBJDIR)/test_es_unit_list.o
-
- # Our library
--LIB = $(LIBDIR)/libtstools.a
--LIBOPTS = -L$(LIBDIR) -ltstools $(ARCH_FLAGS)
-+STATIC_LIB = $(LIBDIR)/libtstools.a
-+LIBOPTS = $(ARCH_FLAGS) $(STATIC_LIB)
-
-+ifeq ($(shell uname -s), Darwin)
-+SHARED_LIB = $(LIBDIR)/libtstools.xxx
-+else
-+SHARED_LIB = $(LIBDIR)/libtstools.so
-+endif
- # All of our programs (except the testing ones)
- PROGS = \
- $(BINDIR)/esfilter \
-@@ -197,7 +184,7 @@ TEST_PES_PROG = $(BINDIR)/test_pes
- TEST_PROGS = test_nal_unit_list test_es_unit_list
-
- # ------------------------------------------------------------
--all: $(BINDIR) $(LIBDIR) $(OBJDIR) $(PROGS)
-+all: $(BINDIR) $(LIBDIR) $(OBJDIR) $(PROGS) $(SHARED_LIB)
-
- # ts2ps is not yet an offical program, so for the moment build
- # it separately
-@@ -205,82 +192,97 @@ all: $(BINDIR) $(LIBDIR) $(OBJDIR) $(PROGS)
- ts2ps: $(TS2PS_PROG)
-
- ifeq ($(shell uname -s), Darwin)
--# Try getting a library containing universal objects on Mac
--$(LIB): $(OBJS)
-- libtool -static $(OBJS) -o $(LIB)
-+# Make libraries containing universal objects on Mac
-+$(STATIC_LIB): $(OBJS)
-+ libtool -static $(OBJS) -o $(STATIC_LIB)
-+$(SHARED_LIB): $(OBJS)
-+ libtool -dynamic $(OBJS) -o $(SHARED_LIB)
- else
--$(LIB): $(LIB)($(OBJS))
-+$(STATIC_LIB): $(OBJS)
-+ rm -f $(STATIC_LIB)
-+ ar rc $(STATIC_LIB) $(OBJS)
-+
-+$(SHARED_LIB): $(OBJS)
-+ $(LD) -shared -o $(SHARED_LIB) $(OBJS) -lc
- endif
-
--$(BINDIR)/esfilter: $(OBJDIR)/esfilter.o $(LIB)
-- $(CC) $< -o $(BINDIR)/esfilter $(LDFLAGS) $(LIBOPTS)
-+# Build all of the utilities with the static library, so that they can
-+# be copied around, shared, etc., without having to think about it
-+
-+$(BINDIR)/esfilter: $(OBJDIR)/esfilter.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/esfilter $(LIBOPTS) $(LDFLAGS)
-+
-+$(BINDIR)/ts2es: $(OBJDIR)/ts2es.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/ts2es $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/ts2es: $(OBJDIR)/ts2es.o $(LIB)
-- $(CC) $< -o $(BINDIR)/ts2es $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/es2ts: $(OBJDIR)/es2ts.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/es2ts $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/es2ts: $(OBJDIR)/es2ts.o $(LIB)
-- $(CC) $< -o $(BINDIR)/es2ts $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/esdots: $(OBJDIR)/esdots.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/esdots $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/esdots: $(OBJDIR)/esdots.o $(LIB)
-- $(CC) $< -o $(BINDIR)/esdots $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/esmerge: $(OBJDIR)/esmerge.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/esmerge $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/esmerge: $(OBJDIR)/esmerge.o $(LIB)
-- $(CC) $< -o $(BINDIR)/esmerge $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/esreport: $(OBJDIR)/esreport.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/esreport $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/esreport: $(OBJDIR)/esreport.o $(LIB)
-- $(CC) $< -o $(BINDIR)/esreport $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/esreverse: $(OBJDIR)/esreverse.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/esreverse $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/esreverse: $(OBJDIR)/esreverse.o $(LIB)
-- $(CC) $< -o $(BINDIR)/esreverse $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/stream_type: $(OBJDIR)/stream_type.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/stream_type $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/stream_type: $(OBJDIR)/stream_type.o $(LIB)
-- $(CC) $< -o $(BINDIR)/stream_type $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/psreport: $(OBJDIR)/psreport.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/psreport $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/psreport: $(OBJDIR)/psreport.o $(LIB)
-- $(CC) $< -o $(BINDIR)/psreport $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/psdots: $(OBJDIR)/psdots.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/psdots $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/psdots: $(OBJDIR)/psdots.o $(LIB)
-- $(CC) $< -o $(BINDIR)/psdots $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/ps2ts: $(OBJDIR)/ps2ts.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/ps2ts $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/ps2ts: $(OBJDIR)/ps2ts.o $(LIB)
-- $(CC) $< -o $(BINDIR)/ps2ts $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/tsinfo: $(OBJDIR)/tsinfo.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/tsinfo $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/tsinfo: $(OBJDIR)/tsinfo.o $(LIB)
-- $(CC) $< -o $(BINDIR)/tsinfo $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/tsreport: $(OBJDIR)/tsreport.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/tsreport $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/tsreport: $(OBJDIR)/tsreport.o $(LIB)
-- $(CC) $< -o $(BINDIR)/tsreport $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/tsserve: $(OBJDIR)/tsserve.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/tsserve $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/tsserve: $(OBJDIR)/tsserve.o $(LIB)
-- $(CC) $< -o $(BINDIR)/tsserve $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/tsplay: $(OBJDIR)/tsplay.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/tsplay $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/tsplay: $(OBJDIR)/tsplay.o $(LIB)
-- $(CC) $< -o $(BINDIR)/tsplay $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/test_ps: $(OBJDIR)/test_ps.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/test_ps $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/test_ps: $(OBJDIR)/test_ps.o $(LIB)
-- $(CC) $< -o $(BINDIR)/test_ps $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/ts2ps: $(OBJDIR)/ts2ps.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/ts2ps $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/ts2ps: $(OBJDIR)/ts2ps.o $(LIB)
-- $(CC) $< -o $(BINDIR)/ts2ps $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/ts_packet_insert: $(OBJDIR)/ts_packet_insert.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/ts_packet_insert $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/ts_packet_insert: $(OBJDIR)/ts_packet_insert.o $(LIB)
-- $(CC) $< -o $(BINDIR)/ts_packet_insert $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/m2ts2ts: $(OBJDIR)/m2ts2ts.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/m2ts2ts $(LIBOPTS) $(LDFLAGS)
-+$(BINDIR)/pcapreport: $(OBJDIR)/pcapreport.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/pcapreport $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/m2ts2ts: $(OBJDIR)/m2ts2ts.o $(LIB)
-- $(CC) $< -o $(BINDIR)/m2ts2ts $(LDFLAGS) $(LIBOPTS)
--$(BINDIR)/pcapreport: $(OBJDIR)/pcapreport.o $(LIB)
-- $(CC) $< -o $(BINDIR)/pcapreport $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/tsfilter: $(OBJDIR)/tsfilter.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/tsfilter $(LIBOPTS) $(LDFLAGS)
-+$(BINDIR)/tsdvbsub: $(OBJDIR)/tsdvbsub.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/tsdvbsub $(LIBOPTS) $(LDFLAGS)
-
-
-
-
--$(BINDIR)/test_pes: $(OBJDIR)/test_pes.o $(LIB)
-- $(CC) $< -o $(BINDIR)/test_pes $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/test_pes: $(OBJDIR)/test_pes.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/test_pes $(LIBOPTS) $(LDFLAGS)
-
--$(BINDIR)/test_nal_unit_list: $(OBJDIR)/test_nal_unit_list.o $(LIB)
-- $(CC) $< -o $(BINDIR)/test_nal_unit_list $(LDFLAGS) $(LIBOPTS)
--$(BINDIR)/test_es_unit_list: $(OBJDIR)/test_es_unit_list.o $(LIB)
-- $(CC) $< -o $(BINDIR)/test_es_unit_list $(LDFLAGS) $(LIBOPTS)
-+$(BINDIR)/test_nal_unit_list: $(OBJDIR)/test_nal_unit_list.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/test_nal_unit_list $(LIBOPTS) $(LDFLAGS)
-+$(BINDIR)/test_es_unit_list: $(OBJDIR)/test_es_unit_list.o $(STATIC_LIB)
-+ $(CC) $< -o $(BINDIR)/test_es_unit_list $(LIBOPTS) $(LDFLAGS)
-
- # Some header files depend upon others, so including one requires
- # the others as well
-@@ -299,14 +301,19 @@ REVERSE_H = reverse_fns.h reverse_defns.h
- FILTER_H = filter_fns.h filter_defns.h $(REVERSE_H)
- AUDIO_H = adts_fns.h l2audio_fns.h ac3_fns.h audio_fns.h audio_defns.h adts_defns.h
-
--# Everyone depends upon the basic configuration file
--$(LIB)($(OBJS)) $(TEST_OBJS) $(PROG_OBJS): compat.h
-+# Everyone depends upon the basic configuration file, and I assert they all
-+# want (or may want) printing...
-+$(OBJS) $(TEST_OBJS) $(PROG_OBJS): compat.h
-
- # Which library modules depend on which header files is complex, so
- # lets just be simple
--$(LIB)($(OBJS)): $(ACCESSUNIT_H) $(NALUNIT_H) $(TS_H) $(ES_H) $(PES_H) \
-- misc_fns.h $(PS_H) $(H262_H) $(TSWRITE_H) $(AVS_H) \
-- $(REVERSE_H) $(FILTER_H) $(AUDIO_H)
-+$(OBJS): \
-+ $(ACCESSUNIT_H) $(NALUNIT_H) $(TS_H) $(ES_H) $(PES_H) \
-+ misc_fns.h $(PS_H) $(H262_H) \
-+ $(TSWRITE_H) $(AVS_H) $(REVERSE_H) $(FILTER_H) $(AUDIO_H)
-+
-+$(OBJDIR)/%.o: %.c
-+ $(CC) -c $< -o $@ $(CFLAGS)
-
- $(OBJDIR)/es2ts.o: es2ts.c $(ES_H) $(TS_H) misc_fns.h version.h
- $(CC) -c $< -o $@ $(CFLAGS)
-@@ -389,7 +396,8 @@ objclean:
- .PHONY: clean
- clean: objclean
- -rm -f $(PROGS)
-- -rm -f $(LIB)
-+ -rm -f $(STATIC_LIB)
-+ -rm -f $(SHARED_LIB)
- -rm -f $(PROG_OBJS)
-
- .PHONY: distclean
---
-1.8.3.2
-