#!/usr/bin/make -f
# (C) 2003 Marcelo E. Magallon <mmagallo@debian.org>
# (C) 2006-2011 Joost Yervante Damad <andete@debian.org>
# (C) 2012 Matteo F. Vescovi <mfv.debian@gmail.com>
# (C) 2020-2026 Alastair McKinstry <mckinstry@debian.org>

export DH_VERBOSE=1
# export DH_NO_ACT
# export DH_OPTIONS

# The magic debhelper  rule
%:
	dh $@ 

include /usr/share/dpkg/architecture.mk

TMPDIR_X11:=$(CURDIR)/debian/tmp-x11
TMPDIR_EGL:=$(CURDIR)/debian/tmp-egl
LIBDIR:=/usr/lib/$(DEB_HOST_MULTIARCH)
INCDIR:=/usr/include/$(DEB_HOST_MULTIARCH)
CMAKEDIR:=/usr/local/lib/cmake/glew
PKGCDIR:=/usr/local/lib/pkgconfig

DPKG_EXPORT_BUILDFLAGS = 1
DEB_CFLAGS_MAINT_APPEND = -Wall -g
include /usr/share/dpkg/buildflags.mk

# let dh_strip strip
export STRIP=true
export INSTALL=install --strip-program=true

SYSTEM:=$(firstword $(subst -, ,$(DEB_HOST_GNU_SYSTEM))) 
ifeq ($(SYSTEM),linux)
SYSTEM:= linux-egl
endif

override_dh_auto_configure:
	rm -f config/config.guess
	( cd $(CURDIR)/auto ; tar axpf $(CURDIR)/../glew_2.3.1+dfsg2.orig-auto.tar.gz )
	ln -sf /usr/share/misc/config.guess config/
	(cd auto; make )
	(cd build; cmake ./cmake -DGLEW_EGL=On -DGLEW_X11=Off )
	mkdir build-x11
	(cd build-x11 ; cmake ../build/cmake -DGLEW_EGL=Off -DGLEW_X11=On )

override_dh_auto_build:
	(cd build ; make ; make )	
	(cd build-x11 ; make ; make)

override_dh_auto_clean:
	rm -f config/config.guess
	rm -rf build-x11 debian/tmp-*


override_dh_auto_install:
	(cd build ; make install DESTDIR=$(CURDIR)/debian/tmp-egl )
	(cd build-x11 ; make install DESTDIR=$(CURDIR)/debian/tmp-x11 )
	mv debian/tmp-egl/usr/local/bin/visualinfo debian/tmp-egl/usr/local/bin/evisualinfo
	mv debian/tmp-egl/usr/local/bin/glewinfo  debian/tmp-egl/usr/local/bin/eglewinfo
	# mv debian/tmp-egl/usr/local/lib/libGLEW.a debian/tmp-egl/usr/local/lib/libEGLEW.a


execute_after_dh_auto_install:
        # Fixup cmake and pkgconfig files. Hack. 
	sed -i -e 's%$${_IMPORT_PREFIX}/lib/libGLEW.so%${LIBDIR}/libGLEW.so%g' ${TMPDIR_X11}/${CMAKEDIR}/glew-targets-noconfig.cmake
	sed -i -e 's%$${_IMPORT_PREFIX}/include%${INCDIR}%g'                   ${TMPDIR_X11}/${CMAKEDIR}/glew-targets.cmake
	sed -i -e 's%/usr/local%/usr%g' 				       ${TMPDIR_X11}/${PKGCDIR}/glew.pc
	sed -i -e 's%libdir=/usr/lib%libdir=${LIBDIR}%g' 		       ${TMPDIR_X11}/${PKGCDIR}/glew.pc
	sed -i -e 's%includedir=\$${prefix}/include%includedir=${INCDIR}%g'    ${TMPDIR_X11}/${PKGCDIR}/glew.pc
	# eglew version
	sed  -e 's%$${_IMPORT_PREFIX}/lib/libGLEW.so%${LIBDIR}/libEGLEW.so%g' <  ${TMPDIR_EGL}/${CMAKEDIR}/glew-targets-noconfig.cmake \
									     >	${TMPDIR_EGL}/${CMAKEDIR}/eglew-targets-noconfig.cmake
	sed  -e 's%$${_IMPORT_PREFIX}/include%${INCDIR}%g'                 <  ${TMPDIR_EGL}/${CMAKEDIR}/glew-targets.cmake \
									     >  ${TMPDIR_EGL}/${CMAKEDIR}/eglew-targets.cmake
	sed  -e 's%/usr/local%/usr%g' 				     <  ${TMPDIR_EGL}/${PKGCDIR}/glew.pc  \
		| sed -e 's%libdir=/usr/lib%libdir=${LIBDIR}%g' 		       	\
		| sed -e 's%GLEW%EGLEW%g'						\
	 	| sed -e 's%includedir=\$${prefix}/include%includedir=${INCDIR}%g'    > ${TMPDIR_EGL}/${PKGCDIR}/eglew.pc
	# Change refs
	patchelf --set-soname libEGLEW.so.2.3 debian/tmp-egl/usr/local/lib/libGLEW.so.2.3.1 \
		--output debian/tmp-egl/usr/local/lib/libEGLEW.so.2.3.1
	patchelf --replace-needed libGLEW.so.2.3 libEGLEW.so.2.3	debian/tmp-egl/usr/local/bin/eglewinfo
	patchelf --replace-needed libGLEW.so.2.3 libEGLEW.so.2.3	debian/tmp-egl/usr/local/bin/evisualinfo

debian/%.1: debian/%.sgml
	docbook-to-man $< > $@

override_dh_dwz:
	@echo patchelf breaks dwz
