mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-29 23:52:22 +00:00
99e8ef69ab
deb building relies on boostrap now (mostly to ensure there's no messy autoconf files).
295 lines
8.5 KiB
Makefile
Executable file
295 lines
8.5 KiB
Makefile
Executable file
#! /usr/bin/make -f
|
|
# This file is public domain software, originally written by Joey Hess.
|
|
|
|
# Uncomment this to turn on verbose mode.
|
|
#export DH_VERBOSE=1
|
|
|
|
# This is the debhelper compatibility version to use.
|
|
export DH_COMPAT=2
|
|
|
|
PACKAGE := quakeforge
|
|
QFCC := qfcc
|
|
common := $(PACKAGE)-common
|
|
stub := $(PACKAGE)-stub
|
|
maptools := $(PACKAGE)-maptools
|
|
dev := $(PACKAGE)-dev
|
|
|
|
alsa := $(PACKAGE)-alsa
|
|
gllib := $(PACKAGE)-libs-gl
|
|
glx := $(PACKAGE)-glx
|
|
oss := $(PACKAGE)-oss
|
|
sdl := $(PACKAGE)-sdl
|
|
servers := $(PACKAGE)-servers
|
|
sgl := $(PACKAGE)-sgl
|
|
swlib := $(PACKAGE)-libs-sw
|
|
utils := $(PACKAGE)-utils
|
|
x11 := $(PACKAGE)-x11
|
|
|
|
build := $(shell pwd)/debian/tmp
|
|
tmp := debian/tmp
|
|
|
|
ifeq ($(DEB_BUILD_GNU_TYPE),)
|
|
RETARGET=
|
|
else
|
|
RETARGET= --build=$(DEB_BUILD_GNU_TYPE)
|
|
endif
|
|
|
|
configure: configure-stamp
|
|
configure-stamp:
|
|
dh_testdir
|
|
# Add here commands to configure the package.
|
|
./bootstrap
|
|
./configure --prefix=/usr $(RETARGET) --bindir=/usr/games \
|
|
--without-fbdev \
|
|
--disable-xmms \
|
|
--mandir=/usr/share/man \
|
|
--infodir=/usr/share/info \
|
|
--with-sharepath=/usr/share/games/quake \
|
|
--with-plugin-path=/usr/lib/quakeforge/plugins \
|
|
--with-clients=glx,sdl,sgl,x11 \
|
|
--with-servers=master,nq,qw
|
|
|
|
touch $@
|
|
|
|
build: configure-stamp changelog-stamp build-stamp
|
|
build-stamp:
|
|
dh_testdir
|
|
$(MAKE) $(QFSMP)
|
|
touch $@
|
|
|
|
changelog-stamp:
|
|
dh_testdir
|
|
# Add here commands to build the changelog
|
|
if test -d .git; then $(MAKE) changelog; fi
|
|
touch $@
|
|
|
|
clean:
|
|
dh_testdir
|
|
dh_testroot
|
|
rm -f build-stamp configure-stamp changelog-stamp debian/quakeforge-common.conffiles
|
|
|
|
# Add here commands to clean up after the build process.
|
|
-$(MAKE) distclean
|
|
# VERY clean
|
|
./bootstrap clean
|
|
|
|
dh_clean
|
|
|
|
install: DH_OPTIONS=
|
|
install: build
|
|
dh_testdir
|
|
dh_testroot
|
|
dh_clean -k
|
|
|
|
# Add here commands to install the package into debian/tmp.
|
|
$(MAKE) DESTDIR=$(build) install
|
|
install -m644 -D debian/quakeforge.conf $(build)/etc/quakeforge.conf
|
|
mkdir $(build)/usr/share/games/quake/id1
|
|
|
|
# quakeforge-common
|
|
find $(tmp)/etc ! -type d | sed -e "s:^$(tmp)::" > debian/$(common).conffiles
|
|
install -D -m755 debian/$(common).shlibs debian/$(common)/DEBIAN/shlibs
|
|
dh_movefiles -p$(common) --sourcedir=$(tmp) \
|
|
etc/quakeforge.conf \
|
|
usr/lib/libQFcd.so.* \
|
|
usr/lib/libQFconsole.so.* \
|
|
usr/lib/libQFruamoko.so.* \
|
|
usr/lib/libQFgamecode.so.* \
|
|
usr/lib/libQFgamecode_builtins.so.* \
|
|
usr/lib/libQFgib.so.* \
|
|
usr/lib/libQFimage.so.* \
|
|
usr/lib/libQFjs.so.* \
|
|
usr/lib/libQFmodels.so.* \
|
|
usr/lib/libQFsound.so.* \
|
|
usr/lib/libQFutil.so.* \
|
|
usr/lib/quakeforge/plugins/cd_file.so* \
|
|
usr/lib/quakeforge/plugins/cd_linux.so* \
|
|
usr/lib/quakeforge/plugins/console_client.so* \
|
|
usr/lib/quakeforge/plugins/snd_output_disk.so* \
|
|
usr/lib/quakeforge/plugins/snd_render_default.so* \
|
|
usr/share/games/quake/QF/menu.dat*
|
|
dh_installdocs -p$(common) NEWS TODO
|
|
dh_installchangelogs -p$(common) ChangeLog
|
|
|
|
# quakeforge-stub
|
|
install -d -m755 debian/$(stub)/usr/share/games/quake/id1
|
|
|
|
# quakeforge-dev
|
|
dh_movefiles -p$(dev) --sourcedir=$(tmp) \
|
|
usr/lib/libQFcd.*a \
|
|
usr/lib/libQFcd.so \
|
|
usr/lib/libQFconsole.*a \
|
|
usr/lib/libQFconsole.so \
|
|
usr/lib/libQFruamoko.*a \
|
|
usr/lib/libQFruamoko.so \
|
|
usr/lib/libQFgamecode.*a \
|
|
usr/lib/libQFgamecode.so \
|
|
usr/lib/libQFgamecode_builtins.*a \
|
|
usr/lib/libQFgamecode_builtins.so \
|
|
usr/lib/libQFgib.a \
|
|
usr/lib/libQFgib.so \
|
|
usr/lib/libQFimage.*a \
|
|
usr/lib/libQFimage.so \
|
|
usr/lib/libQFjs.*a \
|
|
usr/lib/libQFjs.so \
|
|
usr/lib/libQFmodels.*a \
|
|
usr/lib/libQFmodels.so \
|
|
usr/lib/libQFsound.*a \
|
|
usr/lib/libQFsound.so \
|
|
usr/lib/libQFutil.*a \
|
|
usr/lib/libQFutil.so \
|
|
usr/include/QF/GL/*.h \
|
|
usr/include/QF/plugin/*.h \
|
|
usr/include/QF/*.h
|
|
install -d -m755 debian/$(dev)/usr/share/doc
|
|
ln -s $(common) debian/$(dev)/usr/share/doc/$(dev)
|
|
|
|
# quakeforge-libs-gl
|
|
dh_movefiles -p$(gllib) --sourcedir=$(tmp) \
|
|
usr/lib/libQFmodels_gl.so.* \
|
|
usr/lib/libQFrenderer_gl.so.*
|
|
install -D -m755 debian/$(gllib).shlibs debian/$(gllib)/DEBIAN/shlibs
|
|
install -d -m755 debian/$(gllib)/usr/share/doc
|
|
ln -s $(common) debian/$(gllib)/usr/share/doc/$(gllib)
|
|
|
|
# quakeforge-libs-sw
|
|
dh_movefiles -p$(swlib) --sourcedir=$(tmp) \
|
|
usr/lib/libQFmodels_sw.so.*
|
|
install -D -m755 debian/$(swlib).shlibs debian/$(swlib)/DEBIAN/shlibs
|
|
install -d -m755 debian/$(swlib)/usr/share/doc
|
|
ln -s $(common) debian/$(swlib)/usr/share/doc/$(swlib)
|
|
|
|
# quakeforge-servers
|
|
dh_movefiles -p$(servers) --sourcedir=$(tmp) \
|
|
usr/games/qw-master \
|
|
usr/games/qw-server \
|
|
usr/games/nq-server \
|
|
usr/lib/quakeforge/plugins/console_server.so*
|
|
install -d -m755 debian/$(servers)/usr/share/doc
|
|
ln -s $(common) debian/$(servers)/usr/share/doc/$(servers)
|
|
|
|
# quakeforge-glx
|
|
dh_movefiles -p$(glx) --sourcedir=$(tmp) \
|
|
usr/games/nq-glx \
|
|
usr/games/qw-client-glx
|
|
install -d -m755 debian/$(glx)/usr/share/doc
|
|
ln -s $(common) debian/$(glx)/usr/share/doc/$(glx)
|
|
|
|
# quakeforge-sdl
|
|
dh_movefiles -p$(sdl) --sourcedir=$(tmp) \
|
|
usr/games/nq-sdl \
|
|
usr/games/qw-client-sdl \
|
|
usr/lib/quakeforge/plugins/cd_sdl.so \
|
|
usr/lib/quakeforge/plugins/snd_output_sdl.so
|
|
install -d -m755 debian/$(sdl)/usr/share/doc
|
|
ln -s $(common) debian/$(sdl)/usr/share/doc/$(sdl)
|
|
|
|
# quakeforge-sgl
|
|
dh_movefiles -p$(sgl) --sourcedir=$(tmp) \
|
|
usr/games/nq-sgl \
|
|
usr/games/qw-client-sgl
|
|
install -d -m755 debian/$(sgl)/usr/share/doc
|
|
ln -s $(common) debian/$(sgl)/usr/share/doc/$(sgl)
|
|
|
|
# quakeforge-x11
|
|
dh_movefiles -p$(x11) --sourcedir=$(tmp) \
|
|
usr/games/nq-x11 \
|
|
usr/games/qw-client-x11
|
|
install -d -m755 debian/$(x11)/usr/share/doc
|
|
ln -s $(common) debian/$(x11)/usr/share/doc/$(x11)
|
|
|
|
# quakeforge-alsa
|
|
dh_movefiles -p$(alsa) --sourcedir=$(tmp) \
|
|
usr/lib/quakeforge/plugins/snd_output_alsa.so*
|
|
install -d -m755 debian/$(alsa)/usr/share/doc
|
|
ln -s $(common) debian/$(alsa)/usr/share/doc/$(alsa)
|
|
|
|
# quakeforge-oss
|
|
dh_movefiles -p$(oss) --sourcedir=$(tmp) \
|
|
usr/lib/quakeforge/plugins/snd_output_oss.so*
|
|
install -d -m755 debian/$(oss)/usr/share/doc
|
|
ln -s $(common) debian/$(oss)/usr/share/doc/$(oss)
|
|
|
|
# qfcc
|
|
install -D -m755 $(tmp)/usr/games/qfcc $(tmp)/usr/bin/qfcc
|
|
rm -f $(tmp)/usr/games/qfcc
|
|
dh_movefiles -p$(QFCC) --sourcedir=$(tmp) \
|
|
usr/bin/qfcc \
|
|
usr/share/man/man1/qfcc.1 \
|
|
usr/include/QF/ruamoko/* \
|
|
usr/lib/ruamoko/*
|
|
install -d -m755 debian/$(QFCC)/usr/share/doc
|
|
ln -s $(common) debian/$(QFCC)/usr/share/doc/$(QFCC)
|
|
|
|
# quakeforge-utils
|
|
install -D -m755 $(tmp)/usr/games/pak $(tmp)/usr/bin/pak
|
|
install -D -m755 $(tmp)/usr/games/zpak $(tmp)/usr/bin/zpak
|
|
install -D -m755 $(tmp)/usr/games/qfprogs $(tmp)/usr/bin/qfprogs
|
|
install -D -m755 $(tmp)/usr/games/qfwavinfo $(tmp)/usr/bin/qfwavinfo
|
|
rm -f $(tmp)/usr/games/pak \
|
|
$(tmp)/usr/games/zpak \
|
|
$(tmp)/usr/games/qfprogs \
|
|
$(tmp)/usr/games/qfwavinfo
|
|
dh_movefiles -p$(utils) --sourcedir=$(tmp) \
|
|
usr/bin/pak \
|
|
usr/bin/zpak \
|
|
usr/bin/qfprogs \
|
|
usr/bin/qfwavinfo \
|
|
usr/share/man/man1/pak.1
|
|
install -d -m755 debian/$(utils)/usr/share/doc
|
|
ln -s $(common) debian/$(utils)/usr/share/doc/$(utils)
|
|
|
|
# quakeforge-maptools
|
|
install -D -m755 $(tmp)/usr/games/qfbsp $(tmp)/usr/bin/qfbsp
|
|
install -D -m755 $(tmp)/usr/games/qflight $(tmp)/usr/bin/qflight
|
|
install -D -m755 $(tmp)/usr/games/qfvis $(tmp)/usr/bin/qfvis
|
|
rm -f $(tmp)/usr/games/qfbsp \
|
|
$(tmp)/usr/games/qflight \
|
|
$(tmp)/usr/games/qfvis
|
|
dh_movefiles -p$(maptools) --sourcedir=$(tmp) \
|
|
usr/bin/qfbsp \
|
|
usr/bin/qflight \
|
|
usr/bin/qfvis \
|
|
usr/share/man/man1/qflight.1 \
|
|
usr/share/man/man1/qfvis.1
|
|
install -d -m755 debian/$(maptools)/usr/share/doc
|
|
ln -s $(common) debian/$(maptools)/usr/share/doc/$(maptools)
|
|
|
|
# quakeforge
|
|
find $(tmp) -type d -empty -print | xargs -r rmdir -p --ignore-fail-on-non-empty
|
|
dh_movefiles -p$(PACKAGE) --sourcedir=$(tmp)
|
|
install -d -m755 debian/$(PACKAGE)/usr/share/doc
|
|
ln -s $(common) debian/$(PACKAGE)/usr/share/doc/$(PACKAGE)
|
|
|
|
# Build architecture-independent files here.
|
|
# Pass -i to all debhelper commands in this target to reduce clutter.
|
|
binary-indep: DH_OPTIONS=-i
|
|
binary-indep: build install
|
|
# We don't have any packages with Architecture: all
|
|
|
|
# Build architecture-dependent files here.
|
|
# Pass -a to all debhelper commands in this target to reduce clutter.
|
|
binary-arch: DH_OPTIONS=-a
|
|
binary-arch: build install
|
|
dh_testdir
|
|
dh_testroot
|
|
dh_installexamples
|
|
dh_installmenu
|
|
dh_installman -p$(QFCC)
|
|
dh_installman -p$(maptools)
|
|
dh_installman -p$(utils)
|
|
dh_undocumented
|
|
dh_strip -Xruamoko
|
|
dh_link
|
|
dh_compress
|
|
dh_fixperms
|
|
dh_makeshlibs
|
|
# You may want to make some executables suid here.
|
|
dh_installdeb
|
|
dh_shlibdeps
|
|
dh_gencontrol
|
|
dh_md5sums
|
|
dh_builddeb
|
|
|
|
binary: binary-indep binary-arch
|
|
.PHONY: build clean binary-indep binary-arch binary install
|