Hi,
I'm building avifile-0.6 CVS-20020329 with dpkg-buildpackage,
but building was failed.
There are two reasons :
a. Structure of deb version libxvidencore0 (4.02-1), lacks some methods.
So, I made patch apply to plugins/libxvid/xvid.cpp
for this version of libxvidencore0.
b. debian/rules is too old.
This try to remove usr/lib/libavqt* , but not exists.
These replace to libavmq* , try to remove them.
Regards,
ChanChan.
*** xvid.cpp.orig Fri Mar 8 06:44:10 2002
--- xvid.cpp Sat Mar 30 01:50:25 2002
***************
*** 334,346 ****
param.height = labs(m_bh.biHeight);
//param.framerate=30;//frames/sec
param.bitrate = Registry::ReadInt(strDivxplugin, strBitRate, 800000);//bits/sec
! param.rc_period = Registry::ReadInt(strDivxplugin, "rc_period", 2000);
! param.rc_reaction_period = Registry::ReadInt(strDivxplugin,
"rc_reaction_period", 10);
! param.rc_reaction_ratio = Registry::ReadInt(strDivxplugin,
"rc_reaction_ratio", 20);
param.max_quantizer = Registry::ReadInt(strDivxplugin, "max_quantizer",
16);//just guess
param.min_quantizer = Registry::ReadInt(strDivxplugin, "min_quantizer", 1);
param.max_key_interval = Registry::ReadInt(strDivxplugin, "max_key_interval",
300);
! param.motion_search = Registry::ReadInt(strDivxplugin, "motion_search", 0);
// fast deinterlace
//param.deinterlace=Registry::ReadInt(strDivxplugin, strDeinterlace, 0);
// use bidirectional coding
--- 334,346 ----
param.height = labs(m_bh.biHeight);
//param.framerate=30;//frames/sec
param.bitrate = Registry::ReadInt(strDivxplugin, strBitRate, 800000);//bits/sec
! //param.rc_period = Registry::ReadInt(strDivxplugin, "rc_period", 2000);
! //param.rc_reaction_period = Registry::ReadInt(strDivxplugin,
"rc_reaction_period", 10);
! //param.rc_reaction_ratio = Registry::ReadInt(strDivxplugin,
"rc_reaction_ratio", 20);
param.max_quantizer = Registry::ReadInt(strDivxplugin, "max_quantizer",
16);//just guess
param.min_quantizer = Registry::ReadInt(strDivxplugin, "min_quantizer", 1);
param.max_key_interval = Registry::ReadInt(strDivxplugin, "max_key_interval",
300);
! //param.motion_search = Registry::ReadInt(strDivxplugin, "motion_search", 0);
// fast deinterlace
//param.deinterlace=Registry::ReadInt(strDivxplugin, strDeinterlace, 0);
// use bidirectional coding
***************
*** 446,465 ****
else if (strcmp(attribute, strBitRate)==0)
value=Registry::ReadInt(strDivxplugin, strBitRate, 800000);
! else if (strcmp(attribute, "rc_period")==0)
! value=Registry::ReadInt(strDivxplugin, "rc_period", 2000);
! else if (strcmp(attribute, "rc_reaction_period")==0)
! value=Registry::ReadInt(strDivxplugin, "rc_reaction_period", 10);
! else if (strcmp(attribute, "rc_reaction_ratio")==0)
! value=Registry::ReadInt(strDivxplugin, "rc_reaction_ratio", 20);
else if (strcmp(attribute, "min_quantizer")==0)
value=Registry::ReadInt(strDivxplugin, "min_quantizer", 1);
else if (strcmp(attribute, "max_quantizer")==0)
value=Registry::ReadInt(strDivxplugin, "max_quantizer", 16);
else if (strcmp(attribute, "max_key_interval")==0)
value=Registry::ReadInt(strDivxplugin, "max_key_interval", 300);
! else if (strcmp(attribute, "motion_search")==0)
! value=Registry::ReadInt(strDivxplugin, "motion_search", 1);
else if (strcmp(attribute, "lum_masking")==0)
value=Registry::ReadInt(strDivxplugin, "lum_masking", 0);
else if (strcmp(attribute, "quant_type")==0)
--- 446,465 ----
else if (strcmp(attribute, strBitRate)==0)
value=Registry::ReadInt(strDivxplugin, strBitRate, 800000);
! //else if (strcmp(attribute, "rc_period")==0)
! //value=Registry::ReadInt(strDivxplugin, "rc_period", 2000);
! //else if (strcmp(attribute, "rc_reaction_period")==0)
! //value=Registry::ReadInt(strDivxplugin, "rc_reaction_period", 10);
! //else if (strcmp(attribute, "rc_reaction_ratio")==0)
! //value=Registry::ReadInt(strDivxplugin, "rc_reaction_ratio", 20);
else if (strcmp(attribute, "min_quantizer")==0)
value=Registry::ReadInt(strDivxplugin, "min_quantizer", 1);
else if (strcmp(attribute, "max_quantizer")==0)
value=Registry::ReadInt(strDivxplugin, "max_quantizer", 16);
else if (strcmp(attribute, "max_key_interval")==0)
value=Registry::ReadInt(strDivxplugin, "max_key_interval", 300);
! //else if (strcmp(attribute, "motion_search")==0)
! //value=Registry::ReadInt(strDivxplugin, "motion_search", 1);
else if (strcmp(attribute, "lum_masking")==0)
value=Registry::ReadInt(strDivxplugin, "lum_masking", 0);
else if (strcmp(attribute, "quant_type")==0)
***************
*** 479,498 ****
else if (strcmp(attribute, strBitRate)==0)
retval=Registry::WriteInt(strDivxplugin, strBitRate, value);
! else if (strcmp(attribute, "rc_period")==0)
! retval=Registry::WriteInt(strDivxplugin, "rc_period", value);
! else if (strcmp(attribute, "rc_reaction_period")==0)
! retval=Registry::WriteInt(strDivxplugin, "rc_reaction_period", value);
! else if (strcmp(attribute, "rc_reaction_ratio")==0)
! retval=Registry::WriteInt(strDivxplugin, "rc_reaction_ratio", value);
else if (strcmp(attribute, "min_quantizer")==0)
retval=Registry::WriteInt(strDivxplugin, "min_quantizer", value);
else if (strcmp(attribute, "max_quantizer")==0)
retval=Registry::WriteInt(strDivxplugin, "max_quantizer", value);
else if (strcmp(attribute, "max_key_interval")==0)
retval=Registry::WriteInt(strDivxplugin, "max_key_interval", value);
! else if (strcmp(attribute, "motion_search")==0)
! retval=Registry::WriteInt(strDivxplugin, "motion_search", value);
else if (strcmp(attribute, "lum_masking")==0)
retval=Registry::WriteInt(strDivxplugin, "lum_masking", value);
else if (strcmp(attribute, "quant_type")==0)
--- 479,498 ----
else if (strcmp(attribute, strBitRate)==0)
retval=Registry::WriteInt(strDivxplugin, strBitRate, value);
! //else if (strcmp(attribute, "rc_period")==0)
! //retval=Registry::WriteInt(strDivxplugin, "rc_period", value);
! //else if (strcmp(attribute, "rc_reaction_period")==0)
! //retval=Registry::WriteInt(strDivxplugin, "rc_reaction_period", value);
! //else if (strcmp(attribute, "rc_reaction_ratio")==0)
! //retval=Registry::WriteInt(strDivxplugin, "rc_reaction_ratio", value);
else if (strcmp(attribute, "min_quantizer")==0)
retval=Registry::WriteInt(strDivxplugin, "min_quantizer", value);
else if (strcmp(attribute, "max_quantizer")==0)
retval=Registry::WriteInt(strDivxplugin, "max_quantizer", value);
else if (strcmp(attribute, "max_key_interval")==0)
retval=Registry::WriteInt(strDivxplugin, "max_key_interval", value);
! //else if (strcmp(attribute, "motion_search")==0)
! //retval=Registry::WriteInt(strDivxplugin, "motion_search", value);
else if (strcmp(attribute, "lum_masking")==0)
retval=Registry::WriteInt(strDivxplugin, "lum_masking", value);
else if (strcmp(attribute, "quant_type")==0)
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 to 1999 by Joey Hess.
#
# This version is for a multibinary package. It also allows you to build any
# of the binary packages independantly, via binary-<package> targets.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# This is the debhelper compatability version to use.
export DH_COMPAT=1
# This has to be exported to make some magic below work.
export DH_OPTIONS
INST = install -p
package = avifile
version = 0.6
compile_flags =
aviversion = $(package)$(version)
libraries = tmp
devel = libavifile$(version)-dev
player = $(package)-player
samples = $(package)-samples
madplugin = $(package)-mad-plugin
mjpegplugin = $(package)-mjpeg-plugin
vorbisplugin = $(package)-vorbis-plugin
win32plugin = $(package)-win32-plugin
mmxnow = libmmxnow
mmxnow-dev = libmmxnow-dev
installprefix = $(PWD)/debian/$(libraries)
allpackages= debian/$(player) debian/$(samples)
build:
$(checkdir)
@echo "---=== Debian package is build with Lame support ===---"
@echo " library is being linked at runtime"
@echo "for the full usage user has to install mp3lame library"
./autogen.sh
# rm config.cache
# ./configure --disable-tsc --datadir /usr/share --prefix $(prefix)
# we want to stay pentium/k6 compatible
# CFLAGS="-g -O2 -march=i586" CXXFLAGS="-g -O2 -march=i586"
./configure --enable-quiet --enable-release --enable-lame-bin
--disable-ffmpeg-ac3 --disable-dependency-tracking --prefix /usr
nice -n 20 $(MAKE) -j 4
touch build
cleanB:
$(checkdir)
dh_clean
# rm -rf core `find debian/* -type d ! -name CVS`
clean: cleanB
$(checkdir)
@if [ -f Makefile ]; then $(MAKE) maintainer-clean ; fi
# remove various files which should not be in tar.gz
@rm -rf core `find . -name "*~" -o -name Makefile.in -o -regex '.*\.bbg?' -o
-name '*.gcov' -o -name '.#*' -o -name '*.out' `
@rm -rf debian/docs .snprj avifile-0.6.0.*.proj
@rm -f log build config.cache
binary-indep:
# There are no architecture-independent files to be uploaded
# generated by this package. If there were any they would be
# made here.
binary-arch: cleanB checkscripts build
$(checkdir)
@echo ":: Preparing packages"
@find doc -type f | egrep -v "CVS| |Makefile|cvsignore" >debian/docs
# @$(INST) -d debian
@dh_testdir
@dh_testroot
@dh_installdirs
# this has been all tricky way to fix some problems with makefile - no longer needed
# @make DESTDIR=$(prefix) datadir=debian/$(player)/usr/share prefix=$(prefix)
install
@make DESTDIR=$(installprefix) install
@pngtopnm $(installprefix)/usr/share/$(aviversion)/test.png | ppmtoxpm
>$(installprefix)/usr/share/$(aviversion)/test.xpm
@$(INST) -s $(installprefix)/usr/bin/aviplay debian/$(player)/usr/bin/
@$(INST) -s -m 4755 $(installprefix)/usr/bin/kv4lsetup
debian/$(samples)/usr/bin/
@for i in avibench avirecompress avicap avicat avimake avitype ; do \
$(INST) -s $(installprefix)/usr/bin/$${i} debian/$(samples)/usr/bin/ ; done
#####
# !!LAME ENCODER REMOVEMENT FOR DEBIAN PACKAGE!!
#
# comment following 'rm' line to get full debian package
#
# note - we use wrapping plugin for mp3lame library instead - so better
# way is to install latest version of lame library from CVS instead
#####
rm -f core $(installprefix)/usr/lib/$(aviversion)/libmp3lame_audioenc.*
@$(INST) $(installprefix)/usr/bin/avifile-config debian/$(devel)/usr/bin/
@mv $(installprefix)/usr/include debian/$(devel)/usr
@mv $(installprefix)/usr/lib/*.so debian/$(devel)/usr/lib
@mv $(installprefix)/usr/lib/$(aviversion)/libmad*
debian/$(madplugin)/usr/lib/$(aviversion)/
@mv $(installprefix)/usr/lib/$(aviversion)/libmjpeg*
debian/$(mjpegplugin)/usr/lib/$(aviversion)/
@mv $(installprefix)/usr/lib/$(aviversion)/libvorbis*
debian/$(vorbisplugin)/usr/lib/$(aviversion)/
if test -e $(installprefix)/usr/lib/$(aviversion)/libwin32.so ; then mv
$(installprefix)/usr/lib/$(aviversion)/libwin32*
debian/$(win32plugin)/usr/lib/$(aviversion)/ ; fi
@mv $(installprefix)/usr/share/$(aviversion) debian/$(player)/usr/share/
# remove for now
@rm $(installprefix)/usr/lib/libavmq*
@rm $(installprefix)/usr/lib/libmmxnow*
# clean some files from library package
@rm -rf debian/$(libraries)/usr/bin
@rm -f debian/$(libraries)/usr/lib/*.so
@rm -rf core `find debian/$(libraries) -name "*.a"`
@mkdir -p debian/$(devel)/usr/share/lintian/overrides/
@mkdir -p debian/$(samples)/usr/share/lintian/overrides/
@cp -a debian/libavifile0.6-dev.lintian
debian/$(devel)/usr/share/lintian/overrides/libavifile0.6-dev
@cp -a debian/avifile-samples.lintian
debian/$(samples)/usr/share/lintian/overrides/avifile-samples
@$(INST) -m 0644 debian/aviplay.1 debian/$(player)/usr/share/man/man1
# disabled - lintian...
dh_undocumented -p $(devel) avifile-config.1
dh_undocumented -p $(samples) avicat.1
dh_undocumented -p $(samples) avimake.1
dh_undocumented -p $(samples) avitype.1
dh_undocumented -p $(samples) avirecompress.1
dh_undocumented -p $(samples) avicap.1
dh_undocumented -p $(samples) kv4lsetup.1
dh_undocumented -p $(samples) avibench.1
## @ln -s ../man7/undocumented.7.gz
debian/$(samples)/usr/share/man/man1/benchmark.1.gz
# @chmod -R go=rX $(allpackages)
@dh_installexamples
dh_installdocs
dh_installchangelogs -k ChangeLog
# this way we are saving few inodes and making it more user friendly
# as doc is concentrated in one directory
# I don't like the idea to use .link file - this is much simplier
@for i in $(player) $(samples) $(devel) $(madplugin) $(mjpegplugin) \
$(vorbisplugin) $(win32plugin);\
do \
rm -rf debian/$${i}/usr/share/doc/$${i} ;\
ln -s libavifile0.6 debian/$${i}/usr/share/doc/$${i} ;\
done
dh_installmime
dh_installmenu
@dh_installcron
# dh_installmanpages -ptmp
@dh_movefiles
dh_compress
dh_fixperms -Xkv4lsetup
dh_strip
dh_shlibdeps
dh_makeshlibs -V
# @echo "libmpeg_audiodec-$(version) 0 lib$(aviversion)" >>
debian/$(libraries)/DEBIAN/shlibs
# add svgalib dependency - not needed - SDL maintainer solved this problem
# if ! grep svgalib-dummyg1 debian/substvars >/dev/null ; then \
# mv debian/substvars debian/substvars-unhacked ; \
# sed -e 's/svgalibg1\( *([^)]*)\)\{0,1\}/& | svgalib-dummyg1\1/'
# rm debian/substvars-unhacked; \
# fi
dh_gencontrol
dh_installdeb
dh_md5sums
dh_builddeb -v
define checkdir
@test -f debian/rules
endef
checkscripts:
@echo ":: Checking scripts"
# Below here is fairly generic really
binary: binary-indep binary-arch
source diff:
@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
.PHONY: binary binary-indep binary-arch clean checkroot