summaryrefslogtreecommitdiff
path: root/debian/rules
blob: 6abd12de1645838cb9fcd52500c64a6f86588ece (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
#!/usr/bin/make -f
# Uncomment this to turn on verbose mode.
# export DH_VERBOSE=1
package:=tome
SRCTOP:= $(shell if [ "$$PWD" != "" ]; then echo $$PWD; else pwd; fi)
INSTALL = install
ifeq (,$(filter nostrip,$(DEB_BUILD_OPTIONS)))
    INSTALL_PROGRAM += -s
endif
install_file	= $(INSTALL) -p	   -o root -g root  -m	644
install_program = $(INSTALL) -p	   -o root -g root  -m	755
install_script	= $(INSTALL) -p	   -o root -g root  -m	755
make_directory	= $(INSTALL) -p -d -o root -g root  -m	755
PREFIX=/usr

## libdir should be /var/lib/games/$(package)/
LIBDIR = /var/games/$(package)
BINDIR  = $(PREFIX)/bin
MANDIR  = $(PREFIX)/share/man
MAN1DIR = $(MANDIR)/man1
MAN6DIR = $(MANDIR)/man6
DOCDIR  = $(PREFIX)/share/doc/$(package)
INFODIR = $(PREFIX)/share/info

TMPTOP     = $(SRCTOP)/debian/$(package)
PKG_LIBDIR = $(TMPTOP)/$(LIBDIR)
PKG_BIN    = $(TMPTOP)$(BINDIR)
PKG_MANDIR = $(TMPTOP)$(MANDIR)
PKG_DOC    = $(TMPTOP)$(DOCDIR)
PKG_INFO   = $(TMPTOP)$(INFODIR)
PKG_MENU   = $(TMPTOP)$(PREFIX)/lib/menu
PKG_DBASE  = $(TMPTOP)$(PREFIX)/share/doc-base
PKG_MAN    = $(PKG_MANDIR)/man6
PKG_MENUDIR= $(TMPTOP)$(PREFIX)/share/menu
PKG_STATLIB= $(TMPTOP)$(PREFIX)/lib/$(package)

DPKG_ARCH := dpkg-architecture
export DEB_HOST_MULTIARCH  := $(shell $(DPKG_ARCH) $(ha) -qDEB_HOST_MULTIARCH)

DEB_HOST_ARCH := $(shell $(DPKG_ARCH) -qDEB_HOST_ARCH)
CONFIGURE_ARGS :=
ifneq (,$(filter amd64 arm64 armel armhf i386 powerpc ppc64 ppc64el x32 sparc sparc64,$(DEB_HOST_ARCH)))
    # Upstream passes these unconditionally, but they're only available on
    # certain architectures.
    CONFIGURE_ARGS += \
        -DCMAKE_C_FLAGS="-fsanitize=undefined -fsanitize=address" \
        -DCMAKE_CXX_FLAGS="-fsanitize=undefined -fsanitize=address"
endif

%:
	dh $@

override_dh_auto_configure:
	dh_auto_configure -- -DSYSTEM_INSTALL:BOOL=true $(CONFIGURE_ARGS)

override_dh_auto_build:
	bash -n debian/tome.postinst
	bash -n debian/tome.postrm
	bash -n debian/tome.prerm
	bash -n debian/tome.preinst
	bash -n debian/Tome.sh

override_dh_install:
	$(make_directory)    $(TMPTOP)/etc/$(package) $(PKG_STATLIB)
	chmod 0644           $(PKG_LIBDIR)/edit/s_factory.map
	chmod 0644           $(PKG_LIBDIR)/edit/s_ship.map
	(cd $(PKG_LIBDIR);   mv edit file pref $(TMPTOP)/etc/$(package);   \
	                     ln -s /etc/$(package)/edit . ;                 \
	                     ln -s /etc/$(package)/file . ;                 \
	                     ln -s /etc/$(package)/pref . ;     )
	(cd $(PKG_LIBDIR);   mv help $(PKG_STATLIB);    \
	                     ln -s $(PREFIX)/lib/$(package)/help   . ;   )
	for i in save/delete.me ; do                 \
            mkdir -p  $(PKG_LIBDIR)/save             \
	    chmod 0644 $(PKG_LIBDIR)/$$i;            \
	done
	rm -f                $(PKG_LIBDIR)/apex/scores.raw
	find                 $(PKG_LIBDIR) -type f -name .cvsignore -exec rm {} \;

override_dh_fixperms:
	dh_fixperms
	chgrp -R games       $(TMPTOP)/etc/$(package)/* $(PKG_STATLIB)/* $(PKG_LIBDIR) \
                             $(TMPTOP)/usr/games/tome
	chmod g+ws           $(PKG_LIBDIR)/data/
	chmod g+s            $(TMPTOP)/usr/games/tome

override_dh_clean:
	dh_clean
	touch ./lib/apex/delete.me
	touch ./lib/data/delete.me
	touch ./lib/info/delete.me
	touch ./lib/save/delete.me
	touch ./lib/user/delete.me

#Local variables:
#mode: makefile
#End: