#!/usr/bin/make -f

include /usr/share/cdbs/1/rules/autoreconf.mk
include /usr/share/cdbs/1/rules/debhelper.mk
include /usr/share/cdbs/1/class/gnome.mk
include /usr/share/gnome-pkg-tools/1/rules/uploaders.mk
include /usr/share/gnome-pkg-tools/1/rules/gnome-version.mk
include /usr/share/gnome-pkg-tools/1/rules/patch-translations.mk
-include /usr/share/gnome-pkg-tools/1/rules/gnome-get-source.mk

GNOME_MODULE := gdm

DEB_CONFIGURE_SCRIPT_ENV += X_PATH="/usr/bin" \
			    X_SERVER_PATH="/usr/bin" \
			    X_SERVER="/usr/bin/Xorg"

DEB_CONFIGURE_EXTRA_FLAGS += --disable-scrollkeeper \
		--enable-ipv6=yes \
		--with-at-spi-registryd-directory=/usr/lib/at-spi \
		--with-default-path=/usr/local/bin:/usr/bin:/bin:/usr/games \
		--with-custom-conf=/etc/gdm3/daemon.conf \
		--with-sysconfsubdir=gdm3 \
		--with-working-directory=/var/lib/gdm3 \
		--with-xauth-dir=/var/run/gdm3 \
		--with-pid-file=/var/run/gdm3.pid \
		--with-log-dir=/var/log/gdm3 \
		--with-screenshot-dir=/var/run/gdm3/greeter \
		--with-defaults-conf=/usr/share/gdm/defaults.conf \
		--with-user=Debian-gdm --with-group=Debian-gdm \
		--with-pam-domain=gdm3 \
		--with-lang-file=/etc/default/locale \
		--without-systemd \
		--disable-split-authentication

ifneq (,$(filter debug,$(DEB_BUILD_OPTIONS)))
	DEB_CONFIGURE_EXTRA_FLAGS += --enable-debug
endif

DEB_MAKE_EXTRA_ARGS += authdir=/var/lib/gdm3
		
ifeq (linux,$(DEB_HOST_ARCH_OS))
	DEB_CONFIGURE_EXTRA_FLAGS += --with-selinux
else
	DEB_CONFIGURE_EXTRA_FLAGS += --with-vt-switch-workaround
endif


DEB_DH_INSTALLINIT_ARGS := --noscripts
DEB_DH_MAKESHLIBS_ARGS_gdm3 := --no-act

DEB_DH_GIREPOSITORY_ARGS_gdm3 := -l$(CURDIR)/gui/libgdmgreeter /usr/lib/gdm/

binary-install/gdm3::
	mv debian/gdm3/usr/sbin/gdm-binary debian/gdm3/usr/sbin/gdm3
	cd debian/gdm3/usr/sbin && rm -f gdm-restart gdm-stop gdm-safe-restart
	chmod 755 debian/gdm3/etc/gdm3/Xsession
	rm -f debian/gdm3/etc/pam.d/gdm-*
	dh_installpam -pgdm3 --name=gdm3-autologin
	rm -rf debian/gdm3/var/lib/gdm3/.[cgl]*
	rm -rf debian/gdm3/var/run
	cd debian/gdm3 && \
		mv etc/dconf/profile/gdm usr/share/gdm/dconf-profile && \
		mv etc/dconf/db/gdm.d usr/share/gdm/dconf && \
		rmdir etc/dconf/db etc/dconf/profile etc/dconf
	rm -rf debian/gdm3/usr/include
	rm -rf debian/gdm3/usr/lib/pkgconfig
	rm -f debian/gdm3/usr/sbin/gdm
	rm -f debian/gdm3/etc/pam.d/gdm
	rm -f debian/gdm3/etc/pam.d/gdm-autologin
	rm -f debian/gdm3/usr/share/gdm/autostart/LoginWindow/gnome-session-check-accelerated.desktop
	cd debian/gdm3/usr/lib/gdm && \
		rm -f lib*.a lib*.la lib*.so *.gir
	cd debian/gdm3/usr/lib/gnome-shell && \
		ln -s ../gdm/*.typelib . && ln -s ../gdm/libgdmgreeter*.so.? .

INFILES := $(wildcard debian/*.desktop.in)
OUTFILES := $(INFILES:.desktop.in=.desktop)

%.desktop: %.desktop.in
	intltool-merge -d debian/po-up $< $@

build/gdm3:: $(OUTFILES)

MANPAGES := $(patsubst %.pod,%,$(wildcard debian/*.pod))

common-build-arch:: $(MANPAGES)

clean::
	rm -f $(MANPAGES)
	rm -f $(OUTFILES)
	rm -f data/gdm.schemas data/gdm.schemas.in

%: %.pod
	pod2man --section=$(shell echo $@ | sed 's/.*\.//') \
		--release="GNOME $(DEB_GNOME_VERSION)" \
		--center="Debian GNU/Linux" \
		$< \
		| sed -e 's/debian:://' >$@
