[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

dh_testroot wants root even with fakeroot



Hi,

I'm running into the following problem on unstable with a new set of
the ACE packages that I'm putting together:

make[1]: Leaving directory `/export/project/valinortmp/ossama/DEBIAN/ace/ace-5.2.1/apps/gperf/src'
touch build-stamp
 fakeroot debian/rules binary
dh_testdir
dh_testroot
dh_testroot: You must run this as root (or use fakeroot).
make: *** [install-stamp] Error 1
debuild: fatal error at line 322:
dpkg-buildpackage failed!

I do have fakeroot installed.  "fakeroot dh_testroot" succeeds, too.
I've attached the `debian/rules' file in question.  Any ideas?

debhelper 3.4.10
fakeroot 0.4.5-2.1
devscripts 2.6.4

Thanks,
-Ossama
-- 
Ossama Othman <ossama@ece.uci.edu>
Distributed Object Computing Laboratory, Univ. of California at Irvine
1024D/F7A394A8 - 84ED AA0B 1203 99E4 1068  70E6 5EB7 5E71 F7A3 94A8
#!/usr/bin/make -f

# debian/rules file for the ACE Debian GNU/Linux package
# written February 2002 by Ossama Othman <ossama@debian.org>

# Uncomment this to turn on verbose mode. 
#export DH_VERBOSE=1

export DH_COMPAT=3

export ACE_ROOT=$(shell pwd)
export LD_LIBRARY_PATH=$(shell pwd)

ACE_PREFIX := $(shell pwd)/debian/tmp/usr
ACE_MANDIR = $(ACE_PREFIX)/share/man
ACE_INFODIR = $(ACE_PREFIX)/share/info

ACE_MAJOR_VERSION := $(shell grep ACE_MAJOR_VERSION ace/Version.h | sed -e 's/\#define ACE_MAJOR_VERSION //')
ACE_VERSION := $(shell grep ACE_VERSION ace/Version.h | sed -e 's/\#define ACE_VERSION //' -e 's/"//g')

build: build-stamp
build-stamp:
	dh_testdir

	$(MAKE) -C ace shared_libs=1 static_libs=1

	cd ace \
	&& mv libACE.so libACE.so.$(ACE_VERSION) \
	&& ln -s libACE.so.$(ACE_VERSION) libACE.so.$(ACE_MAJOR_VERSION) \
	&& ln -s libACE.so.$(ACE_VERSION) libACE.so \
	&& cd RMCast \
	&& mv libACE_RMCast.so libACE_RMCast.so.$(ACE_VERSION) \
	&& ln -s libACE_RMCast.so.$(ACE_VERSION) \
	      libACE_RMCast.so.$(ACE_MAJOR_VERSION) \
	&& ln -s libACE_RMCast.so.$(ACE_VERSION) libACE_RMCast.so \
	&& cd $(ACE_ROOT)

	$(MAKE) -C apps/gperf/src

	touch build-stamp

clean:
	dh_testdir
#	dh_testroot
	rm -f build-stamp install-stamp

#	Add here commands to clean up after the build process.
	-$(MAKE) realclean shared_libs=1
	-$(MAKE) realclean static_libs=1

	rm -f ace/*.{a,so*} ace/RMCast/*.{a,so*} bin/gperf

	dh_clean

install:
install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs

#	Add here commands to install the package into debian/tmp.

#	Create all of the installation directories.
	mkdir -p $(ACE_PREFIX)/bin $(ACE_PREFIX)/lib $(ACE_PREFIX)/share/ace
	mkdir -p $(ACE_PREFIX)/include/ace/RMCast
	mkdir -p $(ACE_MANDIR)/man1 $(ACE_INFODIR)

#	Install the libraries.
	install ace/libACE.{a,so*} $(ACE_PREFIX)/lib
	install ace/RMCast/libACE_RMCast.{a,so*} $(ACE_PREFIX)/lib

#	Install the header files.
	install -m 0644 ace/*.{h,i,inl} $(ACE_PREFIX)/include/ace
	install -m 0644 ace/RMCast/*.{h,i} $(ACE_PREFIX)/include/ace/RMCast

# 	Install the C++ template sources.
	install -m 0644 `grep defined.*ACE_TEMPLATES_REQUIRE_SOURCE ace/*.h | uniq | sed -e 's/:.*$$//' -e 's/.h$$/.cpp/'` $(ACE_PREFIX)/include/ace
	install -m 0644 `grep defined.*ACE_TEMPLATES_REQUIRE_SOURCE ace/RMCast/*.h | uniq | sed -e 's/:.*$$//' -e 's/.h$$/.cpp/'` $(ACE_PREFIX)/include/ace/RMCast

#	Install the gperf-ace binary and accompanying documentation.

#	We need to rename gperf so that it does not conflict with the
#       existing Cygnus based gperf Debian package.
	install apps/gperf/src/gperf $(ACE_PREFIX)/bin/gperf-ace
	install -m 0644 apps/gperf/gperf.1 $(ACE_MANDIR)/man1/gperf.1
	install -m 0644 apps/gperf/gperf.info $(ACE_INFODIR)/gperf.info
	sed -e 's/gperf/gperf-ace/g' \
            -e 's/GPERF/GPERF-ACE/g' \
           $(ACE_MANDIR)/man1/gperf.1 > \
	   $(ACE_MANDIR)/man1/gperf-ace.1
	rm $(ACE_MANDIR)/man1/gperf.1
	sed -e 's/gperf\.info/gperf-ace\.info/g' \
            -e 's/\(gperf\)\.    /\(gperf-ace\)\./g' \
           $(ACE_INFODIR)/gperf.info > \
           $(ACE_INFODIR)/gperf-ace.info
	rm $(ACE_INFODIR)/gperf.info

#	Install the ACE "platform macros" files (i.e. the files
#       containing its make rules.
	install -m 0644 include/makeinclude/*.GNU $(ACE_PREFIX)/share/ace

#	Install the ace-config script and accompanying man page.
	install -m 0755 debian/ace-config $(ACE_PREFIX)/bin
	install -m 0644 debian/ace-config.GNU $(ACE_PREFIX)/share/ace
	install -m 0644 debian/ace-config.1 $(ACE_MANDIR)/man1

	dh_movefiles

# Build architecture-independent files here.
binary-indep: build install
#	dh_testversion
	dh_testdir -i
	dh_testroot -i
	dh_installdocs -i
	dh_installexamples -i
#	dh_installmenu -i
#	dh_installemacsen -i
#	dh_installinit -i
#	dh_installcron -i
# We want to _exclude_  man1 man pages.
	dh_installmanpages -i ace-config.1 clone.1 gperf.1 gperf-ace.1
#	dh_undocumented
	dh_installchangelogs -i ChangeLog
	dh_link -i
	dh_compress -i
	dh_fixperms -i
#	dh_suidregister -i
	dh_installdeb -i
	dh_gencontrol -i
	dh_md5sums -i
	dh_builddeb -i

# Build architecture-dependent files here.
binary-arch: build install
#	dh_testversion
	dh_testdir -a
	dh_testroot -a
	dh_installdocs -a
#	dh_installexamples -a
#	dh_installmenu -a
#	dh_installemacsen -a
#	dh_installinit -a
#	dh_installcron -a
	dh_installman -plibace5.2-dev $(ACE_MANDIR)/man1/ace-config.1
	dh_installman -pgperf-ace $(ACE_MANDIR)/man1/gperf-ace.1
	dh_installinfo -pgperf-ace $(ACE_INFODIR)/gperf-ace.info
#	dh_undocumented
	dh_installchangelogs -a ChangeLog
# Remove the files in the below directories to make sure they don't end
# up in the first package (libace run-time library package).
#	rm -rf $(ACE_PREFIX)/{bin,include}
#	rm -rf $(ACE_PREFIX)/share/ace $(ACE_MANDIR) $(ACE_INFODIR)
#
	dh_strip -a
	dh_link -a
	dh_compress -a
	dh_fixperms -a
#	dh_suidregister -a
	dh_installdeb -a
	dh_makeshlibs -a -V
	dh_shlibdeps -a
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a

source diff:                                                                  
	@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false

#binary: binary-indep binary-arch
binary: binary-arch

.PHONY: build clean binary-indep binary-arch binary install

Reply to: