#!/usr/bin/make -f # -*- makefile -*- # Uncomment this to turn on verbose mode. # export DH_VERBOSE=1 ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS))) CMAKE_BUILD_TYPE=Debug else CMAKE_BUILD_TYPE=Release endif ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) MAKEFLAGS += -j$(NUMJOBS) endif USER_CFLAGS=$(shell dpkg-buildflags --get CFLAGS) USER_CXXFLAGS=$(shell dpkg-buildflags --get CXXFLAGS) build: build-stamp build-stamp: dh_testdir # backup orig makefile for makefile in `find ./ -name "Makefile"` ; do [ -f $${makefile}.orig ] || mv $${makefile} $${makefile}.orig ; done # Cmake based makefile cmake CMakeLists.txt \ -DCMAKE_BUILD_TYPE=$(CMAKE_BUILD_TYPE) \ -DCMAKE_BUILD_STRIP=FALSE \ -DFORCE_INTERNAL_SOUNDTOUCH=FALSE \ -DUSER_CMAKE_C_FLAGS:STRING="$(USER_CFLAGS)" \ -DUSER_CMAKE_CXX_FLAGS:STRING="$(USER_CXXFLAGS)" $(MAKE) $(MAKEFLAGS) touch build-stamp clean: dh_testdir dh_testroot rm -f build-stamp # Backup some orig makefile if it not already done # I hope some will be delete by upstream when cmake port is over # Note in case we do not dl all plugins the test [ -f $${makefile} ] ensure the working for makefile in plugins/CDVDlinuz/Src/Linux/Makefile \ plugins/CDVDiso/src/Linux/Makefile \ plugins/CDVDiso/src/Windows/Makefile \ plugins/USBnull/Windows/Makefile \ plugins/FWnull/Windows/Makefile \ plugins/PeopsSPU2/Makefile \ plugins/CDVDisoEFP/src/Linux/Makefile ; do \ [ -f $${makefile}.orig ] || ( [ -f $${makefile} ] && mv $${makefile} $${makefile}.orig ) || true ; done # Add here commands to clean up after the build process. [ -f Makefile ] && $(MAKE) clean || true # Remove cmake stuff rm -fr $$(find . -type d -name CMakeFiles) rm -f $$(find . -type f -name CMakeCache.txt) $$(find . -type f -name cmake_install.cmake) rm -f $$(find . -type f -name Makefile) # File generated by bin2cpp cd pcsx2/gui/Resources/ && rm -f App*.h Config*.h BackgroundLogo.h ButtonIcon_Camera.h Dualshock.h # leftover of cmake rm -f bin/plugins/ps2hw.dat rm -f pcsx2/svnrev.h # Restore orig makefile for makefile_orig in `find ./ -name "Makefile.orig"` ; do [ -f $${makefile_orig} ] && mv $${makefile_orig} `echo $${makefile_orig} | sed -e 's/.orig//'` ; done dh_clean install: install: build dh_testdir dh_testroot dh_prep dh_installdirs ### the project build usefull thing in ./bin so directly install ### from this directory to the debian pkg directory (skip debian/tmp) # Ubuntu use debian/tmp as default sourcedir... # copy bin into debian tmp mkdir -p debian/tmp cp -fr bin debian/tmp dh_install --sourcedir=debian/tmp # install menu and icon cp debian/pcsx2.desktop debian/pcsx2-unstable/usr/share/applications cp debian/pcsx2.xpm debian/pcsx2-unstable/usr/share/pixmaps # lintian override dh_lintian # Build architecture-independent files here. binary-indep: build install dh_testdir -i dh_testroot -i dh_installchangelogs -i dh_installdocs -i dh_installman -i dh_link -i dh_compress -i dh_fixperms -i dh_installdeb -i dh_gencontrol -i dh_md5sums -i dh_builddeb -i # Build architecture-dependent files here. binary-arch: build install dh_testdir -a dh_testroot -a dh_installchangelogs -a dh_installdocs -a dh_installmenu -a dh_installman -a dh_strip --package=pcsx2-unstable --dbg-package=pcsx2-unstable-dbg dh_strip --package=pcsx2-plugins-unstable --dbg-package=pcsx2-plugins-unstable-dbg dh_link -a dh_compress -a dh_fixperms -a dh_makeshlibs -a dh_installdeb -a # XXX: WARNING to test the package on my system I must add the option (--exclude) # due to fglrx drivers modify libGL. It must be re-enable for final packaging # dh_shlibdeps -a dh_shlibdeps -a --exclude=libzzogl dh_gencontrol -a dh_md5sums -a dh_builddeb -a binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install