#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 to 1999 by Joey Hess.

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

# This is the debhelper compatability version to use.
export DH_COMPAT=3

SCRIPT_DIR = /usr/share/dbs

LIBNAME = nautilus
VERSION = $(shell dpkg-parsechangelog | grep Version | sed -e 's/Version: //g' -e 's/-[\.A-Za-z0-9]*$$//g')
SONAME  = 2

# the dbs rules
TAR_DIR := nautilus-${VERSION}
include $(SCRIPT_DIR)/dbs-build.mk

# dpkg-arch rules
ifeq (,$(DEB_BUILD_GNU_TYPE))
	include $(SCRIPT_DIR)/dpkg-arch.mk
endif

PACKAGE = nautilus
TMP_DIR = debian/${PACKAGE}

_echo_cfiles = for f in ${1}; do if [ -f $$f ]; then echo $$f; fi; done

cfiles := $(shell $(call _echo_cfiles, $(wildcard debian/libnautilus@SONAME@.*)))

debian/control:
	sed -e "s/@LIBNAME@/${LIBNAME}/g" -e "s/@SONAME@/${SONAME}/g" $@.in > $@

	for f in ${cfiles}; do \
		cp $$f `echo $$f | sed -e "s/@SONAME@/${SONAME}/g"`;\
	done;

EXTRA_CONFIGURE_OPTIONS = --disable-mozilla-component --enable-canvas-pixbuf --with-freetype2-includes=/usr/include/freetype2 --enable-oaf=yes --enable-fam --libexecdir=/usr/lib/nautilus

pre-configure: $(STAMP_DIR)/pre-configure
$(STAMP_DIR)/pre-configure:
	dh_testdir

	mkdir -p build-tree $(STAMP_DIR)
	cd build-tree && ln -sf nautilus-$(VERSION) nautilus

	touch $@

configure: $(STAMP_DIR)/configure
$(STAMP_DIR)/configure: $(STAMP_DIR)/pre-configure $(patched)
	dh_testdir

	@echo
	@echo "*** VERSION = ${VERSION}"
	@echo
	@sleep 1


	cd $(BUILD_TREE) && \
	NOCONFIGURE=1 srcdir=. gnome-autogen.sh && \
	./configure --prefix=/usr \
	--sysconfdir=/etc \
	--mandir=\$${prefix}/share/man \
	--infodir=\$${prefix}/share/info \
	${EXTRA_CONFIGURE_OPTIONS}

	touch $@

build: debian/control configure $(STAMP_DIR)/build
$(STAMP_DIR)/build:
	dh_testdir

	cd $(BUILD_TREE) && $(MAKE) idldir=/usr/share/idl CFLAGS="-g -O2 -Wall -DDEBIAN"

	touch $@

clean: debian/control
	dh_testdir

	rm -rf $(STAMP_DIR) $(SOURCE_DIR)
	perl $(SCRIPT_DIR)/dbs_split clean
	dh_clean

install: $(STAMP_DIR)/build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs

	cd $(BUILD_TREE)/components && find -name \*.la | xargs rm -f
	cd $(BUILD_TREE) && $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp LDFLAGS=-L$(CURDIR)/debian/tmp/usr/lib

	find $(CURDIR)/debian/tmp/usr/share/pixmaps -type f | xargs chmod 644

	dh_movefiles -plibnautilus2-${SONAME} -plibnautilus2-dev -pnautilus-data
	dh_movefiles -pnautilus
	install -d $(CURDIR)/debian/nautilus/usr/share/nautilus
	cd $(CURDIR)/debian/nautilus-data/usr/share && mv applications gnome-2.0 idl $(CURDIR)/debian/nautilus/usr/share/
	cd /usr/share/desktop-base/ && \
	for file in *; do \
		ln -s ../../desktop-base/$$file $(CURDIR)/debian/nautilus-data/usr/share/nautilus/initial-desktop/; \
	done

	cp $(CURDIR)/debian/nautilus.xpm $(CURDIR)/debian/nautilus-data/usr/share/pixmaps/

	cd $(CURDIR)/debian/nautilus-data/usr/share/nautilus && mv services filesystem-attributes.xml $(CURDIR)/debian/nautilus/usr/share/nautilus/

	-find debian/ -type d -empty | sort -r | xargs rmdir -p --ignore-fail-on-non-empty
	-find debian/ -type f -name "*.png" | xargs chmod 644

#	mv debian/nautilus/usr/bin/nautilus-* debian/nautilus/usr/lib/nautilus/
#	mv debian/libnautilus2-dev/usr/lib/*view.so debian/nautilus/usr/lib/nautilus/
#	rm debian/libnautilus2-dev/usr/lib/*view.la

# Build architecture-independent files here.
binary-indep: build install
	dh_testdir
	dh_testroot
	dh_installdocs -i `for f in README TODO AUTHORS MAINTAINERS HACKING THANKS ChangeLog-20000625 ChangeLog-20001018 ChangeLog-20000414 ChangeLog-20000831 NEWS; do echo -n "$(BUILD_TREE)/$$f "; done`
	dh_installchangelogs -i $(BUILD_TREE)/ChangeLog
	dh_compress -i
	dh_fixperms -i
#	dh_scrollkeeper -i
	dh_installdeb -i
	dh_gencontrol -i
	dh_md5sums -i
	dh_builddeb -i

# Build architecture-dependent files here.
binary-arch: build install
	dh_testdir
	dh_testroot

	dh_installdocs -a
	dh_installexamples -a
	dh_installmenu -a
	dh_installmanpages -pnautilus

	dh_installchangelogs -a $(BUILD_TREE)/ChangeLog
	dh_strip -a
	dh_compress -a
	dh_fixperms -a
	rm -rf $(CURDIR)/debian/libnautilus2-dev/usr/share/doc/*
	dh_link -plibnautilus2-dev /usr/share/doc/libnautilus2-${SONAME} /usr/share/doc/libnautilus2-dev
	rm -rf $(CURDIR)/debian/nautilus/usr/share/doc/*
	dh_link -pnautilus /usr/share/doc/nautilus-data /usr/share/doc/nautilus

	dh_makeshlibs -plibnautilus2-${SONAME} -V"libnautilus2-${SONAME} (>= ${VERSION})"
	dh_installdeb -a
	cat `pwd`/debian/*/DEBIAN/shlibs > `pwd`/debian/shlibs.local
	dh_shlibdeps -ldebian/libnautilus2-${SONAME}/usr/lib
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install debian/control
