From 0a21ce42e113f6c75f992d4ad1b88812ecc6b150 Mon Sep 17 00:00:00 2001 From: Jan Lentfer Date: Fri, 14 Jun 2013 11:46:22 +0200 Subject: [PATCH] multicat: add a new addon package "multicat" - The multicast swiss knife Very useful for analyzing multicast traffic directly on the router/ firewall without the need for a large software like vlc or the like. http://www.videolan.org/projects/multicat.html Simple and efficient multicast and transport stream manipulation The multicat package contains a set of tools designed to easily and efficiently manipulate multicast streams in general, and MPEG-2 Transport Streams (ISO/IEC 13818-1) in particular. The multicat suite of applications is very lightweight and designed to operate in tight environments. Memory and CPU usages are kept to a minimum, and they feature only one thread of execution. multicat needs bitstream as a build dependency http://www.videolan.org/developers/bitstream.html --- config/rootfiles/packages/bitstream | 138 +++++++++++++++++++++++++++ config/rootfiles/packages/multicat | 13 +++ lfs/bitstream | 84 ++++++++++++++++ lfs/multicat | 84 ++++++++++++++++ make.sh | 2 + src/patches/bitstream-makefile.patch | 7 ++ src/patches/multicat-makefile.patch | 12 +++ 7 files changed, 340 insertions(+) create mode 100644 config/rootfiles/packages/bitstream create mode 100644 config/rootfiles/packages/multicat create mode 100644 lfs/bitstream create mode 100644 lfs/multicat create mode 100644 src/patches/bitstream-makefile.patch create mode 100644 src/patches/multicat-makefile.patch diff --git a/config/rootfiles/packages/bitstream b/config/rootfiles/packages/bitstream new file mode 100644 index 0000000000..583d8f21ec --- /dev/null +++ b/config/rootfiles/packages/bitstream @@ -0,0 +1,138 @@ +#usr/include/bitstream +#usr/include/bitstream/common.h +#usr/include/bitstream/dvb +#usr/include/bitstream/dvb/ci.h +#usr/include/bitstream/dvb/si +#usr/include/bitstream/dvb/si.h +#usr/include/bitstream/dvb/si/bat.h +#usr/include/bitstream/dvb/si/bat_print.h +#usr/include/bitstream/dvb/si/datetime.h +#usr/include/bitstream/dvb/si/desc_40.h +#usr/include/bitstream/dvb/si/desc_41.h +#usr/include/bitstream/dvb/si/desc_42.h +#usr/include/bitstream/dvb/si/desc_43.h +#usr/include/bitstream/dvb/si/desc_44.h +#usr/include/bitstream/dvb/si/desc_45.h +#usr/include/bitstream/dvb/si/desc_46.h +#usr/include/bitstream/dvb/si/desc_47.h +#usr/include/bitstream/dvb/si/desc_48.h +#usr/include/bitstream/dvb/si/desc_49.h +#usr/include/bitstream/dvb/si/desc_4a.h +#usr/include/bitstream/dvb/si/desc_4b.h +#usr/include/bitstream/dvb/si/desc_4c.h +#usr/include/bitstream/dvb/si/desc_4d.h +#usr/include/bitstream/dvb/si/desc_4e.h +#usr/include/bitstream/dvb/si/desc_4f.h +#usr/include/bitstream/dvb/si/desc_50.h +#usr/include/bitstream/dvb/si/desc_51.h +#usr/include/bitstream/dvb/si/desc_52.h +#usr/include/bitstream/dvb/si/desc_53.h +#usr/include/bitstream/dvb/si/desc_54.h +#usr/include/bitstream/dvb/si/desc_55.h +#usr/include/bitstream/dvb/si/desc_56.h +#usr/include/bitstream/dvb/si/desc_57.h +#usr/include/bitstream/dvb/si/desc_58.h +#usr/include/bitstream/dvb/si/desc_59.h +#usr/include/bitstream/dvb/si/desc_5a.h +#usr/include/bitstream/dvb/si/desc_5b.h +#usr/include/bitstream/dvb/si/desc_5c.h +#usr/include/bitstream/dvb/si/desc_5d.h +#usr/include/bitstream/dvb/si/desc_5e.h +#usr/include/bitstream/dvb/si/desc_5f.h +#usr/include/bitstream/dvb/si/desc_60.h +#usr/include/bitstream/dvb/si/desc_61.h +#usr/include/bitstream/dvb/si/desc_62.h +#usr/include/bitstream/dvb/si/desc_63.h +#usr/include/bitstream/dvb/si/desc_64.h +#usr/include/bitstream/dvb/si/desc_65.h +#usr/include/bitstream/dvb/si/desc_66.h +#usr/include/bitstream/dvb/si/desc_67.h +#usr/include/bitstream/dvb/si/desc_68.h +#usr/include/bitstream/dvb/si/desc_69.h +#usr/include/bitstream/dvb/si/desc_6a.h +#usr/include/bitstream/dvb/si/desc_6b.h +#usr/include/bitstream/dvb/si/desc_6c.h +#usr/include/bitstream/dvb/si/desc_6d.h +#usr/include/bitstream/dvb/si/desc_6e.h +#usr/include/bitstream/dvb/si/desc_7a.h +#usr/include/bitstream/dvb/si/desc_7b.h +#usr/include/bitstream/dvb/si/desc_7c.h +#usr/include/bitstream/dvb/si/desc_83p28.h +#usr/include/bitstream/dvb/si/desc_88p28.h +#usr/include/bitstream/dvb/si/descs_list.h +#usr/include/bitstream/dvb/si/dit.h +#usr/include/bitstream/dvb/si/dit_print.h +#usr/include/bitstream/dvb/si/eit.h +#usr/include/bitstream/dvb/si/eit_print.h +#usr/include/bitstream/dvb/si/nit.h +#usr/include/bitstream/dvb/si/nit_print.h +#usr/include/bitstream/dvb/si/numbers.h +#usr/include/bitstream/dvb/si/rst.h +#usr/include/bitstream/dvb/si/rst_print.h +#usr/include/bitstream/dvb/si/sdt.h +#usr/include/bitstream/dvb/si/sdt_print.h +#usr/include/bitstream/dvb/si/sit.h +#usr/include/bitstream/dvb/si/sit_print.h +#usr/include/bitstream/dvb/si/st.h +#usr/include/bitstream/dvb/si/strings.h +#usr/include/bitstream/dvb/si/tdt.h +#usr/include/bitstream/dvb/si/tdt_print.h +#usr/include/bitstream/dvb/si/tot.h +#usr/include/bitstream/dvb/si/tot_print.h +#usr/include/bitstream/dvb/si_print.h +#usr/include/bitstream/dvb/sim.h +#usr/include/bitstream/ietf +#usr/include/bitstream/ietf/rtp.h +#usr/include/bitstream/mpeg +#usr/include/bitstream/mpeg/aac.h +#usr/include/bitstream/mpeg/pes.h +#usr/include/bitstream/mpeg/psi +#usr/include/bitstream/mpeg/psi.h +#usr/include/bitstream/mpeg/psi/cat.h +#usr/include/bitstream/mpeg/psi/cat_print.h +#usr/include/bitstream/mpeg/psi/desc_02.h +#usr/include/bitstream/mpeg/psi/desc_03.h +#usr/include/bitstream/mpeg/psi/desc_04.h +#usr/include/bitstream/mpeg/psi/desc_05.h +#usr/include/bitstream/mpeg/psi/desc_06.h +#usr/include/bitstream/mpeg/psi/desc_07.h +#usr/include/bitstream/mpeg/psi/desc_08.h +#usr/include/bitstream/mpeg/psi/desc_09.h +#usr/include/bitstream/mpeg/psi/desc_0a.h +#usr/include/bitstream/mpeg/psi/desc_0b.h +#usr/include/bitstream/mpeg/psi/desc_0c.h +#usr/include/bitstream/mpeg/psi/desc_0d.h +#usr/include/bitstream/mpeg/psi/desc_0e.h +#usr/include/bitstream/mpeg/psi/desc_0f.h +#usr/include/bitstream/mpeg/psi/desc_10.h +#usr/include/bitstream/mpeg/psi/desc_11.h +#usr/include/bitstream/mpeg/psi/desc_12.h +#usr/include/bitstream/mpeg/psi/desc_1b.h +#usr/include/bitstream/mpeg/psi/desc_1c.h +#usr/include/bitstream/mpeg/psi/desc_1d.h +#usr/include/bitstream/mpeg/psi/desc_1e.h +#usr/include/bitstream/mpeg/psi/desc_1f.h +#usr/include/bitstream/mpeg/psi/desc_20.h +#usr/include/bitstream/mpeg/psi/desc_21.h +#usr/include/bitstream/mpeg/psi/desc_22.h +#usr/include/bitstream/mpeg/psi/desc_23.h +#usr/include/bitstream/mpeg/psi/desc_24.h +#usr/include/bitstream/mpeg/psi/desc_25.h +#usr/include/bitstream/mpeg/psi/desc_26.h +#usr/include/bitstream/mpeg/psi/desc_27.h +#usr/include/bitstream/mpeg/psi/desc_28.h +#usr/include/bitstream/mpeg/psi/desc_2a.h +#usr/include/bitstream/mpeg/psi/desc_2b.h +#usr/include/bitstream/mpeg/psi/desc_2c.h +#usr/include/bitstream/mpeg/psi/descriptors.h +#usr/include/bitstream/mpeg/psi/descs_list.h +#usr/include/bitstream/mpeg/psi/descs_print.h +#usr/include/bitstream/mpeg/psi/pat.h +#usr/include/bitstream/mpeg/psi/pat_print.h +#usr/include/bitstream/mpeg/psi/pmt.h +#usr/include/bitstream/mpeg/psi/pmt_print.h +#usr/include/bitstream/mpeg/psi/psi.h +#usr/include/bitstream/mpeg/psi/tsdt.h +#usr/include/bitstream/mpeg/psi/tsdt_print.h +#usr/include/bitstream/mpeg/psi_print.h +#usr/include/bitstream/mpeg/ts.h diff --git a/config/rootfiles/packages/multicat b/config/rootfiles/packages/multicat new file mode 100644 index 0000000000..8d06000941 --- /dev/null +++ b/config/rootfiles/packages/multicat @@ -0,0 +1,13 @@ +usr/bin/aggregartp +usr/bin/ingests +usr/bin/lasts +usr/bin/multicat +usr/bin/multicat_validate +usr/bin/offsets +usr/bin/reordertp +#usr/share/man/man1/aggregartp.1 +#usr/share/man/man1/ingests.1 +#usr/share/man/man1/lasts.1 +#usr/share/man/man1/multicat.1 +#usr/share/man/man1/offsets.1 +#usr/share/man/man1/reordertp.1 diff --git a/lfs/bitstream b/lfs/bitstream new file mode 100644 index 0000000000..2985f55cac --- /dev/null +++ b/lfs/bitstream @@ -0,0 +1,84 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see . # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 1.0 + +THISAPP = bitstream-$(VER) +DL_FILE = $(THISAPP).tar.bz2 +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) +PROG = bitstream +PAK_VER = 1 + +DEPS = "" + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 = 5ba0c96d6c7c9131ba60a9a8fc147556 + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +dist: + @$(PAK) + +############################################################################### +# Downloading, checking, md5sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/bitstream-makefile.patch + cd $(DIR_APP) && make $(MAKETUNING) + cd $(DIR_APP) && make install + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/lfs/multicat b/lfs/multicat new file mode 100644 index 0000000000..e2b6c04219 --- /dev/null +++ b/lfs/multicat @@ -0,0 +1,84 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see . # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 2.0 + +THISAPP = multicat-$(VER) +DL_FILE = $(THISAPP).tar.bz2 +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) +PROG = multicat +PAK_VER = 1 + +DEPS = "bitstream" + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 = 3aaa226a421c378c2ede0c8db8fd609c + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +dist: + @$(PAK) + +############################################################################### +# Downloading, checking, md5sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/multicat-makefile.patch + cd $(DIR_APP) && make $(MAKETUNING) + cd $(DIR_APP) && make install + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/make.sh b/make.sh index 84df80d7b4..cec5155303 100755 --- a/make.sh +++ b/make.sh @@ -765,6 +765,8 @@ buildipfire() { ipfiremake nginx ipfiremake sendEmail ipfiremake sysbench + ipfiremake bitstream + ipfiremake multicat echo Build on $HOSTNAME > $BASEDIR/build/var/ipfire/firebuild cat /proc/version >> $BASEDIR/build/var/ipfire/firebuild echo >> $BASEDIR/build/var/ipfire/firebuild diff --git a/src/patches/bitstream-makefile.patch b/src/patches/bitstream-makefile.patch new file mode 100644 index 0000000000..35aeac8d98 --- /dev/null +++ b/src/patches/bitstream-makefile.patch @@ -0,0 +1,7 @@ +--- Makefile.org 2013-06-14 12:59:46.000000000 +0200 ++++ Makefile 2013-06-14 13:00:01.000000000 +0200 +@@ -1,4 +1,4 @@ +-PREFIX ?= /usr/local ++PREFIX ?= /usr + INCLUDE = $(subst //,/,$(DESTDIR)/$(PREFIX)/include/bitstream) + VERSION = 1.0 diff --git a/src/patches/multicat-makefile.patch b/src/patches/multicat-makefile.patch new file mode 100644 index 0000000000..60a987bbed --- /dev/null +++ b/src/patches/multicat-makefile.patch @@ -0,0 +1,12 @@ +--- Makefile.orig 2013-06-14 12:39:11.000000000 +0200 ++++ Makefile 2013-06-14 12:39:20.000000000 +0200 +@@ -13,7 +13,7 @@ + OBJ_LASTS = lasts.o + OBJ_MULTICAT_VALIDATE = multicat_validate.o util.o + +-PREFIX ?= /usr/local ++PREFIX ?= /usr + BIN = $(DESTDIR)/$(PREFIX)/bin + MAN = $(DESTDIR)/$(PREFIX)/share/man/man1 + + -- 2.39.2