# 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 MSX++UnDeadPeopleEdition tileset # Arch version lacks the @ soundpack # Arch version lacks the CO.AG musicpack # Arch version lacks my custom mods pkgbase=cataclysm-dda pkgname=(cataclysm-dda cataclysm-dda-tiles) pkgname=cataclysm-dda pkgver=0.E.2 _pkgver=0.E-2 pkgrel=1.27 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.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-tileset_msx-tileset.git/snapshot/cataclysm-dda-tileset_msx-tileset-master.tar.xz" "cataclysm-dda-mod_msx-tileset-fix.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-mod_msx-tileset-fix.git/snapshot/cataclysm-dda-mod_msx-tileset-fix-master.tar.xz" "cataclysm-dda-soundpack_jcsoundpack.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-soundpack_jcsoundpack.git/snapshot/cataclysm-dda-soundpack_jcsoundpack-master.tar.xz" "cataclysm-dda-musicpack_coag-musicpack.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-musicpack_coag-musicpack.git/snapshot/cataclysm-dda-musicpack_coag-musicpack-master.tar.xz" "cataclysm-dda-mod_backport_heatercooler-fix.xz::https://library.iserlohn-fortress.net/cataclysm-dda-mod_backport_heatercooler-fix.git/snapshot/cataclysm-dda-mod_backport_heatercooler-fix-master.tar.xz" "cataclysm-dda-mod_hack-fix.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-mod_hack-fix.git/snapshot/cataclysm-dda-mod_hack-fix-master.tar.xz" "cataclysm-dda-mod_faction-camp-recipe-expansion.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-mod_faction-camp-recipe-expansion.git/snapshot/cataclysm-dda-mod_faction-camp-recipe-expansion-master.tar.xz" "cataclysm-dda-mod_hk-loadout.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-mod_hk-loadout.git/snapshot/cataclysm-dda-mod_hk-loadout-master.tar.xz" "cataclysm-dda-mod_recipe-fixes.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-mod_recipe-fixes.git/snapshot/cataclysm-dda-mod_recipe-fixes-master.tar.xz" "cataclysm-dda-mod_battle-maid-redone.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-mod_battle-maid-redone.git/snapshot/cataclysm-dda-mod_battle-maid-redone-master.tar.xz" ) b2sums=('a2aa335a762573a8d41f0d0a908ffa16e5b3156aab29062a5e47a1a45d9d3ff793870c5565c86a4efc528f8b6a429a2e9ca6b3a905d5877a3edb4cd150c50638' '8cff87d80bf30b86f995f77a97cc1ddb7b809148d100f3c0d74e706fe59eac52de55710fb7aed1abd59836c05f2474c7d68455736aac4f229d1cdf806d7240a1' '8ffff827ed464af678497da5129eb69d3d1a4c6994bbcc00ef7f7b240cd04e7961c3c0ac52d6940252241406c04e647fac19c9327847afced33988eb15973ba8' 'f60449d33535b3b9fc4f9f5ff9fc2e1dae76af81965e1f12bac1e2e8408501bdec1f47a79131a88626103deaf34ba9b0edc360e363e074b4036f86f8d13dae1c' '6a941cd69fc34ea30acbff5cec9184e696012d05f4c60e9fc8d4f59d2b0ac9122df234d6006a90863503a54568a168c1ad92c0a7c544a23015f9c0465073fead' 'f2260095156b10136aad79df6155ce3f78b5ab94be5f394bec9f11925921d4a1505ae7dc0a32e7434b28a1bea2c489206c62450af9027574ba882ac9356f6620' '353fed5883383063b2b2d3a81f3a5d5364a0351d037f5456e9d89d4eeee3b20b3e1f9c74c3d458193deb8ac1fa41d73d86e8364a623a6344c32c55437f362d4b' '20b6ddfe8d3296a5ebdc2bf027e1e4871480dc02069712689a02c032b3f4587287f46a3969cd097bae55fbfbf7d9d21c6bb06b84bcbf1ba40a95d0cfb432d1a2' '36625d21245d5bb9769b1e7916ed8d644cdf56efa1c64c15c8b76d9cd90cdfa7c35324bebdf71426687d6f18b53aa1fb9675d0ba1ea93432ad001b0a54615682' '083713ad07d085bc9120812a354f294bcad12cf4b53a0e6da52bccc2a7319490740191740affb658b2ba2b3de91dda081e62e948bbe62b8f6e2f4613f71a0687' 'e5d405c8699ac94839669b3f91039d27a92a80edff0ba3638da10937092b3987bf6d77eb460b34d6258d6a642638f2b927381f0f6acb56ea7d90399cb1e8bde8' 'f9f5975639792afb2411cec7d9e8580c9a82b1e1aaa38d7df9ebeae6d5aee36e061e4fbbf2836e538bd58898bda4062df201eb2abbc2009500a8b77e0c249074' 'bffc334cf9d72a29b915c66633852dae2d58d82eb872ee9b0f7e9e25eb5438343933b578e16933f761a17e01f78d2b3eaa151d1892447765095660389d84f285') # 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 --reflink -r doc/* "$pkgdir/usr/share/doc/cataclysm-dda" # undo symlink rm "$pkgdir/usr/share/doc/cataclysm-dda/JSON_LOADING_ORDER.md" cp --reflink 'data/json/LOADING_ORDER.md' "$pkgdir/usr/share/doc/cataclysm-dda/JSON_LOADING_ORDER.md" # Mods mv "$srcdir/cataclysm-dda-mod_battle-maid-redone-master" "$srcdir/battle-maid-redone" cp --reflink -r "$srcdir/battle-maid-redone" "$pkgdir/usr/share/cataclysm-dda/mods" mv "$srcdir/cataclysm-dda-mod_backport_heatercooler-fix-master" "$srcdir/backport_heatercooler-fix" cp --reflink -r "$srcdir/backport_heatercooler-fix" "$pkgdir/usr/share/cataclysm-dda/mods" mv "$srcdir/cataclysm-dda-mod_hack-fix-master" "$srcdir/hack-fix" cp --reflink -r "$srcdir/hack-fix" "$pkgdir/usr/share/cataclysm-dda/mods" mv "$srcdir/cataclysm-dda-mod_hk-loadout-master" "$srcdir/hk-loadout" cp --reflink -r "$srcdir/hk-loadout" "$pkgdir/usr/share/cataclysm-dda/mods" mv "$srcdir/cataclysm-dda-mod_recipe-fixes-master" "$srcdir/recipe-fixes" cp --reflink -r "$srcdir/recipe-fixes" "$pkgdir/usr/share/cataclysm-dda/mods" mv "$srcdir/cataclysm-dda-mod_faction-camp-recipe-expansion-master" "$srcdir/faction-camp-recipe-expansion" cp --reflink -r "$srcdir/faction-camp-recipe-expansion" "$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" # Mods mv "$srcdir/cataclysm-dda-tileset_msx-tileset-master" "$srcdir/msx-tileset" cp --reflink -r "$srcdir/msx-tileset" "$pkgdir/usr/share/cataclysm-dda/gfx" mv "$srcdir/cataclysm-dda-mod_msx-tileset-fix-master" "$srcdir/msx-tileset-fix" cp --reflink -r "$srcdir/msx-tileset-fix" "$pkgdir/usr/share/cataclysm-dda/mods" mv "$srcdir/cataclysm-dda-soundpack_jcsoundpack-master" "$srcdir/jcsoundpack" cp --reflink -r "$srcdir/jcsoundpack" "$pkgdir/usr/share/cataclysm-dda/sound" mv "$srcdir/cataclysm-dda-musicpack_coag-musicpack-master" "$srcdir/coag-musicpack" install -Dm644 "$srcdir/coag-musicpack/musicset.json" "$pkgdir/usr/share/cataclysm-dda/sound/jcsoundpack/musicset.json" cp --reflink -r "$srcdir/coag-musicpack/music" "$pkgdir/usr/share/cataclysm-dda/sound/jcsoundpack" # hack: remove overlapping files cd "$pkgdir/../cataclysm-dda" find . -type f -exec rm -f "$pkgdir"/{} \; cd "$pkgdir" find . -type d -empty -delete }