blob: 1ffa3eccd8168ef4e6e991fd8c86d6720d184ee2 (
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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
|
# Maintainer: Jan Cholasta <grubber at grubber cz>
# Build without fmodex:
_fmodex=
# Build with fmodex:
#_fmodex=fmodex
_name=gzdoom
pkgname=${_name}-git
pkgver=2.3pre.1078.g8708c69f8
pkgrel=1
pkgdesc='Advanced Doom source port with OpenGL support (git version)'
arch=('i686' 'x86_64')
url='http://www.zdoom.org/'
license=('BSD' 'custom:BUILD' 'custom:doom' 'custom:dumb' 'LGPL')
depends=(${_fmodex:+$(LC_ALL=C pacman -Q $_fmodex | sed -r 's/ /=/;s/-.*$//')}
'gtk2'
'libgl'
'libgme'
'libsndfile'
'mpg123'
'sdl2')
makedepends=('cmake'
'desktop-file-utils'
'fluidsynth'
'git'
'imagemagick'
'openal'
'xdg-utils')
optdepends=('blasphemer-wad: Blasphemer (free Heretic) game data'
'chexquest3-wad: Chex Quest 3 game data'
'doom1-wad: Doom shareware game data'
'fluidsynth: FluidSynth MIDI device'
'freedm: FreeDM game data'
'freedoom1: Freedoom: Phase 1 game data'
'freedoom2: Freedoom: Phase 2 game data'
'gxmessage: crash dialog (GNOME)'
'hacx-wad: HacX game data'
'harmony-wad: Harmony game data'
'heretic1-wad: Heretic shareware game data'
'hexen1-wad: Hexen demo game data'
'kdialog: crash dialog (KDE)'
'openal: OpenAL sound backend'
'strife0-wad: Strife shareware game data'
'square1-wad: The Adventures of Square, Episode 1 game data'
'timidity++: Timidity MIDI device'
'urbanbrawl-wad: Urban Brawl: Action Doom 2 game data'
'xorg-xmessage: crash dialog (other)')
provides=("${_name}")
conflicts=("${_name}")
source=("${_name}::git://github.com/coelckers/${_name}.git"
'launcher.desktop')
sha256sums=('SKIP'
'59122e670f72aa2531aff370e7aaab2d886a7642e79e91f27a533d3b4cad4f6d')
pkgver() {
cd $_name
git describe --long --tags --match '[Gg]*' | sed -r 's/^[Gg]//;s/([^-]*-g)/\1/;s/-/./g'
}
build() {
cd $_name
local _nofmod _fmodincdir _fmodlib
if [[ -n "${_fmodex}" ]]; then
_nofmod=OFF
_fmodincdir=$(LC_ALL=C pacman -Ql $_fmodex | grep -Eo '/usr/include/fmodex[^/]*/$')
_fmodlib=$(LC_ALL=C pacman -Ql $_fmodex | grep -Eo '/usr/lib/libfmodex-[^/]*\.so$')
else
_nofmod=ON
fi
cmake -DNO_FMOD=${_nofmod} \
-DGME_INCLUDE_DIR='/usr/include/gme' \
-DFMOD_INCLUDE_DIR="${_fmodincdir}" \
-DFMOD_LIBRARY="${_fmodlib}" \
-DFORCE_INTERNAL_GME=OFF \
-DCMAKE_C_FLAGS="$CFLAGS -DSHARE_DIR=\\\"/usr/share/${_name}\\\"" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS -DSHARE_DIR=\\\"/usr/share/${_name}\\\"" \
-DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS -Wl,-z,noexecstack" \
.
make
cat >"${_name}.sh" <<EOF
#!/bin/sh
exec /usr/lib/${_name}/${_name} "\$@"
EOF
sed -n '/\*\*-/,/\*\*-/p' 'src/version.h' >'bsd.txt'
cp "${srcdir}/launcher.desktop" "${_name}.desktop"
mkdir -p 'icons'
convert 'src/win32/icon1.ico[2]' 'icons/48.png'
convert 'src/win32/icon1.ico[3]' 'icons/32.png'
convert 'src/win32/icon1.ico[4]' 'icons/16.png'
}
package() {
cd $_name
install -D "${_name}.sh" "${pkgdir}/usr/bin/${_name}"
mkdir -p "${pkgdir}/usr/lib/${_name}"
install "${_name}" "${pkgdir}/usr/lib/${_name}/"
install -m644 "${_name}.pk3" "${pkgdir}/usr/lib/${_name}/"
if [[ -n "${_fmodex}" ]]; then
install 'liboutput_sdl.so' "${pkgdir}/usr/lib/${_name}/"
fi
mkdir -p "${pkgdir}/usr/share/${_name}"
install -m644 'brightmaps.pk3' "${pkgdir}/usr/share/${_name}/"
install -m644 'lights.pk3' "${pkgdir}/usr/share/${_name}/"
mkdir -p "${pkgdir}/usr/share/licenses/${pkgname}"
install -m644 'bsd.txt' "${pkgdir}/usr/share/licenses/${pkgname}/bsd.txt"
install -m644 'docs/BUILDLIC.TXT' "${pkgdir}/usr/share/licenses/${pkgname}/buildlic.txt"
install -m644 'docs/doomlic.txt' "${pkgdir}/usr/share/licenses/${pkgname}/doomlic.txt"
install -m644 'dumb/licence.txt' "${pkgdir}/usr/share/licenses/${pkgname}/dumb.txt"
desktop-file-install --dir="${pkgdir}/usr/share/applications" "${_name}.desktop"
mkdir -p "${pkgdir}/usr/share/icons/hicolor"
(
cd 'icons'
export XDG_DATA_DIRS="${pkgdir}/usr/share"
local _file
for _file in *.png; do
xdg-icon-resource install --noupdate \
--novendor \
--size "${_file%.png}" \
"${_file}" \
"${_name}"
done
)
}
|