# Maintainer: jc_gargma # Maintainer (Arch): Kyle Keen # # I maintain this because: # Arch version lacks additional optimization and hardening flags # Arch version has non-functional desktop file # Arch version lacks the awesome MSX++UnDeadPeopleEdition tileset # Arch version lacks a soundpack # Arch version lacks a musicpack # Arch version lacks my custom mods pkgbase=cataclysm-dda pkgname=(cataclysm-dda cataclysm-dda-tiles) pkgname=cataclysm-dda pkgver=0.E pkgrel=1.9 pkgdesc="A post-apocalyptic roguelike." #url="http://cataclysmrl.blogspot.com/" #url="http://www.cataclysm.glyphgryph.com/" #url="http://en.cataclysmdda.com/" url="https://cataclysmdda.org/" arch=('x86_64' 'aarch64') license=("CCPL:by-sa") depends=('ncurses' 'lua' 'hicolor-icon-theme' 'gettext') makedepends=('sdl2_image' 'sdl2_ttf' 'sdl2_mixer' 'freetype2' 'astyle') source=("$pkgname-$pkgver.tar.gz::https://github.com/CleverRaven/Cataclysm-DDA/archive/$pkgver.tar.gz" "cataclysm-dda.desktop" "cataclysm-dda-tiles.desktop" "cataclysm-dda-tileset_msx-tileset-master.tar.gz" "cataclysm-dda-mod_msx-tileset-fix-master.tar.gz" "cataclysm-dda-soundpack_damalsksoundpack.tar.gz" "cataclysm-dda-musicpack_coag-musicpack.tar.gz" "cataclysm-dda-mod_hack-fix-master.tar.gz" "cataclysm-dda-mod_hk-fix-master.tar.gz" "cataclysm-dda-mod_battle-maid-redone-master.tar.gz" ) b2sums=('730e4730b1ab02769bdd054d1bbf5815fd44e7b185f7d5798168cdbfbddfba243646516ace93b07ebd6866c73bba96d8a4aa8597c87fbe93d34f3fafab7a5856' '8cff87d80bf30b86f995f77a97cc1ddb7b809148d100f3c0d74e706fe59eac52de55710fb7aed1abd59836c05f2474c7d68455736aac4f229d1cdf806d7240a1' '8ffff827ed464af678497da5129eb69d3d1a4c6994bbcc00ef7f7b240cd04e7961c3c0ac52d6940252241406c04e647fac19c9327847afced33988eb15973ba8' '49ffb2f2095b1b6b74723cbc91a93813c6d65ad830b20b345528a1321c1c73d7787e37b567a19b918a90d96de4f09fa81265007b85cb770cb7e350153850cd2a' '170a890a7ea8b67f6650e7466189db41cae1634911ad69a44fbe70b5935e2f32ad4efc1beb2c8ab4e312ecf5212c0d5696f60ae9f4cf1e091c3d354300be5bae' '49014cc8e65899db275ac0fd928fbc2a668ccb0cc599c0316dacd33b4ee81e4005accef8cff2ea5f08a6ad4225b2950b04aa1b88bd3799129c355759f6f892cf' 'ae952ebc3f88b8d7d0bfd54c595b121d0e2957d976d2380b94e05112f798d6c9a32620cd197e78c2047e44f5c60b688c07a109ec8ee833c4d5c9c1a0a6acedcc' 'c93c85f735f5ea907b1a02dbbdbabff657bb41be21c8418c42de66b6abf7b95c7c2de5ecc167bcd727940003ce989bdd7878cb7602ec96abdca63df675480cc8' '6dab21b3eb23d2d7b64137ce2d8b1988e03767fbff8202119dd504ffa72f7afcbe50dda3b61a219b70916cdb7a562c70a428f33b2578199dde2bce0ed001c525' '9745a23e57c64fbbbf03398d1d30de63f86de23f192eba49f9a335e4773457d258872b4df03a3cf07677ebaa1573a60bbd3fce05fba4bccff9a58fb5e456bbf7') # official docs say to use lua51 # but makefile supports lua52? # lua53 works, but git HEAD detects/uses lua51? prepare() { cd "Cataclysm-DDA-$pkgver" sed -i 's/-Werror//' Makefile sed -i 's/ncursesw5-config/ncursesw6-config/' Makefile #sed -i 's|"\(l.*h\)"|"lua5.1/\1"|' src/catalua.{h,cpp} sed -i 's/shell git/shell false/' Makefile sed -i 's/-Os/-O3/' Makefile } build() { cd "Cataclysm-DDA-$pkgver" export CFLAGS="$CFLAGS -O3 -flto=4 -fPIE" export CXXFLAGS="$CXXFLAGS -O3 -flto=4 -fPIE" export LDFLAGS="$LDFLAGS,-pie" # tests "ifdef TILES" so "TILES=0" will enable tiles! # DYNAMIC_LINKING appears to be a windows flag? make PREFIX=/usr RELEASE=1 USE_XDG_DIR=1 BACKTRACE=0 make PREFIX=/usr RELEASE=1 USE_XDG_DIR=1 BACKTRACE=0 TILES=1 SOUND=1 #LUA_BINARY="/usr/bin/lua5.1" } package_cataclysm-dda() { cd "Cataclysm-DDA-$pkgver" make DESTDIR="$pkgdir" PREFIX="/usr" RELEASE=1 USE_HOME_DIR=1 install # Docs install -d "$pkgdir/usr/share/doc/cataclysm-dda" cp -r doc/* "$pkgdir/usr/share/doc/cataclysm-dda" # undo symlink rm "$pkgdir/usr/share/doc/cataclysm-dda/JSON_LOADING_ORDER.md" cp 'data/json/LOADING_ORDER.md' "$pkgdir/usr/share/doc/cataclysm-dda/JSON_LOADING_ORDER.md" cp -r "$srcdir/cataclysm-dda-mod_battle-maid-redone" "$pkgdir/usr/share/cataclysm-dda/mods" cp -r "$srcdir/cataclysm-dda-mod_hack-fix" "$pkgdir/usr/share/cataclysm-dda/mods" cp -r "$srcdir/cataclysm-dda-mod_hk-fix" "$pkgdir/usr/share/cataclysm-dda/mods" # License install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE" # install -Dm644 "${srcdir}/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop" } package_cataclysm-dda-tiles() { pkgdesc="A graphical post-apocalyptic roguelike." depends=('cataclysm-dda' 'sdl2_image' 'sdl2_ttf' 'freetype2' 'sdl2_mixer') cd "Cataclysm-DDA-$pkgver" make DESTDIR="$pkgdir" PREFIX="/usr" RELEASE=1 TILES=1 SOUND=1 install # Icon install -D 'data/osx/AppIcon.iconset/icon_128x128.png' "$pkgdir/usr/share/icons/hicolor/128x128/apps/$pkgname.png" install -D 'data/osx/AppIcon.iconset/icon_128x128.png' "$pkgdir/usr/share/pixmaps/$pkgname.png" install -Dm644 "${srcdir}/$pkgname.desktop" "${pkgdir}/usr/share/applications/$pkgname.desktop" install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE" cp -r "$srcdir/cataclysm-dda-tileset_msx-tileset" "$pkgdir/usr/share/cataclysm-dda/gfx" cp -r "$srcdir/cataclysm-dda-mod_msx-tileset-fix" "$pkgdir/usr/share/cataclysm-dda/mods" cp -r "$srcdir/cataclysm-dda-soundpack_damalsksoundpack" "$pkgdir/usr/share/cataclysm-dda/sound" install -Dm644 "$srcdir/cataclysm-dda-musicpack_coag-musicpack/musicset.json" "$pkgdir/usr/share/cataclysm-dda/sound/cataclysm-dda-soundpack_damalsksoundpack/musicset.json" cp -r "$srcdir/cataclysm-dda-musicpack_coag-musicpack/music" "$pkgdir/usr/share/cataclysm-dda/sound/cataclysm-dda-soundpack_damalsksoundpack" # hack: remove overlapping files cd "$pkgdir/../cataclysm-dda" find . -type f -exec rm -f "$pkgdir"/{} \; cd "$pkgdir" find . -type d -empty -delete }